Buku Panduan Pendapatan
Copas prompt pengaturan dengan langkah instalasi dan panduan markdown lengkap untuk plugin ini.

Pembelian SDK hanya salah satu bagian dari mendapatkan laba dari sebuah aplikasi. Laba berasal dari masalah yang jelas, produk kecil yang pengguna dapat mencoba, billing toko yang dapat diandalkan, dan paywall yang mengajarkan apa yang orang mau beli.
Gunakan peta ini ketika Anda menambahkan langganan atau unggahan premium dengan @capgo/native-purchases.
Mulai dengan target laba sederhana
Mulai dengan target laba yang konkrit. Misalnya:Harga Bulanan
| Harga Bulanan | Subskrip teraktif dibutuhkan sekitar $1K MRR |
|---|---|
| $4.99 | 201 |
| $7.99 | 126 |
| $9.99 | 101 |
| $29.99 setiap tahun | Sebanyak 400 pelanggan setahun, tergantung pada waktu |
Angka-angka ini sebelum biaya toko, pajak, pengembalian, dan perbedaan mata uang. Mereka masih berguna karena mereka menjaga rencana peluncuran praktis: Anda membutuhkan beberapa ratus pengguna yang termotivasi, bukan audiens besar.
Bangun produk berbayar terkecil
Judul bagian āBangun produk berbayar terkecilā-
Pilih satu kasus penggunaan yang menyakitkan
Bangun sekitar satu hasil yang pengguna sudah mencari. Contoh: rencana olahraga untuk orang tua baru, penghitung anggaran untuk pasangan, scanner bukti untuk freelancer, atau aplikasi latihan bahasa untuk satu ujian.
-
Periksa permintaan di toko
Cari App Store dan Google Play untuk kata kunci utama. Baca ulasan bawah dan tengah dari aplikasi kompetitor untuk menemukan fitur yang hilang, onboarding yang membingungkan, keluhan harga, dan gesekan UI.
-
Kirimkan MVP yang sempit
Versi pertama harus mencakup onboarding, satu aksi utama yang berguna, pengelolaan kesalahan dasar, dan cukup analitis untuk melihat apakah pengguna mencapai titik nilai.
-
Tambahkan pembelian awal
Jangan menunggu sampai aplikasi terasa lengkap. Paywall dasar membantu Anda mengetahui apakah pengguna memahami nilai dan apakah harga yang Anda tawarkan masuk akal.
Instrument funnel sebelum melakukan optimasi
Bagian berjudul āInstrument funnel sebelum melakukan optimasiāLacak event-event berikut sebelum Anda mulai mengubah harga atau layar:
| Event | Mengapa hal ini penting |
|---|---|
install atau buka terlebih dahulu | Trafik dasar |
onboarding_completed | Apakah pengguna memahami pengaturan |
core_action_completed | Apakah produk memberikan nilai |
paywall_viewed | Apakah pengguna mencapai monetisasi |
trial_started | Apakah tawaran ini menarik |
purchase_completed | Konversi berbayar |
restore_started dan restore_completed | Kemampuan memulihkan pembelian dan mematuhi persetujuan |
subscription_status_checked | Ketepatan hak |
cancel_feedback_submitted | Alasan pengguguran |
Jika banyak pengguna tidak melihat paywall, perbaiki proses pendaftaran sebelum mengubah paywall. Jika pengguna melihat paywall tetapi tidak memulai trial, perbaiki tawaran, bukti, atau presentasi harga.
Pilih satu model monetisasi
Judul bagian āPilih satu model monetisasiāMulai dengan satu model agar data dapat dibaca.
| Model | Sesuai dengan | Versi pertama |
|---|---|---|
| Freemium | Alat-alat harian, penghitung, alat-alat dengan penggunaan berulang | Aksi inti gratis, batasan pembayaran atau fitur premium |
| Paywall plus uji coba gratis | Aplikasi yang menyampaikan nilai cepat setelah proses onboard | Paywall setelah onboard dengan uji coba 3-14 hari |
| Unjuk satu kali | Alat-alat kecil dengan nilai berulang yang terbatas | Produk seumur hidup plus pilihan langganan masa depan |
Hindari pengiriman tiga tingkat, banyak paket, dan jalur upgrade kompleks pada hari pertama. Gunakan satu rencana bulanan dan satu rencana tahunan ketika Anda memerlukan langganan. Tambahkan harga lokal setelah Anda melihat lalu lintas yang bermakna dari suatu negara.
Konfigurasi produk untuk pembelajaran pendapatan
Bagian berjudul āKonfigurasi produk untuk pembelajaran pendapatanāTetapkan identifikasi produk stabil dan dapat dibaca:
com.example.app.premium.monthlycom.example.app.premium.yearlycom.example.app.premium.lifetimeGunakan nama produk toko yang memperkuat nilai yang dicari pengguna, seperti āMeal Planner Pro Bulananā daripada hanya āBulananā. Metadata toko dan nama pembelian dalam aplikasi dapat membantu penemuan dan kejelasan.
Muat data produk dari toko sehingga harga, mata uang, dan tawaran promosi awal selalu akurat:
import { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
const { products } = await NativePurchases.getProducts({ productIdentifiers: [ 'com.example.app.premium.monthly', 'com.example.app.premium.yearly', ], productType: PURCHASE_TYPE.SUBS,});
const monthly = products.find((product) => product.identifier.endsWith('.monthly'));const yearly = products.find((product) => product.identifier.endsWith('.yearly'));Jangan pernah mengkode harga toko secara keras di UI. Tampilkan product.priceStringJudul produk yang lokal, periode pembayaran, dan syarat percobaan dari data toko secara mungkin.
Buat paywall pertama
Bagian berjudul āBuat paywall pertamaāPaywall pertama harus jelas, bukan pintar:
- Judul: hasil pembayaran yang dibayar, seperti āAktifkan rencana latihan tanpa batasā.
- Keuntungan: 3 hingga 5 perbaikan konkret, bukan daftar fitur panjang.
- Rencana: bulanan dan tahunan, dengan penghematan tahunan nyata jika ditawarkan.
- Uji Coba: panjang uji coba yang tepat dan apa yang terjadi setelahnya berakhir.
- CTA: āMulai uji coba gratisā atau āPerbarui sekarangā.
- Tautan: syarat dan ketentuan, kebijakan privasi, mengembalikan pembelian, dan mengelola langganan.
Tempatkan paywall pertama setelah proses onboarding, ketika pengguna memahami apa yang aplikasi lakukan. Kemudian, tes trigger tambahan seperti batasan penggunaan, sentuhan fitur premium, atau aksi inti yang selesai.
Alur Pembelian dan Mengembalikan
Bab berjudul āAlur Pembelian dan Mengembalikanāimport { NativePurchases, PURCHASE_TYPE } from '@capgo/native-purchases';
export async function buyYearly(appAccountToken: string) { const transaction = await NativePurchases.purchaseProduct({ productIdentifier: 'com.example.app.premium.yearly', planIdentifier: 'yearly-plan', productType: PURCHASE_TYPE.SUBS, appAccountToken, });
await fetch('/api/purchases/validate', { method: 'POST', headers: { 'content-type': 'application/json' }, body: JSON.stringify({ transactionId: transaction.transactionId, receipt: transaction.receipt, purchaseToken: transaction.purchaseToken, productIdentifier: transaction.productIdentifier, }), });
return transaction;}
export async function restorePurchases() { await NativePurchases.restorePurchases();
return NativePurchases.getPurchases({ productType: PURCHASE_TYPE.SUBS, });}Selalu validasi pembelian di backend Anda sebelum memberikan hak akses yang tahan lama. Simpan cache hak akses lokal untuk UI yang cepat, tetapi anggap toko dan backend Anda sebagai sumber kebenaran.
Masukkan Pengguna Pertama
Bab berjudul āMasukkan Pengguna Pertamaātranslations.0.targetLanguage":"Indonesia","translations.0.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.0.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.1.targetLanguage":"Indonesia","translations.1.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.1.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.2.targetLanguage":"Indonesia","translations.2.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.2.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.3.targetLanguage":"Indonesia","translations.3.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.3.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.4.targetLanguage":"Indonesia","translations.4.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.4.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
translations.5.targetLanguage":"Indonesia","translations.5.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.5.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
translations.6.targetLanguage":"Indonesia","translations.6.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.6.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
translations.7.targetLanguage":"Indonesia","translations.7.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.7.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]translations.8.targetLanguage":"Indonesia","translations.8.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.8.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.9.targetLanguage":"Indonesia","translations.9.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.9.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.10.targetLanguage":"Indonesia","translations.10.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.10.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- translations.11.targetLanguage":"Indonesia","translations.11.protectedTokens":["Cloudflare","Capacitor","GitHub","Capgo","code","API","SDK","CLI","npm","bun"],"translations.11.texts":["Pendapatan membutuhkan lalu lintas. Mulai dengan saluran yang dapat berfungsi sebelum Anda memiliki merek:","ASO: judul, subjudul, kata kunci, tangkapan layar, deskripsi aplikasi, ikon, peringkat, dan nama pembelian dalam aplikasi.","Video pendek: posting demo cepat, klip masalah/solusi, dan contoh sebelum/sesudah untuk negara target.","Reddit dan komunitas: bergabung dalam percakapan terlebih dahulu, kemudian bagikan apa yang Anda bangun sebagai cerita berguna bukan iklan.","Grup beta: TestFlight, Google Play internal testing, Discord, dan forum khusus.","Setiap saluran harus mengirimkan pengguna ke dalam funnel yang diukur sama sehingga Anda dapat membandingkan retensi, tampilan paywall, uji coba, dan pembelian.","Baca keluaran yang benar","Judul bagian āBaca keluaran yang benarā","Beberapa keluaran berarti pengguna mencoba aplikasi dan memutuskan bahwa itu tidak untuk mereka. Itu normal. Yang penting adalah pola:","Membatalkan selama uji coba: nilai yang tidak jelas, onboarding yang buruk, atau lalu lintas yang salah.","Membatalkan setelah satu siklus: tidak cukup nilai ulang atau loop kebiasaan yang lemah.","Pengembalian: kesalahan harga, risiko pembelian tidak sengaja, atau istilah yang tidak jelas."]
- Tidak ada restorasi: penanganan hak istimewa yang rusak atau UI restorasi yang hilang.
Tambahkan survei pembatalan satu pertanyaan ketika memungkinkan. Gunakan jawaban untuk meningkatkan onboarding, lingkup fitur, tangkapan layar toko, dan teks paywall.
Daftar Pemeriksaan Peluncuran
Judul bagian āDaftar Pemeriksaan Peluncuranā- Produk menyelesaikan satu masalah berbayar yang jelas.
- Produk toko aktif dan telah diuji pada iOS dan Android.
- Paywall menampilkan harga dan syarat toko yang dimuat.
- Pembelian, restorasi, manajemen langganan, dan validasi backend telah diimplementasikan.
- Event funnel diikuti dari bukaan pertama hingga pembelian.
- Metadata toko aplikasi menjelaskan nilai dalam tangkapan layar pertama.
- Setidaknya satu saluran akuisisi aktif sebelum peluncuran.
- Umpan balik pengurangan adalah dikumpulkan dari pelanggan pertama.