# Uji coba gratis langsung dibatalkan: penyebab dan solusinya

> Di iOS, banyak uji coba gratis dibatalkan dalam hitungan menit, tapi aksesnya tetap jalan sampai selesai. Ini penyebabnya dan cara yang diizinkan Apple.

Halaman asli: [Uji coba gratis langsung dibatalkan: penyebab dan solusinya](https://devoria.fr/id/blog/uji-coba-gratis-dibatalkan-ios-penyebab-solusi)
Penulis: [Mehdi Azizi](https://devoria.fr/id/mehdi-azizi)
Terbit: 2026-11-04
Revisi konten terakhir: 2026-11-04


Di iOS, uji coba gratis yang dibatalkan dalam hitungan menit belum tentu hilang. **Membatalkan hanya mematikan perpanjangan otomatis: orangnya tetap punya akses sampai uji coba berakhir, dan bisa mengaktifkannya lagi.** Membatalkan lebih awal tidak merugikan dia sama sekali, dan Apple menyarankan pembatalan paling lambat 24 jam sebelum masa uji coba habis. Supaya uji coba ini tetap bertahan, tunjukkan nilai aplikasimu sebelum tanggal berakhir, tepati setiap janji yang tertulis di paywall, dan pakai hanya cara yang diizinkan Apple.

Saya merilis aplikasi iOS sendiri, dan panduan ini berangkat dari angka-angka saya. Di TradaZen, simulator trading saya, dua dari tiga uji coba tahunan yang dimulai antara 20 dan 23 Oktober 2026 dibatalkan. Di Nolera, aplikasi coba pakaian berbasis AI saya, semua uji coba yang dimulai dalam satu bulan dibatalkan, antara 2 sampai 42 menit setelah dimulai. Aturan yang saya kutip berasal dari halaman Apple, saya baca ulang pada 3 November 2026.

## Arti "dibatalkan" di iOS

Saat seseorang mengetuk Cancel Subscription selama masa uji coba, langganannya tidak langsung berhenti. Di sisi server, Apple mengirim [notifikasi perubahan perpanjangan](https://developer.apple.com/documentation/appstoreservernotifications/notificationtype): `DID_CHANGE_RENEWAL_STATUS`, dengan subtipe `AUTO_RENEW_DISABLED`. Kedaluwarsanya datang belakangan, lewat notifikasi lain, `EXPIRED` dengan subtipe `VOLUNTARY`: langganan berakhir setelah pelanggan mematikan perpanjangan.

Apple juga memberi tahu pengguna. Di halaman App Store [Tentang pembelian dalam app](https://apps.apple.com/fr/story/id1436214772): "Jika Anda membatalkannya, langganan Anda akan berakhir di akhir siklus tagihan yang sedang berjalan." Sampai saat itu, orangnya bisa kembali dan mengaktifkan lagi perpanjangannya.

Kalau kamu pakai RevenueCat, event-nya bernama `CANCELLATION`. [Dokumentasi event-nya](https://www.revenuecat.com/docs/integrations/webhooks/event-types-and-fields) memberi alasannya di `cancel_reason`. `UNSUBSCRIBE` berarti pelanggan membatalkan sendiri, tercatat saat dia melakukannya, bukan saat kedaluwarsa. `BILLING_ERROR` berarti store gagal menagih metode pembayarannya.

> Di TradaZen, lebih dari satu dari empat "pembatalan" dalam sebulan ternyata gagal bayar, bukan pembatalan. Sebelum menyimpulkan apa pun, pisahkan keduanya.

## Kenapa banyak uji coba dibatalkan dalam hitungan menit

### Apple menyarankan membatalkan lebih awal

[Bantuan Apple soal pembatalan](https://support.apple.com/fr-fr/118428) menulis: "Jika Anda berlangganan uji coba dan tidak ingin memperpanjangnya, batalkan paling lambat 24 jam sebelum masa uji coba berakhir." Karena aksesnya tetap jalan sampai akhir, membatalkan langsung tidak ada ruginya. **Pembatalan dalam hitungan menit bisa jadi cuma jaga-jaga supaya tidak lupa, bukan penilaian atas aplikasimu.**

Saya tidak menemukan satu pun halaman Apple yang menjanjikan email pengingat sebelum uji coba berakhir. Jangan mengandalkannya, dan jangan menjanjikannya ke penggunamu atas nama Apple.

### Lembar pembayaran bikin kaget

Pembelian diselesaikan di lembar pembayaran Apple, yang tidak bisa dikendalikan aplikasimu. Kalau paywall-mu menonjolkan harga per minggu, di aplikasi saya lembar itu menampilkan jumlah tahunan yang ditagih saat uji coba berakhir. Selisih ini bikin kaget. Apple sendiri, di [halaman langganannya](https://developer.apple.com/app-store/subscriptions/), meminta durasi uji coba dan harga yang ditagih sesudahnya ditampilkan dengan jelas di alur pembelian.

Di Nolera, paywall waktu itu menonjolkan harga per minggu. Dari 12 sampai 20 Oktober 2026, lebih dari empat dari lima orang yang mengetuk tombol uji coba menutup lembar Apple tanpa konfirmasi. Uji coba yang terkonfirmasi lalu semuanya dibatalkan.

### Uji coba diambil "buat lihat-lihat", sebelum sempat lihat

Di Nolera, pembatalan datang lebih awal, sering sebelum aplikasi menepati janjinya. Satu orang keluar dari aplikasi 40 detik setelah uji coba dimulai. Orang lain memotret 10 pakaian dalam 5 menit tanpa melihat satu pun outfit, lalu berhenti di layar yang meminta foto seluruh badan. Ada lagi yang pergi 90 detik setelah percobaan pakaian pertamanya. Satu lagi menghabiskan 30 menit di layar utama, tempat kartu "Kelola uji cobaku" terlihat. Tidak satu pun orang yang membatalkan kembali ke aplikasi.

### Bukan gara-gara notifikasi

TradaZen tidak mengirim notifikasi apa pun selama masa uji coba. Itu aturan aplikasinya, sudah saya cek di kode. Pembatalan cepat tetap terjadi: jadi bukan notifikasi dari aplikasi yang memicunya.

## Dua jenis pembatalan yang jangan disamakan

Tidak semua uji coba yang dibatalkan menceritakan hal yang sama. Di TradaZen, seperempat pembatalan terjadi dalam kurang dari 10 menit, dan tiga perempatnya setelah 5 sampai 63 jam pemakaian. Ini tabel yang saya pakai untuk membacanya.

| Waktu pembatalan        | Tafsiran saya                            | Solusinya                                          |
| ----------------------- | ---------------------------------------- | -------------------------------------------------- |
| Dalam hitungan menit    | Jaga-jaga, atau kaget dengan harganya    | Harga jelas, status uji coba terlihat              |
| Selama sesi pertama     | Janjinya belum ditepati                  | Tunjukkan hasil sebelum minta usaha apa pun        |
| Setelah beberapa sesi   | Aplikasinya disukai, harganya tidak      | Paket lebih murah, pesan yang jujur                |
| Satu atau dua hari lalu | Orangnya tidak pernah buka aplikasi lagi | Alasan untuk kembali, yang diizinkan dan diumumkan |

Kasus ketiga mengejutkan saya. Di TradaZen, yang membatalkan belakangan sama aktifnya dengan yang membayar: jumlah sesi sama, jumlah pelajaran sama. **Pemakaian tidak membedakan mereka. Penawarannya yang membedakan.** Beberapa bahkan terus bermain setelah membatalkan. Mereka suka aplikasinya, mereka menolak harganya.

Kasus keempat berbeda. Orang-orang ini menjalani sesi pertama yang panjang, tidak pernah membuka aplikasi lagi, lalu membatalkan lewat Settings satu setengah sampai dua hari kemudian. Tidak ada layar aplikasi yang bisa menahan mereka, karena mereka tidak melihatnya.

## Yang diizinkan Apple untuk mempertahankan uji coba

| Cara                                                          | Kata Apple                                       |
| ------------------------------------------------------------- | ------------------------------------------------ |
| Menampilkan durasi uji coba dan harga yang ditagih sesudahnya | Diwajibkan di alur pembelian                     |
| Menampilkan status langganan di aplikasi                      | Disarankan, dengan cara mudah untuk mengelolanya |
| Membuka pengelolaan langganan dari aplikasi                   | Bisa dengan `showManageSubscriptions(in:)`       |
| Menawarkan promo retensi ke yang sudah mematikan perpanjangan | Disarankan selama langganan belum kedaluwarsa    |
| Menawarkan tingkat langganan lain                             | Disarankan, kalau lebih cocok untuk orangnya     |
| Menanyakan alasan pembatalan                                  | Kuesioner disebut sebagai contoh                 |
| Menampilkan pesan di layar pembatalan                         | Bisa dengan Retention Messaging                  |

Baris-baris ini berasal dari [halaman langganan Apple](https://developer.apple.com/app-store/subscriptions/), kecuali yang terakhir, yang diambil dari dokumentasi Retention Messaging API. Halaman langganan itu juga meminta agar akses ke layar sistem untuk membatalkan selalu mudah. **Mempertahankan uji coba berarti memberi alasan untuk tetap tinggal, bukan mempersulit orang untuk pergi.**

Dua cara perlu penjelasan lebih.

**Pengingat sebelum uji coba berakhir.** Notifikasi butuh izin dari orangnya. Kalau dipakai untuk jualan, [guideline 4.5.4](https://developer.apple.com/app-store/review/guidelines/#4.5.4) mewajibkan persetujuan eksplisit yang ditampilkan di aplikasimu, plus cara untuk berhenti berlangganan. Detailnya ada di panduan saya tentang [notifikasi push](https://devoria.fr/id/blog/guideline-4-5-4-notifikasi-push-ditolak-apple).

**Pesan di layar pembatalan.** [Retention Messaging API](https://developer.apple.com/documentation/retentionmessaging) dari Apple menampilkan pesanmu saat orangnya mengetuk Cancel Subscription, di halaman konfirmasi (Confirm Cancellation). Tombol untuk membatalkan tetap ada. Di RevenueCat, aturan "Is in free trial" memungkinkan kamu menyasar uji coba, menurut [dokumentasinya tentang API ini](https://www.revenuecat.com/docs/platform-resources/apple-platform-resources/apple-retention-messaging-api). Akses ke API ini harus diminta ke Apple: saya memintanya untuk aplikasi saya pada 25 Oktober 2026, dan per tanggal 28 jawabannya belum datang. Format, batasan, dan cara pemasangannya ada di panduan saya tentang [Retention Messaging API](https://devoria.fr/id/blog/retention-messaging-api-apple-pesan-pembatalan-langganan).

Ada satu cara yang tidak berlaku di sini: win-back offer. Menurut [bantuan App Store Connect](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-win-back-offers), penawaran ini menyasar mantan pelanggan berdasarkan durasi minimum langganan berbayar, minimal satu bulan. Jadi uji coba yang tidak pernah dibayar tidak memenuhi syarat.

## Yang dilarang

| Praktik                                                      | Aturan Apple                                                                                  |
| ------------------------------------------------------------ | --------------------------------------------------------------------------------------------- |
| Menyembunyikan durasi uji coba atau harga yang ditagih nanti | [3.1.2(c)](https://developer.apple.com/app-store/review/guidelines/#3.1.2), halaman langganan |
| Membuat orang berlangganan dengan dalih palsu                | 3.1.2(a), dihapus dari App Store                                                              |
| Mewajibkan tugas untuk mendapatkan yang sudah dibayar        | 3.1.2(a): memposting, membagikan kontak                                                       |
| Menjebak, menekan, menumpuk hambatan                         | [5.6](https://developer.apple.com/app-store/review/guidelines/#5.6), kode etik                |
| Menjanjikan pengingat yang tidak ada mekanismenya            | 5.6, menurut tafsiran saya: praktik menyesatkan                                               |

Cakupan 5.6 luas. Guideline ini melarang menjebak pelanggan agar melakukan pembelian yang tidak diinginkan, dan praktik manipulatif lainnya, di dalam maupun di luar aplikasi. Di TradaZen, saya pernah ditolak karena 5.6 untuk paywall yang tombol silangnya malah membuka penawaran, bukan menutup layar. Apple tidak menunjuk elemen mana yang bermasalah: saya ceritakan apa yang saya perbaiki di [guideline 5.6 dan paywall](https://devoria.fr/id/blog/guideline-5-6-paywall-ditolak-app-store). Keterangan wajib di paywall ada di [guideline 3.1.2](https://devoria.fr/id/blog/guideline-3-1-2-aplikasi-ditolak-langganan).

## Yang saya ubah di Nolera

**Menepati janji yang tertulis.** Alur Nolera menjanjikan "Aku kabari kamu 24 jam sebelum penagihan". Saat aplikasi berhenti mengirim notifikasi selama uji coba, kalimat itu tidak boleh dibiarkan tanpa ada yang menepatinya. Sebuah kartu uji coba di layar utama aplikasi kini menepati janji itu: tanggal berakhir, harga, dan tombol "Kelola uji cobaku". Kartu itu tetap ada, walaupun membuat pembatalan jadi lebih mudah.

**Menunjukkan outfit sebelum minta usaha.** Setelah pembelian, ada sembilan layar kerja sebelum outfit pertama: kamera, pakaian, foto seluruh badan, ukuran tubuh, percobaan. Separuh pembatalan terjadi sebelum atau tepat setelah percobaan pertama. Foto seluruh badan dan ukuran tubuh dihapus dari alur pertama. Pakaian pertama langsung dicobakan ke siluet yang disediakan aplikasi. Kini tersisa tujuh layar, bukan sembilan.

Saya belum punya cukup uji coba di versi ini untuk bilang apakah retensinya lebih baik. Saya akan membaca ulang pembatalannya layar per layar kalau datanya sudah cukup.

## Checklist untuk membaca pembatalanmu sendiri

- **Pisahkan pembatalan dari gagal bayar.** Di RevenueCat, baca `cancel_reason` dari setiap `CANCELLATION`.
- **Ukur jeda waktu** antara mulai uji coba dan pembatalan: hitungan menit, sesi pertama, hari-hari berikutnya.
- **Catat layar terakhir yang dilihat** sebelum pembatalan, per versi.
- **Bandingkan pemakaian** antara yang membatalkan belakangan dan yang membayar. Kalau sama, yang perlu dibenahi penawarannya, bukan aplikasinya.
- **Lihat siapa yang tetap memakai aplikasi** setelah membatalkan: merekalah kandidat terbaik untuk paket lain.
- **Baca ulang paywall-mu**: durasi uji coba dan harga yang ditagih sesudahnya harus terbaca tanpa perlu dicari.
- **Cek setiap janji** di paywall: kalau kamu mengumumkan pengingat, harus ada sesuatu yang menepatinya.
- **Biarkan tautan pengelolaan** tetap terlihat di aplikasi, walaupun itu menambah beberapa pembatalan.

Kesalahan paywall lain yang bikin orang kabur bahkan sebelum uji coba ada di [7 kesalahan paywall iOS](https://devoria.fr/id/blog/paywall-ios-kesalahan-pemula-penjualan). Cara membuat uji cobanya sendiri dijelaskan di [penawaran perkenalan App Store Connect](https://devoria.fr/id/blog/introductory-offer-app-store-connect-uji-coba-gratis-ios).

## Paywall yang jujur sejak awal

[iOS & Android Kit](https://devoria.fr/id/kits/ios) dibangun dari kode awal aplikasi-aplikasi saya: onboarding, paywall, dan langganan sudah dikodekan. Alur empat langkahnya membawamu sampai ke App Store, sesuai ritmemu. Seluruh rangkaiannya dijelaskan di halaman [langganan in-app iOS](https://devoria.fr/id/expertise/langganan-in-app-ios).

Kalau kamu sedang menyiapkan rilis pertamamu, [ikuti diagnostik gratisnya](https://devoria.fr/id/diagnostic): diagnostik ini memberi tahu apa yang sebenarnya menghambat proyekmu dan mengirimkan checklist anti-penolakan Apple saya.

## Pertanyaan umum

### Kenapa pengguna membatalkan uji coba gratis tepat setelah memulainya?

Membatalkan langsung tidak merugikan mereka: aksesnya tetap jalan sampai tanggal yang ditentukan, dan Apple menyarankan pembatalan paling lambat 24 jam sebelum berakhir. Kaget dengan harga yang ditagih setelah uji coba, atau aplikasi yang belum menunjukkan nilainya, juga berpengaruh.

### Apakah pengguna yang membatalkan uji coba gratis tetap punya akses?

Ya, sampai akhir periode yang sedang berjalan. Pembatalan pertama-tama mematikan perpanjangan otomatis, lalu langganan kedaluwarsa pada tanggal yang ditentukan. Halaman App Store menyebutkannya: langganan yang dibatalkan berakhir di akhir siklus tagihan yang sedang berjalan.

### Apakah pembatalan uji coba bersifat permanen?

Tidak. Selama uji coba belum kedaluwarsa, orangnya bisa mengaktifkan lagi perpanjangan dari pengelolaan langganannya. Apple lalu mengirimimu notifikasi `DID_CHANGE_RENEWAL_STATUS` dengan subtipe `AUTO_RENEW_ENABLED`.

### Apakah Apple mengirim pengingat sebelum uji coba gratis berakhir?

Saya tidak menemukan satu pun halaman Apple yang menjanjikannya. Bantuan Apple hanya menyarankan pengguna membatalkan paling lambat 24 jam sebelum berakhir. Kalau paywall-mu menjanjikan pengingat, aplikasimulah yang harus menepatinya.

### Bolehkah menawarkan promo ke orang yang membatalkan uji cobanya?

Apple menyarankan promo retensi di dalam aplikasi untuk pelanggan yang sudah mematikan perpanjangan, selama langganannya belum kedaluwarsa. Retention Messaging juga menampilkan pesan di layar pembatalan. Sementara win-back offer mensyaratkan minimal satu bulan langganan berbayar.

### Apakah dilarang membujuk pengguna uji coba supaya bertahan?

Membujuk dengan tekanan, ya, dilarang. Guideline 5.6 melarang menjebak atau memanipulasi pelanggan, dan Apple meminta akses ke layar pembatalan tetap mudah. Pesan jujur tentang nilai aplikasi, atau paket yang lebih murah, tetap boleh.


## Proyekmu

[iOS & Android Kit](https://devoria.fr/id/kits/ios): Bikin app iPhone dan Android kamu dengan Claude Code: kode awal dari app-app saya, langkah demi langkah sampai ke store, dan semua kit. Rp 1.999.000.

[Diagnosis: apa yang memisahkanmu dari app iPhone-mu](https://devoria.fr/id/diagnostic): 7 pertanyaan, 60 detik: kamu tahu apa yang benar-benar menghambatmu merilis app iPhone, jalurmu dalam 4 tahap, dan kit yang cocok untukmu.
