# Guideline 2.1 App Store: memahami dan memperbaiki penolakan

> Guideline 2.1 App Completeness: cakupan aturannya, cara Apple menguji aplikasimu, balasan untuk reviewer, dan 3 penolakan nyata di aplikasiku.

Halaman asli: [Guideline 2.1 App Store: memahami dan memperbaiki penolakan](https://devoria.fr/id/blog/guideline-2-1-app-store-penolakan)
Penulis: [Mehdi Azizi](https://devoria.fr/id/mehdi-azizi)
Terbit: 2026-09-23
Revisi konten terakhir: 2026-10-09


Guideline 2.1 adalah aturan yang paling banyak menggagalkan submission. Apple sendiri menuliskannya di [halaman App Review](https://developer.apple.com/distribute/app-review/): rata-rata, lebih dari 40% masalah yang tidak terselesaikan berkaitan dengan 2.1, aturan yang mencakup crash, konten sementara, dan informasi yang tidak lengkap.

Artikel ini hanya membahas aturan ini: apa saja cakupannya, dua variannya, cara reviewer menguji aplikasimu, dan apa yang harus kamu balas, lengkap dengan tiga penolakan yang aku alami di aplikasiku sendiri. Kalau kamu ingin gambaran umum semua alasan penolakan, baca saja [kenapa Apple menolak aplikasi](https://devoria.fr/id/blog/aplikasi-ditolak-apple-penyebab-solusi).

## Apa itu guideline 2.1 App Completeness?

Guideline 2.1 mewajibkan aplikasi yang dikirim ke Apple adalah versi final dan lengkap: tidak ada crash, tidak ada tautan mati, tidak ada teks sementara, ada akun demo kalau aplikasi butuh login, dan pembelian dalam aplikasi terlihat serta berfungsi. Kalau reviewer tidak bisa menjelajahi aplikasimu sampai tuntas, hasilnya penolakan 2.1.

Teks resminya ada di [App Review Guidelines](https://developer.apple.com/app-store/review/guidelines/#2.1), bagian 2 "Performance". Teks ini terbagi menjadi dua butir.

**2.1(a)** meminta setiap submission berupa versi final, dengan semua metadata dan URL yang berfungsi. Teks sementara, situs kosong, dan semua konten sementara harus hilang sebelum dikirim. Aplikasi harus sudah diuji di perangkat asli untuk bug dan stabilitasnya. Kalau butuh login, kamu harus menyediakan akun demo dan membiarkan servermu tetap menyala. Mode demo bawaan bisa menggantikan akun ini, tapi hanya dengan persetujuan Apple sebelumnya, dan mode itu harus menampilkan semua fitur aplikasi. Kalimat yang merangkum semuanya: "We will reject incomplete app bundles and binaries that crash".

**2.1(b)** berkaitan dengan pembelian dalam aplikasi: harus lengkap, terbaru, terlihat oleh reviewer, dan berfungsi. Kalau ada pembelian yang dikonfigurasi di App Store Connect tapi tidak bisa ditemukan di aplikasi, kamu harus menjelaskan alasannya di catatan review.

## Apa saja yang dicakup guideline 2.1 secara konkret

Dalam praktiknya, penolakan 2.1 terjadi karena salah satu alasan ini:

- **Crash.** Saat dibuka, setelah izin ditolak, tanpa jaringan. Satu kali saja sudah cukup.
- **Tautan mati.** Privasi, syarat penggunaan, dukungan: setiap URL yang kamu daftarkan akan dibuka.
- **Fitur yang tidak bisa diakses.** Tombol yang tidak mengarah ke mana pun, layar wajib yang tidak bisa dilewati, onboarding tanpa jalan keluar. Bentuk yang paling menjebak: tidak terlihat di ponselmu sendiri.
- **Akun demo tidak ada atau kedaluwarsa.** Reviewer tertahan di layar login, atau akun yang diberikan sudah tidak jalan, atau servernya mati.
- **Konten pengisi.** Lorem ipsum, "Segera hadir", layar kosong, data uji yang terlihat.
- **Pembelian dalam aplikasi tidak ditemukan.** Langganan ada di App Store Connect, tapi reviewer tidak menemukan layar yang menjualnya, atau pembelian gagal di sandbox. Kesalahan layar pembayaran yang paling umum ada di [paywall iOS: 7 kesalahan pemula](https://devoria.fr/id/blog/paywall-ios-kesalahan-pemula-penjualan).

## 2.1 Information Needed atau 2.1(a): apa bedanya?

Pesan dari Apple tidak semuanya berjudul sama, dan perbedaannya mengubah cara kamu membalas.

**"Guideline 2.1 - Information Needed"** artinya reviewer tidak bisa menyelesaikan review-nya dan mengajukan pertanyaan kepadamu. Ada kredensial, penjelasan, atau cara mencapai suatu fitur yang kurang. Ini belum temuan bug: ini permintaan. Kadang, jawaban yang tepat di App Store Connect sudah cukup. Tapi kalau pertanyaannya mengungkap hambatan nyata di aplikasi, kamu perlu build baru.

**"Guideline 2.1(a) - Performance - App Completeness"** artinya reviewer menemukan masalah: crash, bug, layar yang tidak merespons. Pesannya biasanya menyebutkan perangkat yang dipakai dan sering melampirkan tangkapan layar. Di sini, kamu harus memperbaiki, mengirim ulang build, lalu membalas.

## Cara Apple menguji aplikasimu

Posisikan dirimu sebagai reviewer. Ada tiga hal penting.

**Dia menguji di perangkat yang mungkin tidak kamu punya.** Pesan penolakan sering menyebutkan modelnya. Aturan 2.4.1 menyatakan bahwa aplikasi iPhone sebisa mungkin harus berjalan di iPad, dan aplikasi yang dirancang untuk iPhone akan tampil di sana dalam mode kompatibilitas, di jendela berformat iPhone. Penolakan 2.1 terbaruku berasal dari iPad Air: kalau kamu hanya menguji di iPhone-mu, kamu tidak melihat apa yang dilihat reviewer.

**Dia mulai dari peluncuran pertama.** Aplikasi baru, tanpa cache, tanpa sesi, tanpa update yang diunduh.

**Jaringan harus berfungsi dengan IPv6 saja.** Aturan 2.5.5, tetangga guideline 2.5.4 tentang mode latar belakang, mewajibkan aplikasi berfungsi penuh di jaringan khusus IPv6, dan [halaman dukungan Apple tentang IPv6](https://developer.apple.com/support/ipv6/) menjadikannya syarat untuk semua aplikasi yang dikirim sejak 1 Juni 2016. Risikonya datang dari alamat IPv4 yang ditulis langsung di kode: Apple menyarankan untuk menguji di jaringan khusus IPv6, dengan data seluler dimatikan.

Untuk mereproduksi kondisi ini sebelum mengirim, TestFlight di beberapa perangkat tetap cara paling mudah: lihat [TestFlight: menguji aplikasi iPhone](https://devoria.fr/id/blog/testflight-cara-tes-aplikasi-iphone).

## Tiga penolakan yang aku alami, dan penyebab sebenarnya

Tiga penolakan terbaru di aplikasiku sendiri, dengan penyebab sebenarnya.

### Solys: demo mini-game yang mustahil dimenangkan di iPad

Solys adalah aplikasi alarmku dengan mini-game. Pada 18 Agustus 2026, sebuah build ditolak dengan "2.1 Information Needed": Apple meminta cara untuk melewati misi game. Reviewer menguji di iPad Air, dengan aplikasi iPhone dalam mode kompatibilitas.

Penyebab sebenarnya ada di demo mini-game onboarding. Tinggi rintangan ditulis dalam poin tetap. Dengan tinggi kartu yang tersedia di iPad dalam mode kompatibilitas, celahnya jadi lebih sempit daripada karakternya: demonya mustahil dimenangkan. Dan tombol "Lanjutkan" hanya aktif kalau menang. Tidak ada jalan keluar: reviewer tidak bisa melihat aplikasinya.

**Perbaikannya**: geometri yang proporsional dengan ukuran kartu yang terukur, dan tautan "Lewati demo" yang muncul setelah kalah.

**Pelajarannya**: setiap langkah yang terkunci oleh performa harus punya jalan keluar tanpa syarat. Dan setiap layar wajib diuji di layar terkecil yang didukung DAN di iPad dalam mode kompatibilitas.

### Nolera: perbaikan yang tidak terlihat oleh reviewer

Pada 17 September 2026, Nolera ditolak setelah review di iPad Air. Pesannya menggabungkan 2.1(a) dan beberapa poin lain. Perbaikan untuk masalah yang dilaporkan sudah dikirim lewat update jarak jauh (OTA), tanpa build baru.

Masalahnya: saat peluncuran pertama, reviewer melihat kode yang tertanam di build, bukan update yang diunduh setelahnya. Baginya, perbaikan itu tidak ada.

**Pelajarannya**: perbaikan yang ditujukan untuk review harus ada di binary yang dikirim ke Apple.

### Clic: penyebabnya bukan di aplikasi

Pada 16 September 2026, Clic ditolak. Aplikasinya sendiri sudah terbaru. Penyebab sebenarnya ada di tempat lain: kebijakan privasi yang dipublikasikan online belum diperbarui soal penyedia AI yang dipakai. Penolakan ini lebih terkait privasi daripada 2.1, tapi menunjukkan hal yang sama: penyebab sebenarnya tidak selalu seperti yang tersirat dari pesannya.

**Pelajarannya**: periksa apa yang online, bukan apa yang ada di repositorimu. Buka setiap URL yang didaftarkan pada hari pengiriman.

## Apa yang harus dibalas di Resolution Center

Setelah ditolak, submission-mu masuk ke status ["Unresolved Issues"](https://devoria.fr/id/blog/waiting-for-review-app-store-connect-status) dan percakapan dengan Apple berlangsung di bagian App Review aplikasimu, yang masih disebut Resolution Center. Prosedur resmi untuk [membalas App Review](https://developer.apple.com/help/app-store-connect/manage-submissions-to-app-review/reply-to-app-review-messages/) memungkinkan pesan maksimal 4.000 karakter, dengan satu lampiran.

Tulis dalam bahasa Inggris, dengan singkat. Reviewer ingin tiga informasi: apa yang menghambat, apa yang berubah, bagaimana memverifikasinya. Ini template yang aku pakai (ganti nomor build dan perbaikannya dengan milikmu):

```text
Hello,

Thank you for your review.

Issue: the onboarding game demo could not be completed on iPad
(iPhone app running in compatibility mode), so the user could
not continue.

Fix in build 1.0.3 (42):
- The game layout now scales to the measured screen size.
- A "Skip demo" link appears after a failed attempt, so the
  onboarding can always be completed.

How to verify: launch the app, start the onboarding demo,
lose once, then tap "Skip demo".

A screen recording is attached.

Best regards,
```

Beberapa aturan:

- **Jawab pertanyaan yang diajukan.** Untuk "Information Needed", mulai dengan jawaban yang tepat, bukan dengan konteks.
- **Sebutkan build-nya dan berikan jalurnya** menuju layar yang diperbaiki, dalam tiga atau empat langkah.
- **Lampirkan bukti.** Video singkat di perangkat yang mirip dengan milik reviewer menghindarkan bolak-balik lagi.
- **Jangan membela diri.** Banding ke App Review Board memang ada, tapi untuk penolakan 2.1 yang memang pantas, itu hanya memperpanjang waktu tunggu. Rincian durasinya ada di [lama validasi App Store](https://devoria.fr/id/blog/lama-review-app-store-berapa-lama-menunggu).

Kalau alasannya masih kabur setelah dibaca, langkah lengkapnya ada di halaman [aplikasi ditolak Apple](https://devoria.fr/id/expertise/aplikasi-ditolak-apple).

## Catatan review dan akun demo

Bagian App Review Information di versimu, di App Store Connect, adalah pertahanan terbaikmu terhadap 2.1. Menurut [referensi resmi kolom-kolom ini](https://developer.apple.com/help/app-store-connect/reference/app-review-information/), isinya:

- **Sign-in required**: username dan password akun demo. Akun ini tidak boleh kedaluwarsa. Kalau aplikasimu memakai login pihak ketiga, berikan kredensial layanan itu.
- **Notes**: hingga 4.000 byte, dalam bahasa pilihanmu. Semua yang membantu pengujian.
- **Contact**: nama, email, dan nomor telepon dalam format internasional.

Yang selalu aku tulis di catatan:

1. **Jalur menuju setiap pembelian dalam aplikasi**, sesuai permintaan aturan 2.1(b).
2. **Fitur yang tidak jelas**: gestur, izin, konten yang terkait waktu tertentu.
3. **Status akun demo**: berlangganan atau tidak, data sudah terisi atau kosong.
4. **Keterbatasan yang diketahui**: untuk perangkat keras atau lingkungan yang sulit direproduksi, Apple meminta kamu siap memberikan video.

Dan satu aturan di luar formulir: **biarkan servermu tetap menyala selama review berlangsung.** Server uji yang mati berarti akun demo tidak jalan, berarti penolakan 2.1.

## Checklist 2.1 sebelum submit

Checklist yang aku jalankan sebelum setiap pengiriman, disusun dari penolakan yang aku alami:

- Aplikasi diinstal dari nol di iPhone terkecil yang didukung, yang terbesar, dan iPad dalam mode kompatibilitas
- Onboarding dijalani sampai tuntas, dengan sengaja gagal di setiap langkah yang menuntut performa
- Setiap layar wajib punya jalan keluar tanpa syarat
- Tidak ada perbaikan untuk review yang hanya dikirim lewat update jarak jauh
- Aplikasi dibuka dalam mode pesawat, lalu di jaringan khusus IPv6
- Setiap URL yang didaftarkan dibuka pada hari itu juga: privasi, syarat, dukungan
- Tidak ada teks sementara, layar kosong, atau data uji yang terlihat
- Akun demo diuji pada hari pengiriman, tanpa tanggal kedaluwarsa, server menyala
- Setiap pembelian dalam aplikasi bisa ditemukan dari aplikasi dan diuji di sandbox, termasuk restore
- Catatan review menunjukkan letak pembelian dan fitur yang tidak jelas

Kalau ini publikasi pertamamu, semua langkah sebelumnya ada di [memublikasikan aplikasi di App Store](https://devoria.fr/id/expertise/publikasi-aplikasi-di-app-store).

## Kirim berkasmu bersama orang yang sudah pernah kena penolakan ini

[Apple Review Kit](https://devoria.fr/id/kits/review-apple) berisi checklist-ku sebelum pengiriman, template catatan untuk penguji, dan skill Claude Code yang memeriksa proyekmu sebelum kamu submit.

Baru menerima penolakan 2.1? Kit ini juga membantumu menemukan aturan yang dikutip, apa yang dimintanya, dan contoh perbaikan serta balasannya. Kalau kamu ingin kita memeriksa berkasmu bersama sekarang juga, [pesan satu jam bersamaku](https://devoria.fr/id/coaching), lewat video call.

Tidak ada yang bisa menjamin Apple akan menerima aplikasimu. Yang bisa aku lakukan adalah membantumu menghindari penolakan 2.1 yang sudah aku bayar dengan satu siklus review.

Belum mengirim aplikasimu? [Diagnostik gratis](https://devoria.fr/id/diagnostic) akan mengirimkan checklist anti-penolakan Apple milikku, termasuk aturan 2.1, dan memberitahumu apa yang masih perlu dilakukan sebelum mengirim. Kalau kamu masih membangunnya, halaman utama menunjukkan cara [membuat aplikasi mobile](https://devoria.fr/id) dengan memikirkan review sejak awal.

## Pertanyaan umum

### Apa arti "Guideline 2.1 - Information Needed"?

Reviewer tidak bisa menyelesaikan review-nya dan mengajukan pertanyaan: kredensial, penjelasan, cara mengakses suatu fitur. Jawab dengan tepat di App Store Connect. Kalau pertanyaannya mengungkap hambatan nyata di aplikasi, seperti di Solys, perbaiki dan kirim build baru.

### Apakah perlu build baru setelah penolakan 2.1?

Untuk crash, bug, atau layar yang menghambat, ya: perbaikannya harus ada di binary. Update jarak jauh tidak cukup, karena reviewer melihat kode yang tertanam saat peluncuran pertama. Untuk informasi yang kurang saja, balasan bisa cukup.

### Aplikasiku butuh login: apa yang harus diberikan ke reviewer?

Akun demo yang tidak kedaluwarsa, diisi di bagian App Review Information, dan server yang menyala selama review berlangsung. Mode demo bawaan bisa menggantikan akun ini hanya dengan persetujuan Apple sebelumnya, dan harus menampilkan semua fitur.

### Apakah penolakan 2.1 bisa disebabkan hal selain aplikasinya?

Ya. URL mati di halaman aplikasi, akun demo kedaluwarsa, server mati, atau pembelian dalam aplikasi yang salah konfigurasi sudah cukup. Dan kadang, seperti di Clic, penyebab sebenarnya ada online, bukan di kode: periksa semua yang bisa dibuka reviewer.


## Proyekmu

[Apple Review Kit](https://devoria.fr/id/kits/review-apple): Checklist review App Store yang kupakai, penolakan Apple yang sudah kuperbaiki, catatan untuk penguji, dan dua skill Claude Code yang meninjau aplikasimu. 29 €.

[iOS Kit](https://devoria.fr/id/kits/ios): Bikin aplikasi iPhone dengan Claude Code: starter code aplikasiku, skill yang memeriksa kerjanya, plus Apple Review Kit, App Store Screenshots Kit, dan ASO Kit. 129,99 €.
