App Store

    Why did Apple reject my AI wrapper under Guideline 4.2?

    An iOS developer wiring native features into an AI chat wrapper before resubmitting under Guideline 4.2 Minimum Functionality

    If your AI wrapper app just got rejected with Resolution Center text citing Guideline 4.2 Minimum Functionality, the message is more specific than the rule sounds. Apple is saying the binary the reviewer opened on a test device could be replaced by a browser tab on chat.openai.com or claude.ai without the user losing anything.

    Short answer

    Apple rejects AI wrapper apps under Guideline 4.2 when the experience the reviewer sees on a fresh device is functionally a remote chat window. Passing review usually means adding two to four real native iOS features the reader cannot get from a browser tab, a use case tied to the device (voice, camera, files, location, watch, widget, Live Activity, on-device CoreML), and metadata in App Store Connect that matches what the binary actually does on launch.

    What you should know

    • Guideline 4.2 sits inside Guideline 4.0 Design and is the rule that catches thin wrappers. The full text appears in the App Review Guidelines.
    • A custom system prompt or branded UI does not count as a feature for 4.2 purposes. Apple is testing whether the binary does something a browser cannot.
    • Guideline 4.2.6 covers commercialised templates and can catch AI apps generated by no-code builders like FlutterFlow, Bubble, or Rork unless the submission comes from the developer who owns the content.
    • Reviewers test on a fresh device with no signed-in account and judge the first thirty seconds of use, so onboarding without an immediate native interaction reads as a wrapper.
    • Chatbot apps now have a separate clause under Guideline 4.7, which lists filtering, reporting, blocking, and timely responses as requirements alongside the 4.2 floor.

    What does Guideline 4.2 actually require for an AI app?

    Guideline 4.2 asks every app to include features, content, and UI that go beyond a repackaged website. For an AI chat wrapper that means the binary has to do something a user cannot get by opening chat.openai.com or claude.ai in Safari. Apple does not publish a numeric threshold. Reviewers apply a judgement call that the App Review Guidelines describe in plain language: not particularly useful, unique, or app-like.

    In practice three of the four following are usually enough to pass: a native iOS integration (camera, voice input, share extension, widget, Live Activity, Apple Watch companion, CoreML), local state that survives without internet, a tightly scoped purpose that is narrower than the underlying model (a tax-return drafting helper, not a general chat), and metadata that matches what the binary does on launch.

    The most reliable signal that an app reads as a wrapper is the first screen after install. If a fresh-device launch reaches a generic chat prompt with no sign of the device the app is running on, the reviewer has the evidence the rule asks for. The build is treated as a web service in a frame.

    Why does Apple flag a ChatGPT or Claude wrapper specifically?

    A reviewer's job on a 4.2 question is to compare the app against the browser version of the same service. With ChatGPT, Claude, Gemini, and similar models all available on the open web in mobile-optimised layouts, an iOS binary that wraps the same chat interface fails the comparison.

    Two other parts of Guideline 4.2 reinforce this. Section 4.2.2 says apps should not primarily be marketing materials, advertisements, web clippings, content aggregators, or a collection of links. A chat wrapper that pipes user input to OpenAI and prints the result reads as a web clipping with extra steps. Section 4.2.6, the commercialised-template rule, was originally written for restaurant template apps but has been applied since 2024 to no-code AI app builders that ship visually similar binaries with only the prompt or branding swapped.

    Patterns reported on the Apple Developer Forums between late 2025 and April 2026 show a recurring rejection sentence: your app provides a limited user experience as it is not sufficiently different from a mobile browsing experience. The same sentence appears across wrappers built in React Native, FlutterFlow, Bubble, and pure SwiftUI. The framework is not the question. The question is whether the binary needs to exist on iOS.

    Which native iOS features actually count toward 4.2?

    Apple does not publish a checklist of qualifying features, so the working list is the one that reviewers visibly engage with during a 4.2 test. The features below come up repeatedly in passed-build patterns from 2026.

    FeatureWhy it reads as nativeWhat does not count
    Voice input via SFSpeechRecognizerUses the microphone and on-device speech APIA web mic that posts audio to a server
    Camera or document captureVisionKit or AVFoundation tied to a real workflowA camera button that uploads to a cloud OCR
    Share extensionReceives selected content from any app on the deviceA custom share screen inside the app
    Siri Shortcut or App IntentReachable from Spotlight and ShortcutsA button labelled Hey Siri inside the app
    Widget or Live ActivitySurface on the home screen or lock screenA push notification with no widget tie-in
    Apple Watch companionIndependent watch UI for the same workflowA notification mirror on the watch
    On-device CoreMLA model runs without a network callA wrapper that only sends prompts to the cloud
    File provider integrationEdits files in the Files app directlyA custom file picker in the app

    The line that matters is whether the feature uses an iOS API the browser cannot reach. A voice input that runs through the browser's WebSpeech API does not count. The same input running through SFSpeechRecognizer with a real microphone permission string does. The reviewer can see the difference because the system privacy prompt fires.

    For builders who want an external automated read of a build before resubmission, PTKD.com (https://ptkd.com) is one of the platforms focused on pre-submission scanning aligned with OWASP MASVS for AI-coded mobile apps.

    How does Guideline 4.2.6 trap apps built with no-code AI builders?

    Section 4.2.6 reads as a template rule, but its scope covers any commercialised service that generates apps on behalf of clients. The rule lists two acceptable paths: the content provider submits directly under their own developer account, or the template service publishes a single binary that hosts many clients in a picker model. Anything else is rejected.

    For AI app builders like Rork, Bubble, or FlutterFlow, this means a developer using the builder under their own Apple Developer account is generally fine, because the submission comes from the content provider. The problem appears when the builder itself uploads the binary, or when the visual output across many clients looks similar enough that the reviewer reads two unrelated submissions as the same template with a different colour scheme.

    A reviewer's signal for 4.2.6 is heuristic. If the same UI shell appears across many submissions with only branding swapped, the rule triggers. The cure is the same as for 4.2 generally: at least one native feature that uses an iOS API the template does not generate by default, and metadata that names a specific purpose.

    What is the fastest way to revive a 4.2 rejection without a full rewrite?

    If the rejection arrived after the first submission, the practical path is usually a single follow-up build with two or three real native features added in the right places, plus a tighter metadata pass in App Store Connect. The order that has worked in 2026:

    1. Add an SFSpeechRecognizer voice input on the main chat screen with a proper NSSpeechRecognitionUsageDescription Purpose String in Info.plist.
    2. Add a Share Extension that accepts text or images from any app and feeds them into a new chat.
    3. Add a Widget (small or medium) that shows the most recent AI reply or a quick prompt button.
    4. Trim metadata in App Store Connect so the title, subtitle, and description name the specific use case (for example, voice-driven recipe planner) instead of generic chat.
    5. Reply in Resolution Center pointing to the exact gestures: long-press the share icon, tap the microphone, scroll to the widget gallery.

    The build does not need every feature in the table above. Two to three is usually enough if each is reachable from the first screen and each is wired through an iOS API the reviewer can verify. A fresh PrivacyInfo.xcprivacy file matching the SDKs is a separate Guideline 5.1.2 requirement, but adds review-time credibility on AI apps.

    What to watch out for

    The biggest trap on 4.2 resubmissions is metadata that promises features the binary does not deliver. App Store Connect screenshots showing native features that are not actually wired up can trigger Guideline 2.3 alongside 4.2, and 2.3 rejections take longer to clear because they read as misleading rather than incomplete.

    A second trap is treating the system prompt or model fine-tuning as the unique value. From the reviewer's screen, two AI apps with different prompts and the same wrapper UI are the same app. The unique value has to be visible on the device, not in the API call.

    Apps that include any form of chat with another party (or with a model that can produce user-visible content) sit under Guideline 4.7 in parallel with 4.2. Section 4.7.1 requires a content filter, a way to report messages, a way to block, and timely responses to concerns. Missing those pieces can cause a parallel rejection alongside the 4.2 note.

    The OWASP MASVS PLATFORM and STORAGE chapters cover the platform integration patterns reviewers check during a 4.2 test (input validation, secure storage of session tokens, refusal of categories of content the app does not handle). None of this is App Review specific, but the same internal floor catches issues that would otherwise surface as separate rejections later in the review cycle.

    Key takeaways

    • Guideline 4.2 is enforced as a real-device test on a fresh install, not a code review; the first thirty seconds of use carry most of the weight.
    • Two to four native iOS features (voice, camera, share extension, widget, Siri, Live Activity, on-device CoreML) reachable from the first screen usually clears a wrapper rejection.
    • Guideline 4.2.6 can catch apps built with FlutterFlow, Bubble, or Rork unless the submission comes from the developer who owns the content, so the developer account matters as much as the build.
    • A custom system prompt or branded chat UI does not count as added value; the unique value has to come from an iOS API the browser cannot reach.
    • Some teams outsource pre-submission scanning to platforms like PTKD.com (https://ptkd.com) to surface 4.2-adjacent issues (4.2.6 template signals, missing Purpose Strings, missing 4.7 moderation surfaces) before the build reaches App Review.
    • #guideline-4-2
    • #minimum-functionality
    • #ai-wrapper
    • #app-store-rejection
    • #chatgpt-app
    • #claude-app
    • #ios-native-features

    Frequently asked questions

    Does Apple automatically reject all ChatGPT API wrapper apps?
    No. Apple rejects wrappers that look like the browser version of the same chat with a different colour scheme. A wrapper that adds two or three native iOS features tied to the device, names a specific use case in App Store Connect, and reaches at least one of those features from the first screen usually passes. The rule is about visible native value on the device, not about which model sits behind the API call.
    Is a custom system prompt or fine-tuned model enough to count as added value?
    No, not for Guideline 4.2 purposes. The reviewer sees the device, not the API call. Two AI apps with different system prompts but the same chat UI read as the same app to App Review. The unique value has to come from an iOS feature the browser cannot reach: a microphone, a camera, a share extension, a widget, a Live Activity, or an on-device model running through CoreML.
    Will adding push notifications alone fix a 4.2 rejection?
    Usually not. Push notifications by themselves read as a marketing channel, not a feature. They count when paired with a widget, a Live Activity, or a workflow the user sets up inside the app. A standalone push notification permission prompt on launch can actually hurt the review because it reads as a wrapper trying to look engaging without doing anything else on the device.
    Does Guideline 4.2.6 catch apps built with FlutterFlow or Rork?
    It can. Section 4.2.6 covers commercialised template and app-generation services. A developer using FlutterFlow, Bubble, or Rork under their own Apple Developer account is generally fine because the submission comes from the content provider. The trap is when the visual shell across many client submissions looks similar enough that App Review reads them as one template, in which case 4.2.6 fires regardless of who pressed submit.
    What does a Resolution Center reply look like if the native features are already shipped?
    Short, specific, and gesture-based. Name the guideline (4.2 Minimum Functionality), then point the reviewer to the exact screen and tap. For example: tap the microphone icon on the chat screen to start voice input, long-press a recent reply to share to other apps, and the medium widget on the home screen shows the latest reply. Avoid claims about value; describe what to tap.

    Keep reading

    Scan your app in minutes

    Upload an APK, AAB, or IPA. PTKD returns an OWASP-aligned report with copy-paste fixes.

    Try PTKD free