Setup and context: Why TestFlight Matters Before You Launch
You've built something great with Rork. The App Store feels like the natural next step—but going straight from prototype to public release without testing is a risk that's easy to avoid.
TestFlight is Apple's official beta distribution platform. It lets you put your app in real users' hands, on real devices, before it goes live. This guide walks through everything needed to get a Rork or Rork Max app onto TestFlight—from App Store Connect setup to provisioning profiles, tester management, and feedback collection.
TestFlight Fundamentals
TestFlight supports two types of beta distribution.
Internal testing is limited to members of your Apple Developer account with App Manager role or higher—up to 25 people. No Apple review is required, so distribution is immediate. This is ideal for your own testing and trusted collaborators.
External testing opens distribution to anyone with an email address—up to 10,000 testers. Apple requires a brief review (usually 1–2 days) before external distribution can begin. This is the right choice when you want feedback from a diverse range of users and devices.
Using both in sequence—internal first, external second—is the most reliable path to a polished launch.
Prerequisites
You'll need the following before starting.
An Apple Developer Program membership ($99/year), available at developer.apple.com. A Rork Max subscription for native iOS app generation. A Mac with the latest version of Xcode installed for certificate management and archiving.
Step 1: Set Up Your App in App Store Connect
Register a New App
Log into appstoreconnect.apple.com, navigate to "My Apps" → "+" → "New App," and fill in the following.
Platform: iOS (add iPadOS or macOS if needed). Name: your app's display name as it will appear in TestFlight and the App Store. Bundle ID: the identifier from your Rork Max export (e.g., com.yourname.appname). SKU: an internal tracking ID—any unique string works.
Finding Your Bundle ID in Rork Max
Your Bundle ID appears in the Info.plist file from your Rork Max export, under the CFBundleIdentifier key. You can also find it in Rork's project settings. Keep this handy—you'll use it throughout the process.
Step 2: Certificates and Provisioning Profiles
This is where most first-timers get stuck. Take it one step at a time.
Create a Distribution Certificate
Open Xcode, go to "Xcode" → "Settings..." → "Accounts," and add your Apple ID if it's not already there. Select your Apple ID and click "Manage Certificates..." If you don't see an "Apple Distribution" certificate, click "+" to create one.
Create an App Store Distribution Provisioning Profile
Go to developer.apple.com/account → "Certificates, Identifiers & Profiles" → "Profiles" → "+". Under Distribution, choose "App Store Connect." Select the App ID you registered, choose your Distribution certificate, name the profile, and click "Generate." Download the .mobileprovision file and double-click to register it in Xcode.
Step 3: Export from Rork Max
Rork Max can export your app as an Xcode project or directly as a .ipa file.
Recommended: Export as Xcode Project
In Rork Max, select "Export" → "Xcode Project" and save the output. Open the .xcodeproj file in Xcode. In the target's "Signing & Capabilities" tab, set your Team to the Apple Developer team associated with your account. Confirm that the Bundle Identifier matches what you registered in App Store Connect.
Create an Archive
In the device selector at the top, choose "Any iOS Device (arm64)"—no physical device connection needed. Go to "Product" → "Archive." After a few minutes, the Organizer window opens with your completed archive.
Step 4: Upload to App Store Connect
In Organizer, select your archive and click "Distribute App." Choose "App Store Connect" → "Next," then "Upload" → "Next." For signing, "Automatically manage signing" will select the right certificate and profile. Click "Upload" to begin—this typically takes 5–15 minutes.
Once uploaded, your build appears under the "Builds" section in App Store Connect, initially showing "Processing."
Step 5: Configure TestFlight
Internal Testing
In App Store Connect, go to your app → "TestFlight" tab. Under "Internal Groups," select "App Store Connect Users" or create a new group. Add your build and enable it. Use "Add Testers" to invite team members by Apple ID. Invited testers receive an email with a link to install the TestFlight app and join the beta.
External Testing (Requires Apple Review)
Under "External Groups," create a new group. Add your build and click "Submit for Review." Apple's review typically takes 1–2 business days. Once approved, you can invite external testers two ways: by email (individual invites) or via a shareable public link (supports up to 10,000 testers). The public link is easy to share via social media but gives you less control over who joins.
Step 6: Managing Beta Feedback
TestFlight's built-in feedback system is one of its best features. Testers can send screenshots and written feedback directly from the app.
Viewing Feedback
In App Store Connect → TestFlight → "Feedback," you'll find all tester-submitted reports with attached screenshots. Crash reports are automatically aggregated, showing exactly which screen and action triggered each crash.
Getting Better Feedback
Tell testers specifically what to test. "Walk through account creation, then try the main feature for 10 minutes" is far more useful than "try the app and let us know what you think." Guide testers to use the "Share Screenshot" feature inside the TestFlight app—this routes feedback directly to App Store Connect.
Step 7: Pushing Updates
When you fix bugs or add features, you can push new builds to TestFlight without restarting the process.
Fix the issue in Rork Max and re-export. Increment the build number in Xcode (1 → 2 → 3, and so on). Create a new Archive and upload to App Store Connect. Enable the new build in TestFlight—testers receive an automatic notification.
Keep the version number (e.g., 1.0) stable during beta testing. Only the build number needs to increment with each update.
Pre-Submission Checklist for App Store Launch
After your TestFlight beta, work through these checks before formal App Store submission.
Crash rate: Review crash reports in TestFlight. Aim for under 1% crash rate across your primary user flows.
Multi-device and multi-OS testing: Test on small (iPhone SE), standard, and large (iPhone Pro Max) screen sizes. Confirm functionality on iOS 16 through the latest version. If your app targets iPad, test there too.
Network conditions: Test on Wi-Fi, cellular, and simulated slow connections. Features like image loading, API calls, and sync should degrade gracefully, not crash.
App Store guideline compliance: Confirm your privacy policy URL is set in App Store Connect. Verify that permission requests (camera, microphone, location) include clear usage descriptions in Info.plist. Check that any in-app purchases, subscriptions, or social logins follow Apple's guidelines precisely.
Screenshots and metadata: App Store submission requires screenshots at specific sizes (6.9", 6.7" iPhone, and others). Prepare these before submission to avoid delays.
Common Problems and Fixes
"Build stuck on processing": Normal processing takes 30 minutes to an hour, occasionally longer. Check Apple's System Status page for any reported issues. If it's been over 24 hours, try re-uploading the archive.
"Tester can't find the app in TestFlight": Confirm the invited email matches the tester's Apple ID. Check that the invitation email hasn't expired (30-day limit). For external groups, confirm Apple's review is complete.
"Crashes aren't showing up in TestFlight feedback": Ask testers to check their iPhone settings: Privacy → Analytics & Improvements → Share with App Developers should be enabled.
Closing Thoughts: TestFlight Is Your Last Line of Defense
TestFlight isn't just a distribution mechanism—it's the closest you can get to a real App Store experience before you actually launch. Skipping this step means discovering bugs in front of real users, with public reviews on the line.
For Rork developers, the TestFlight process adds a layer of polish that can make the difference between a 2-star and a 5-star reception. The extra time invested in beta testing consistently pays off in a cleaner launch and a higher-quality user experience from day one.
Work through the steps in this guide at your own pace. If you get stuck, the Rork Discord community is an active place to find answers. We're looking forward to seeing your app on the App Store.