RORK LABJP
PLAY — Google Play's target API level 36 requirement took effect yesterday, August 31. From today, new apps and updates must target Android 16VISIBILITY — Apps still on API 35 stay listed but disappear for users on newer Android versions. No error is raised; new installs simply fade, which makes the change easy to missEXTENSION — If you missed the deadline, an extension through November 1, 2026 can be requested in Play Console — best filed alongside a concrete migration planAPPLE — On the Apple side, the event lands September 9 and iOS 27 is reported to ship September 14. Testing generated apps on iOS 27 hardware before release week is time well spentEXPO — Expo released expo-paste-input on August 28, a native module that brings image, GIF, and sticker paste to React Native TextInputEAS — EAS Observe reached general availability on August 20, putting crash and performance monitoring on the same EAS platform as builds and updatesPLAY — Google Play's target API level 36 requirement took effect yesterday, August 31. From today, new apps and updates must target Android 16VISIBILITY — Apps still on API 35 stay listed but disappear for users on newer Android versions. No error is raised; new installs simply fade, which makes the change easy to missEXTENSION — If you missed the deadline, an extension through November 1, 2026 can be requested in Play Console — best filed alongside a concrete migration planAPPLE — On the Apple side, the event lands September 9 and iOS 27 is reported to ship September 14. Testing generated apps on iOS 27 hardware before release week is time well spentEXPO — Expo released expo-paste-input on August 28, a native module that brings image, GIF, and sticker paste to React Native TextInputEAS — EAS Observe reached general availability on August 20, putting crash and performance monitoring on the same EAS platform as builds and updates
Articles/App Dev
App Dev/2026-04-03Intermediate

Beta Testing Your Rork App with TestFlight: from Internal Testers to Public Launch

A practical walkthrough for shipping a Rork or Rork Max app to TestFlight, covering both the EAS Submit route and the Xcode Organizer route. Includes export compliance, internal (100) and external (10,000) tester limits, and the 90-day build expiry that quietly breaks long betas.

Rork548TestFlight13Beta Testing2App Store Connect12iOS Development13Rork Max232App Launch2

Premium Article

The problem that isn't an error

The first thing that tripped me up on TestFlight wasn't code signing or review. It was silence.

The upload finished with a green checkmark. The build showed up in App Store Connect with the right number next to it. And the testers I'd invited saw nothing at all.

The cause was a small yellow "Missing Compliance" label sitting next to the build number. Until you answer the export compliance question, that build goes to nobody. It isn't an error, so nothing tells you — you have to go looking.

That turns out to be the pattern with TestFlight. The hard parts aren't the steps that fail loudly; they're the ones that fail silently. This guide walks the full path from a Rork export to testers on real devices, and stops at each of those quiet traps along the way. The examples assume a Rork or Rork Max project, but the mechanics apply to any Expo-based app.

Internal vs. external: what actually changes

TestFlight has two distribution paths with very different characteristics. Picking the wrong one costs you days.

PropertyInternal testingExternal testing
Tester limit10010,000
Who qualifiesApp Store Connect users only (Account Holder, Admin, App Manager, Developer, or Marketing role)Anyone with an email address or the public link
Apple reviewNot requiredRequired for the first build of each version (typically 1–2 days)
Time to distributionMinutes after processing completesAfter review passes
Best forYour own device checks and fast iteration with collaboratorsReal-world conditions and pre-launch signal

You'll still find plenty of sources citing 25 internal testers. That number is out of date — the current limit is 100, with up to 30 devices per tester. At solo-developer scale you will never hit the ceiling, so the real question is simply whether you're willing to add collaborators as App Store Connect users.

My own rhythm: everything stays on internal testing while I'm iterating, and external testing happens once, when a release candidate is genuinely close. Because every version's first external build goes through review, pushing small fixes externally just stacks up waiting time.

Thank you for reading this far.

Continue Reading

What follows includes implementation code, benchmarks, and practical content we hope you'll find useful. This site runs without ads — server and development costs are supported entirely by members like you. If it's been helpful, we'd be truly grateful for your support.

WHAT YOU'LL LEARN
How to choose between the EAS Submit route and the Xcode Organizer route — Expo-based Rork projects can skip certificate work almost entirely
The one-line app.json fix for export compliance, the most common reason an uploaded build never reaches your testers
Correct tester limits (100 internal, 10,000 external) and how to plan a beta around TestFlight's 90-day build expiry
Secure payment via Stripe · Cancel anytime

Unlock This Article

Get full access to the rest of this article. Buy once, read anytime. This site is ad-free — your support goes directly toward keeping it running.

or
Unlock all articles with Membership →
Share

Thank You for Reading

Rork Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $15 for lifetime access
View Membership →

Related Articles

App Dev2026-07-07
Answering the New App Store Age Ratings — Field Notes From Updating Several Live Apps
Notes from re-answering the updated App Store age rating questions across live apps, covering the new 13+/16+/18+ tiers, the four new question categories, setting a higher minimum age, and what it means for apps you ship with Rork.
App Dev2026-07-02
Building a Place-Search Map in Rork Max with MapKit: MKLocalSearch, Pin Clustering, and Location Permissions
A hands-on guide to building a place-search map screen with Rork Max native Swift: nearby search with MKLocalSearch, when to switch from SwiftUI Map to MKMapView for pin clustering, and location permission design that survives App Review.
App Dev2026-06-27
Building Production-Ready iOS Apps with Rork
Rork generates Expo / React Native apps. A practical look at architecture, surfacing crashes in production, list performance, the eas submit workflow, and the iOS review pitfalls to clear — learned from real review round-trips.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →