Visible Beta, Alpha, Preview, or v0.3.1 labels signal to App Review and Play Console reviewers that the submitter is using the public store as a test environment, which violates Apple Guideline 2.2 (Beta Testing) — TestFlight is the only sanctioned beta channel. Debug overlays, raw JSON error dumps, and ungated developer panels leaking into production builds also trip the same guideline and cause immediate rejection, often with a terse reviewer note that wastes a full resubmission cycle.
High because beta indicators cause immediate rejection under Apple Guideline 2.2 and Play policy.
Strip beta/alpha badges from production UI, bump the user-visible version to 1.0.0 or higher, and gate every debug surface behind a compile-time flag. In React Native use __DEV__; in Flutter use kDebugMode; in Swift use #if DEBUG. Example in src/components/Header.tsx:
{__DEV__ && <DebugPanel />}
Remove any process.env.IS_TESTFLIGHT branches that leave visible artifacts in the App Store build.
app-store-review-blockers.completeness-stability.no-beta-indicatorshigh"Beta", "(Beta)", "[Beta]", "v0.", "alpha", "preview", "experimental" in rendered text. Also look for TestFlight-specific code paths that survive into production builds (e.g., if (process.env.IS_TESTFLIGHT) blocks that leave visual artifacts), unfinished loading states that show raw JSON or API error objects to users, and development-mode UI that is not properly gated by __DEV__ or equivalent.__DEV__ (React Native), kDebugMode (Flutter), or #if DEBUG (Swift). A partial or placeholder implementation does not count as pass. Report the count even on pass.0.x in the user-visible app header. Debug overlay components rendered without __DEV__ guard."Beta badge rendered unconditionally in src/components/Header.tsx" or "Version shown to user is '0.3.1-beta' in app header"__DEV__ checks:
{__DEV__ && <DebugPanel />}
1.0.0 or higher for first public release