iOS Ad Hoc Distribution Explained: How It Works and Its Limits

What iOS ad hoc distribution is, how it differs from development, App Store and enterprise signing, how over-the-air install works, and the 100-device limit.

Last updated

Ad hoc distribution is Apple's way to install a test build on specific, registered devices without the App Store or TestFlight. In Xcode it's now called Release Testing.

The four ways to sign an iOS app

Profile typeWho can installReviewTypical use
DevelopmentRegistered devices of your teamNoneRunning from Xcode while you build
Ad hocUp to 100 registered devices per product familyNoneTest builds for clients, QA and colleagues
App StoreAnyone, through the App Store or TestFlightApp ReviewRelease and TestFlight betas
EnterpriseEmployees of your organisationNoneInternal company apps, with an Enterprise membership

How ad hoc works

  1. Register each device. Its UDID is added to your Apple Developer account.
  2. Create an ad hoc provisioning profile that lists those devices.
  3. Sign the app with your distribution certificate and that profile, and export an .ipa.
  4. Host the .ipa with a small manifest file, over HTTPS.
  5. Install over the air. A link like itms-services://?action=download-manifest&url=https://…/manifest.plist tells iOS to download and install the app.

If the iPhone isn't in the profile, iOS refuses to install it. That's why adding a tester usually means steps 1 to 5 again.

The limits

  • 100 devices per product family, per membership year. iPhones and iPads each have their own 100. How the device limit works.
  • Profiles expire after a year, and builds stop opening when the profile or certificate expires.
  • A paid membership is required. Free Apple accounts can't create ad hoc profiles.

Making ad hoc painless

The hard part is the loop of collecting UDIDs, updating the profile and rebuilding. BuildFerry automates it: the tester opens a link, you approve, and the iPhone is registered and the build re-signed in the cloud, with your own Apple account.

Questions

What is the difference between ad hoc and development builds?

Both install only on registered devices. Development builds are signed with a development certificate for debugging from Xcode. Ad hoc builds are signed with a distribution certificate, behave like the release app, and are meant for testers.

Is ad hoc distribution allowed by Apple?

Yes, for testing on devices you register. It is not meant for distributing an app to the public instead of the App Store.

Does an ad hoc build need App Review?

No. Ad hoc builds are never reviewed. Only App Store and external TestFlight builds go through App Review.

Send your first build