# App Signing Types

> Apple App signing types explained — Ad-Hoc, Enterprise (In-House), Development, and TestFlight: differences, use cases, and limitations.

Source: https://docs.applivery.com/en/app-distribution/platforms/apple/app-signing-types/  •  Last updated: 2026-03-31

**Key topics:** Ad-Hoc distribution, Enterprise (In-House) distribution, Development signing, TestFlight, Apple Developer Program, Apple, iOS, macOS, App Store, Applivery, Xcode, Apple Developer Enterprise Program

---

**TL;DR:** This guide explains the different Apple app signing types (Ad-Hoc, Enterprise, Development, TestFlight) and helps you choose the right one for your app distribution needs.

Every iOS and macOS app must be cryptographically signed before it can be installed on a Device. The signing type determines who can install the App, on how many Devices, how the App is distributed, and what certificates and provisioning profiles are required.

Applivery supports **Enterprise (In-House)**, **Ad-Hoc**, **Development**, and **TestFlight** signed Apps. Choosing the right signing type for your use case is one of the first decisions you need to make when setting up your distribution workflow.

:::warning
The details below are defined by Apple and may change at any time without notice. Always refer to [Apple's official documentation](https://developer.apple.com/programs/) for the most current information.
:::

* * *

## Signing types at a glance

| Profile type | Audience | Device limit | Build expiry | Certificate validity | Cost |
| --- | --- | --- | --- | --- | --- |
| **Ad-Hoc** | Specific registered Devices | 100 Devices | 1 year | 3 years | $99 / year |
| **Enterprise (In-House)** | Employees and collaborators of the organisation | Unlimited | 1 year | 3 years | $299 / year |
| **Development** | Registered developer Devices | 100 Devices | 1 year | 3 years | Free (included with Apple Developer Program) |
| **TestFlight** | Registered testers (internal or external) | 10,000 testers | 90 days per build | N/A | $99 / year |

* * *

## Ad-Hoc

Ad-Hoc distribution allows you to install a signed app on a specific set of pre-registered Devices. It is the most common signing type for distributing pre-release Builds to a controlled group of testers or stakeholders.

### How it works

Before signing the App, you collect the UDIDs of every Device that needs to install it and add them to a provisioning profile. The signed app can then only be installed on those specific Devices.

### Key characteristics

-   Requires knowing the UDID of every target device in advance.
    
-   Device registration and provisioning profile updates are needed every time you add a new Device.
    
-   Maximum of **100 Devices** per Apple Developer account (shared across Ad-Hoc and Development profiles).
    
-   Builds expire after **1 year** from the signing date.
    

### Best for

Small to medium internal test groups, QA teams, and client preview distributions where you have a defined and manageable list of target Devices.

* * *

## Enterprise (In-House)

The Apple Developer Enterprise Program allows organisations to sign and distribute Apps internally to an **unlimited number of Devices**, without going through the App Store or registering individual device UDIDs.

### How it works

Apps are signed with an Enterprise certificate and can be installed on any Device belonging to the organisation, as long as the Device trusts the organisation's certificate. Users typically install the App via a direct link or an internal distribution platform such as Applivery.

### Key characteristics

-   No device UDID registration required.
    
-   No device limit — suitable for large-scale internal rollouts.
    
-   Apple requires that Apps distributed this way are **only used by employees or official collaborators** of the organisation. Distribution to the general public is a violation of Apple's terms and may result in certificate revocation.
    
-   Builds expire after **1 year** from signing; the Enterprise certificate itself lasts **3 years**.
    
-   Requires [Apple Developer Enterprise Program](https://developer.apple.com/programs/enterprise/) membership, which is subject to Apple's approval process.
    

### Best for

Large organisations distributing proprietary internal Apps across their entire employee base without App Store involvement.

:::warning
Enterprise certificates carry significant responsibility. If Apple detects misuse — such as distributing Apps to users outside the organisation — they may revoke the certificate, immediately breaking all Apps signed with it across every Device where they are installed.
:::

* * *

## Development

The Development signing type is primarily intended for testing Apps during the development process on a small set of known Devices. It works similarly to Ad-Hoc in terms of device registration requirements.

### How it works

A Development provisioning profile is created containing the UDIDs of specific Devices. The signed app can only be installed on those registered Devices. Xcode is typically used to deploy directly, though the `.ipa` can also be distributed manually.

### Key characteristics

-   Requires registering each target device's UDID in the provisioning profile.
    
-   Maximum of **100 Devices** (shared with Ad-Hoc across the Apple Developer account).
    
-   For **macOS Apps**, Development signing is the only way to distribute an Apple Developer Program-signed app for testing outside the Mac App Store.
    
-   Free with any Apple Developer Program membership.
    

### Best for

Developer testing during the Build phase, or distributing macOS test Builds to a small internal team.

* * *

## TestFlight

TestFlight is Apple's official beta testing platform, integrated into the App Store ecosystem. Unlike the other signing types, TestFlight does not use a traditional provisioning profile — Apple manages distribution directly after you submit the Build.

### How it works

You upload your App to App Store Connect, where it goes through a review process before being made available to testers. Testers install the TestFlight app and access your Build through it — they cannot install the `.ipa` directly.

### Key characteristics

-   Requires an [Apple Developer Program](https://developer.apple.com/programs/) membership ($99/year).
    
-   Builds are available for **90 days** before expiring automatically.
    
-   Supports up to **10,000 external testers** via email invitation or a public link.
    
-   Internal testers (up to 100) can receive Builds immediately without App Store review.
    
-   External testers require a Beta App Review before they can access the Build.
    
-   Cannot be used to distribute an `.ipa` directly — testers must use the TestFlight app.
    

### Best for

Large-scale beta testing programmes, external user research, and pre-release validation before App Store submission.

* * *

## Choosing the right Signing Type

| Scenario | Recommended signing type |
| --- | --- |
| Distributing to a small QA team with known Devices | Ad-Hoc |
| Distributing an internal app to all employees at scale | Enterprise (In-House) |
| Testing a Build on your own development device | Development |
| Distributing macOS test Builds outside the Mac App Store | Development |
| Running a large-scale beta programme with external testers | TestFlight |
| Releasing an App to the general public | App Store _(not supported on Applivery)_ |

* * *

## A note on App Store Signing

App Store signing is a separate type not covered in the table above. It is exclusively for Apps intended for public distribution through the official Apple App Store and **cannot be used on Applivery**. MDM systems and enterprise distribution platforms like Applivery are designed to manage and deploy private or internal Apps — not Apps published on the App Store.

* * *

## Further Reading

-   [Apple Developer Program](https://developer.apple.com/programs/)
    
-   [Apple Developer Enterprise Program](https://developer.apple.com/programs/enterprise/)
    
-   [TestFlight overview](https://developer.apple.com/testflight/)
    
-   [Provisioning profiles — Apple documentation](https://developer.apple.com/documentation/xcode/distributing-your-app-to-registered-devices)
