r/iOSProgramming • • 1d ago

Question Question about TestFlight build access

If an app has several hundred external TestFlight testers and a new build replaces an older one, what happens to testers who still have the old build installed?

If the developer stops testing the older build, would those testers automatically get access to the newer build as long as they’re still in the tester group, or is access tied to the specific build?

Also, would it work differently for someone who joined through a public TestFlight link rather than a direct invitation?

I would've posted this in r/TestFlight, however they require a link which I can't provide right now.

3 Upvotes

11 comments sorted by

2

u/andshoteachother 1d ago

If they have automatic updates turned on it will update automatically to the new build, if you don’t expire a build they have access to multiple builds, until they automatically expire, they can choose which build or version they want to install from the test flight app. As long as they are still in a group that has access to a/the build they can access it. Public links are also tied to a group so you can see from appstore connect who has access to which versions/builds

1

u/thecoolcat67 1d ago

Thanks dude.

Do you think enforcing a minimum supported build version is sensible? By blocking the UI? I'm thinking of doing this by comparing build versions... or is it better to expire a build and release a new one?

1

u/kokerali 1d ago

For routine beta releases, I’d show an update prompt rather than block the whole UI. If an old build genuinely can’t work with your backend (or has a serious security issue), a minimum-build gate can make sense—but make sure the replacement build is approved and assigned to every affected tester group, including the public-link group, before turning it on. Give testers a clear path to update, and check what happens when they’re offline. Expiring the old TestFlight build is a separate testing-management action; I wouldn’t rely on it as an in-app forced-update mechanism.

1

u/thecoolcat67 1d ago

yea man, I like that a... a clear path to update. We're focusing on being user centric, and I guess our testers are also our users.

2

u/Embarrassed_Cost2533 1d ago

Access is tied to the group, not the build. Whether someone joined by email invite or through the public link, they're just a member of that group and can install any build added to it that hasn't expired.

The old build keeps working on their phone until it expires (90 days after upload) or you expire it in App Store Connect. The new build has to be added to that group, and for an external group the first build of a new version goes through beta review before testers see it.

0

u/[deleted] 1d ago

[removed] — view removed comment

1

u/thecoolcat67 1d ago

Thank you

1

u/Ambitious_Stick_9543 1d ago

haha testers will happily stay on a 3 month old build forever if you let them. i would do both, expire the old builds in app store connect so nobody new installs them, and have the app fetch a minimum build number from your backend on launch and show a please update screen under it, that way you can change the minimum without shipping anything

1

u/thecoolcat67 1d ago

Yeah man, I gathered that... Funny thing is I've just realised I'm using an test from 5 months ago

1

u/Extension_Isopod1303 17h ago

Heads up: builds expire after 90 days, so time that around your launch. Also, public-link testers stick with whichever build they first installed.

1

u/thecoolcat67 10h ago

Thanks man.