Percubaan percuma dibatalkan serta-merta: punca dan tindakan
Oleh Mehdi Azizi
Diterbitkan pada , 9 min
Di iOS, banyak percubaan percuma dibatalkan dalam seminit, tetapi akses kekal hingga tamat. Ini puncanya dan cara yang Apple benarkan untuk mengekalkannya.
Di iOS, percubaan percuma yang dibatalkan dalam seminit tidak semestinya hilang. Membatalkan hanya mematikan pembaharuan automatik: pengguna masih boleh guna app hingga percubaan tamat, dan boleh mengaktifkannya semula. Membatalkan awal tidak merugikan mereka apa-apa, malah Apple menasihati mereka supaya membatalkan sekurang-kurangnya 24 jam sebelum tamat. Untuk mengekalkan percubaan ini, tunjukkan nilai app sebelum tarikh tamat, tunaikan setiap janji yang ditulis pada paywall anda, dan gunakan hanya kaedah yang dibenarkan Apple.
Saya menerbitkan app iOS saya sendiri, dan panduan ini berdasarkan angka saya. Di TradaZen, simulator dagangan saya, dua daripada tiga percubaan tahunan yang bermula antara 20 dan 23 Oktober 2026 telah dibatalkan. Di Nolera, app cuba pakaian dengan AI saya, semua percubaan yang bermula dalam sebulan telah dibatalkan, antara 2 hingga 42 minit selepas bermula. Peraturan yang dipetik datang daripada halaman Apple, yang saya baca semula pada 3 November 2026.
Maksud "dibatalkan" di iOS
Apabila seseorang menekan Cancel Subscription semasa percubaan, langganan itu tidak berhenti. Di sisi pelayan, Apple menghantar notifikasi perubahan pembaharuan: DID_CHANGE_RENEWAL_STATUS, dengan subjenis AUTO_RENEW_DISABLED. Tamat tempoh datang kemudian, dalam notifikasi lain, EXPIRED dengan subjenis VOLUNTARY: langganan telah tamat selepas pelanggan mematikan pembaharuan.
Apple juga memberitahu pengguna. Di halaman App Store Tentang pembelian dalam app: "Jika anda membatalkannya, langganan anda akan berakhir pada penghujung kitaran pengebilan semasa." Sebelum itu, pengguna boleh kembali dan mengaktifkan semula pembaharuan.
Jika anda menggunakan RevenueCat, acara itu dinamakan CANCELLATION. Dokumentasi acaranya memberi sebabnya dalam cancel_reason. UNSUBSCRIBE bermaksud pelanggan membatalkan sendiri, pada saat dia membatalkan, bukan semasa tamat tempoh. BILLING_ERROR bermaksud kedai tidak dapat mengecaj kaedah pembayaran.
Di TradaZen, lebih daripada satu dalam empat "pembatalan" dalam sebulan sebenarnya kegagalan pembayaran, bukan pembatalan oleh pengguna. Sebelum membuat sebarang kesimpulan, asingkan kedua-duanya.
Kenapa begitu banyak percubaan dibatalkan dalam seminit
Apple menasihati supaya membatalkan awal
Bantuan Apple tentang pembatalan menulis: "Jika anda melanggan langganan percubaan dan tidak mahu memperbaharuinya, batalkan sekurang-kurangnya 24 jam sebelum tempoh percubaan tamat." Oleh sebab akses berterusan hingga akhir, membatalkan serta-merta tidak merugikan apa-apa. Pembatalan dalam seminit mungkin hanya langkah berjaga-jaga supaya tidak terlupa, bukan pendapat tentang app anda.
Saya tidak menemui sebarang halaman Apple yang menjanjikan e-mel peringatan sebelum percubaan tamat. Jangan bergantung padanya, dan jangan janjikannya kepada pengguna anda bagi pihak Apple.
Helaian pembayaran mengejutkan
Pembelian selesai pada helaian pembayaran Apple, yang tidak dikawal oleh app anda. Jika paywall anda menonjolkan harga mingguan, helaian itu, dalam app saya, memaparkan jumlah tahunan yang dicaj apabila percubaan tamat. Perbezaan ini mengejutkan. Apple sendiri meminta, di halaman langganannya, supaya tempoh percubaan dan harga yang dicaj selepas itu dinyatakan dengan jelas dalam aliran pembelian.
Di Nolera, paywall ketika itu menonjolkan harga mingguan. Dari 12 hingga 20 Oktober 2026, lebih daripada empat dalam lima orang yang menekan butang percubaan menutup helaian Apple tanpa mengesahkan. Percubaan yang disahkan pula semuanya dibatalkan selepas itu.
Percubaan diambil "untuk tengok", sebelum sempat melihat apa-apa
Di Nolera, pembatalan berlaku awal, selalunya sebelum app menunaikan janjinya. Seorang meninggalkan app 40 saat selepas percubaan bermula. Seorang lagi mengambil gambar 10 helai pakaian dalam 5 minit tanpa melihat satu gaya pun, kemudian berhenti pada skrin yang meminta gambar seluruh badan. Seorang lagi pergi 90 saat selepas cubaan pertamanya. Seorang lagi menghabiskan 30 minit di skrin utama, yang memaparkan kad "Urus percubaan saya". Tiada seorang pun yang membatalkan kembali ke app.
Bukan disebabkan notifikasi
TradaZen tidak menghantar sebarang notifikasi semasa percubaan. Itu peraturan app, yang telah saya semak dalam kod. Pembatalan pantas tetap berlaku: jadi bukan notifikasi app yang mencetuskannya.
Dua jenis pembatalan yang jangan dikelirukan
Tidak semua percubaan yang dibatalkan menceritakan kisah yang sama. Di TradaZen, satu perempat pembatalan berlaku dalam masa kurang 10 minit, dan tiga perempat selepas 5 hingga 63 jam penggunaan. Ini panduan yang saya gunakan untuk membacanya.
| Masa pembatalan | Tafsiran saya | Kaedahnya |
|---|---|---|
| Dalam seminit | Berjaga-jaga, atau terkejut harga | Harga jelas, status percubaan kelihatan |
| Semasa sesi pertama | Janji app belum ditunaikan | Tunjukkan hasil sebelum sebarang usaha |
| Selepas beberapa sesi | App disukai, harga tidak diterima | Pelan lebih murah, mesej yang jujur |
| Sehari atau dua hari kemudian | Pengguna tidak pernah membuka app lagi | Sebab untuk kembali, dibenarkan dan diumumkan |
Kes ketiga mengejutkan saya. Di TradaZen, mereka yang membatalkan lewat sama aktifnya dengan mereka yang membayar: jumlah sesi dan pelajaran yang sama. Penggunaan tidak membezakan mereka. Tawaran yang membezakan. Beberapa orang malah terus bermain selepas membatalkan. Mereka suka app itu, tetapi menolak harganya.
Kes keempat berbeza. Pengguna ini membuat sesi pertama yang panjang, tidak pernah membuka app lagi, kemudian membatalkan dari Settings sehari setengah hingga dua hari kemudian. Tiada skrin app yang boleh menahan mereka, kerana mereka tidak melihatnya.
Apa yang Apple benarkan untuk mengekalkan percubaan
| Kaedah | Kata Apple |
|---|---|
| Paparkan tempoh percubaan dan harga yang dicaj selepas itu | Diminta dalam aliran pembelian |
| Tunjukkan status langganan dalam app | Disyorkan, dengan cara mudah untuk mengurusnya |
| Buka pengurusan langganan dari app | showManageSubscriptions(in:) membolehkannya |
| Tawarkan tawaran pengekalan kepada yang mematikan pembaharuan | Dicadangkan selagi langganan belum tamat |
| Tawarkan tahap langganan lain | Dicadangkan, jika lebih sesuai untuk pengguna |
| Tanya sebab pembatalan | Soal selidik diberi sebagai contoh |
| Paparkan mesej pada skrin pembatalan | Boleh dengan Retention Messaging |
Baris-baris ini datang daripada halaman langganan Apple, kecuali yang terakhir, yang diambil daripada dokumentasi Retention Messaging API. Halaman langganan itu juga meminta supaya skrin sistem untuk membatalkan sentiasa mudah dicapai. Mengekalkan percubaan bermaksud memberi sebab untuk kekal, bukan menyukarkan orang untuk pergi.
Dua kaedah memerlukan penjelasan.
Peringatan sebelum percubaan tamat. Notifikasi memerlukan kebenaran pengguna. Jika ia digunakan untuk menjual, guideline 4.5.4 mewajibkan persetujuan yang jelas, dipaparkan dalam app anda, serta cara untuk berhenti melanggan. Butirannya ada dalam panduan saya tentang notifikasi push.
Mesej pada skrin pembatalan. Retention Messaging API Apple memaparkan mesej anda apabila pengguna menekan Cancel Subscription, pada halaman pengesahan (Confirm Cancellation). Butang untuk membatalkan tetap ada. Dalam RevenueCat, peraturan "Is in free trial" membolehkan anda menyasarkan percubaan, menurut dokumentasinya tentang API ini. Akses kepada API ini perlu dipohon daripada Apple: saya memohonnya untuk app saya pada 25 Oktober 2026, dan pada 28 Oktober, jawapan masih belum tiba. Format, had dan cara pemasangannya ada dalam panduan saya tentang Retention Messaging API.
Satu kaedah tidak berfungsi di sini: tawaran win-back. Menurut bantuan App Store Connect, ia menyasarkan bekas pelanggan berdasarkan tempoh minimum langganan berbayar, sekurang-kurangnya sebulan. Percubaan yang tidak pernah dibayar tidak layak.
Apa yang dilarang
| Amalan | Peraturan Apple |
|---|---|
| Menyembunyikan tempoh percubaan atau harga yang dicaj selepas itu | 3.1.2(c), halaman langganan |
| Membuat orang melanggan atas alasan palsu | 3.1.2(a), dikeluarkan dari App Store |
| Mewajibkan tugasan untuk mendapat apa yang telah dibayar | 3.1.2(a): menyiarkan, berkongsi kenalan |
| Memerangkap, menekan, memperbanyak halangan | 5.6, kod kelakuan |
| Menjanjikan peringatan yang tiada mekanisme untuk menunaikannya | 5.6, menurut tafsiran saya: amalan mengelirukan |
5.6 itu luas. Ia melarang memerangkap pelanggan supaya membuat pembelian yang tidak dikehendaki, dan sebarang amalan manipulatif lain, dalam app atau di luarnya. Di TradaZen, saya pernah ditolak di bawah 5.6 kerana paywall yang butang palangnya membuka tawaran dan bukannya menutup skrin. Apple tidak menyatakan elemen yang bermasalah: saya ceritakan apa yang saya betulkan dalam guideline 5.6 dan paywall. Maklumat wajib pada paywall ada dalam guideline 3.1.2.
Apa yang saya ubah di Nolera
Tunaikan janji yang ditulis. Aliran Nolera menjanjikan "Saya akan beritahu anda 24 jam sebelum caj dikenakan". Apabila app berhenti menghantar notifikasi semasa percubaan, ayat itu tidak boleh dibiarkan tanpa sesuatu yang menunaikannya. Kad percubaan pada skrin utama app menunaikan janji itu: tarikh tamat, harga, dan butang "Urus percubaan saya". Kad itu kekal, walaupun ia memudahkan pembatalan.
Tunjukkan gaya pakaian sebelum meminta usaha. Selepas pembelian, ada sembilan skrin kerja sebelum gaya pertama: kamera, pakaian, gambar seluruh badan, ukuran badan, cubaan. Separuh daripada pembatalan berlaku sebelum atau sejurus selepas cubaan pertama. Gambar seluruh badan dan ukuran badan telah dibuang daripada aliran pertama. Pakaian pertama terus dicuba, pada model badan yang disediakan oleh app. Tinggal tujuh skrin dan bukannya sembilan.
Saya belum ada cukup percubaan pada versi ini untuk mengatakan sama ada ia lebih berjaya mengekalkan pengguna. Saya akan meneliti semula pembatalan skrin demi skrin apabila datanya mencukupi.
Senarai semak untuk membaca pembatalan anda sendiri
- Asingkan pembatalan oleh pengguna daripada kegagalan pembayaran. Dalam RevenueCat, baca
cancel_reasonbagi setiapCANCELLATION. - Ukur jarak masa antara permulaan percubaan dan pembatalan: dalam seminit, semasa sesi pertama, pada hari-hari berikutnya.
- Catat skrin terakhir yang dilihat sebelum pembatalan, versi demi versi.
- Bandingkan penggunaan pengguna yang membatalkan lewat dengan pengguna yang membayar. Jika sama, tawaran yang perlu disemak semula, bukan app.
- Lihat siapa yang terus menggunakan app selepas membatalkan: merekalah calon terbaik untuk pelan lain.
- Baca semula paywall anda: tempoh percubaan dan harga yang dicaj selepas itu mesti mudah dibaca tanpa perlu dicari.
- Semak setiap janji pada paywall: jika anda mengumumkan peringatan, mesti ada sesuatu yang menunaikannya.
- Pastikan pautan pengurusan langganan kelihatan dalam app, walaupun ia menyebabkan beberapa pembatalan.
Kesilapan paywall lain yang membuat orang lari sebelum percubaan pun ada dalam 7 kesilapan paywall iOS. Cara mencipta percubaan itu sendiri diterangkan dalam tawaran pengenalan App Store Connect.
Paywall yang jujur dari awal
iOS & Android Kit bermula daripada kod permulaan app saya: onboarding, paywall dan langganan sudah siap dikodkan. Laluan empat langkahnya membawa anda hingga ke App Store, mengikut rentak anda. Keseluruhan rantaian diterangkan di halaman langganan dalam app iOS.
Jika anda sedang menyediakan pelancaran pertama, buat diagnostik percuma anda: ia memberitahu apa yang benar-benar menghalang projek anda dan menghantar senarai semak saya untuk mengelak penolakan Apple.
Soalan lazim
Kenapa pengguna membatalkan percubaan percuma sejurus selepas memulakannya?
Membatalkan serta-merta tidak merugikan mereka apa-apa: akses berterusan hingga tarikh yang ditetapkan, dan Apple menasihati supaya membatalkan sekurang-kurangnya 24 jam sebelum tamat. Terkejut dengan harga yang dicaj selepas percubaan, atau app yang belum menunjukkan nilainya, juga menjadi punca.
Adakah pengguna yang membatalkan percubaan percuma masih boleh menggunakan app?
Ya, hingga tamat tempoh semasa. Pembatalan mula-mula mematikan pembaharuan automatik, kemudian langganan tamat pada tarikh yang ditetapkan. Halaman App Store menyatakannya: langganan yang dibatalkan berakhir pada penghujung kitaran pengebilan semasa.
Adakah pembatalan percubaan bersifat muktamad?
Tidak. Selagi percubaan belum tamat, pengguna boleh mengaktifkan semula pembaharuan daripada pengurusan langganannya. Apple kemudian menghantar notifikasi DID_CHANGE_RENEWAL_STATUS kepada anda dengan subjenis AUTO_RENEW_ENABLED.
Adakah Apple menghantar peringatan sebelum percubaan percuma tamat?
Saya tidak menemui sebarang halaman Apple yang menjanjikannya. Bantuan Apple hanya menasihati pengguna supaya membatalkan sekurang-kurangnya 24 jam sebelum tamat. Jika paywall anda menjanjikan peringatan, app anda yang mesti menunaikannya.
Bolehkah anda menawarkan sesuatu kepada orang yang membatalkan percubaan?
Apple mencadangkan tawaran pengekalan dalam app untuk pelanggan yang telah mematikan pembaharuan, selagi langganan belum tamat. Retention Messaging juga memaparkan mesej pada skrin pembatalan. Tawaran win-back pula memerlukan sekurang-kurangnya sebulan langganan berbayar.
Adakah dilarang mendesak untuk mengekalkan pengguna dalam percubaan?
Mendesak dengan tekanan, ya. Guideline 5.6 melarang memerangkap atau memanipulasi pelanggan, dan Apple meminta supaya skrin pembatalan mudah dicapai. Mesej yang jujur tentang nilai app, atau pelan yang lebih murah, masih dibenarkan.

