iOS distribution questions, answered.
Direct answers about what DistKit reads, what Apple still controls, what a manifest request means, and how device recovery works.
IPA packages and signing
What is DistKit?
DistKit is a web SaaS for developers and QA teams that analyzes already-signed IPA packages, keeps App and Release history, and creates controlled tester links. It does not sign apps or bypass Apple distribution rules.
Which IPA packages can DistKit analyze?
DistKit reads IPA packages that contain Info.plist and, when present, embedded.mobileprovision. Development, Ad Hoc, and authorized Enterprise packages may pass package-level checks; an App Store distribution profile cannot produce a direct web OTA path.
Does DistKit verify or re-sign the code signature?
No. DistKit parses package metadata and provisioning information; it does not perform a complete cryptographic signature-verification service and never re-signs the IPA. You remain responsible for certificates, provisioning profiles, entitlements, and export settings.
What happens to a package that is blocked for OTA distribution?
DistKit can keep the Release and show the package-level reason, such as an expired profile, Bundle ID mismatch, missing profile, or App Store distribution type. A blocked Release does not receive a usable OTA installation path until you upload a corrected IPA.
Devices and tester access
Can DistKit guarantee that an IPA will install on a specific iPhone?
No. DistKit reports package-level conditions, but it cannot confirm that a particular device is included in the provisioning profile or that iOS completed installation. Development and Ad Hoc builds require the tester UDID to be included in the profile.
How does the UDID recovery flow work?
The tester follows the DistKit device flow and explicitly installs a temporary configuration profile so the browser can return the device UDID. The Release owner then registers that UDID in Apple Developer, regenerates the provisioning profile, signs a new build, and uploads the replacement IPA.
Review the device-recovery workflowDoes UDID collection enroll the device in MDM?
No. The configuration profile is used only to return device details to the browser; it does not enroll the device in mobile-device management. DistKit device-profile sessions expire after about 15 minutes.
Do testers need a DistKit account?
No. A tester can open an enabled Release or share-link page without a DistKit account. The publisher can still require a link password or set an expiry and request limit.
Links, limits, and plans
What counts toward a manifest-request limit?
A request counts when DistKit authorizes and serves an iOS installation manifest. It is an install attempt signal, not proof that iOS downloaded the IPA, completed installation, or launched the app.
Where are IPA files stored?
Production IPA objects are stored privately in Cloudflare R2. A Worker checks the signed-in account or public share-link policy before it serves a manifest or IPA object.
Review DistKit security controlsWhich plans does DistKit list?
Free, Pro, and Business are the current plan tiers. The pricing page shows their current USD price, App, Release, monthly manifest-request, and storage limits. Paid checkout availability is confirmed in Billing before purchase.
Compare current plan limitsWhen should I use TestFlight instead?
Use TestFlight when you need Apple-managed tester groups, feedback, and App Store Connect beta distribution for up to 10,000 external testers. DistKit is designed for controlled distribution of packages you already signed, including recurring QA, client review, and authorized internal workflows.
Compare DistKit and TestFlightPrimary Apple references.
Device registration and provisioning rules can change. Use Apple’s current documentation as the authoritative source.
Ready to inspect a package?
Create a workspace and upload an already-signed IPA. DistKit will show the report before you create a tester link.