FlwKit

App Store compliance

Common App Store compliance questions about using FlwKit in your iOS app.

This guide covers common App Store compliance questions about using FlwKit for onboarding flows.

Remote onboarding configuration

Remotely configuring onboarding content is compliant with App Store Review Guidelines. This is standard practice across the iOS ecosystem — tools like Firebase Remote Config and Superwall use the same model, and neither has been actioned by Apple.

FlwKit fetches onboarding content from your dashboard at runtime. The onboarding functionality itself is fully present in the app binary and visible to App Review — only the content is fetched remotely, the same way any app fetches content from a server.

When submitting to App Store Connect, include a note in the Notes for Review field explaining that your app uses FlwKit for onboarding. See the template below for exact wording.

A/B testing onboarding flows

Running A/B tests on onboarding flows is compliant with App Store guidelines. Experimentation is a standard product development practice and widely used across App Store apps.

FlwKit assigns users to variants server-side and serves the corresponding onboarding content. The complete set of possible onboarding screens is present in the app binary at the time of review — only which variant a user sees differs.

Permission priming screens

Showing a custom screen before native iOS permission dialogs is compliant and explicitly supported by Apple's Human Interface Guidelines. Apple recommends providing context before requesting permissions so users understand why the permission is needed.

FlwKit includes pre-built permission priming blocks for notifications, location, camera, microphone, photos, health, and tracking. These screens appear before the native iOS dialog and do not bypass or replace it — the standard system dialog always fires when the user taps the permission button.

What to avoid

The following will cause App Review issues regardless of which SDK you use:

  • Deceptive content — false claims, fabricated social proof, or misleading descriptions of app functionality
  • Hidden features — onboarding flows that behave differently after App Review than during it
  • Dark patterns — confusing button layouts, misleading CTAs, or countdown timers designed to pressure users
  • Updating onboarding content post-review to introduce undisclosed functionality — the content shown at review should be representative of what users will see

Do not use FlwKit to show content that misrepresents your app's features or subscription terms. Deceptive onboarding is a violation of guideline 2.3 and a common reason for rejection and removal.

App Review notes template

Copy and paste this into the Notes for Review field in App Store Connect. Fill in the bracketed parts.

This app uses FlwKit (https://flwkit.com) for onboarding flow management.
FlwKit displays onboarding screens whose content is configured remotely
via the FlwKit dashboard — similar to how Firebase Remote Config works.
No code is downloaded or executed at runtime.

To view the onboarding: [describe how to reach it, e.g. "launch the app
fresh — onboarding appears on first launch" or "tap 'Reset onboarding'
in Settings after logging in with the test account above"].

The onboarding includes: [brief description, e.g. "a welcome screen,
three personalization questions, and a push notification permission request"].

Best practices

  1. Publish your flow before submitting. App Review sees whatever is live in your FlwKit dashboard at review time. Make sure a complete, representative flow is published.
  2. Include Notes for Review. Proactively explaining remote configuration prevents review questions from arising.
  3. Keep onboarding content accurate. Claims made during onboarding should match your app's actual capabilities and subscription terms.
  4. Make onboarding reachable. If the reviewer cannot trigger onboarding, provide a way to reset it in the test account instructions.

Resources

On this page