An App Clip is a small, fast slice of your app that a user can run without installing the whole thing, launched from a link, a QR or App Clip code, NFC, or Maps to do one focused task. The lightweight, on-demand nature shapes its security model in useful ways: App Clips are deliberately limited in what they can access and how long they live, which reduces their privacy footprint. But an App Clip is still a real app binary that handles data and network calls, and it is launched by an invocation URL that, like any deep link, is untrusted input. Here is what App Clips are, their security model, and how to build them securely.
Short answer
An App Clip is a lightweight, on-demand part of an iOS app, under a strict size limit, that runs from an invocation, a link, App Clip code, NFC, or Maps, without a full install. Per Apple, App Clips have a constrained capability set: limited and often ephemeral data access, restricted background and notification abilities, and no access to certain sensitive APIs, and they cannot request tracking permission, which only the full app can do. That smaller footprint is a privacy benefit by design. But an App Clip is still a real app handling data and network requests, so apply the same security, secure storage, TLS, server-side enforcement, and treat the invocation URL as untrusted input. Collect minimal data, and let the App Clip's constraints keep its footprint small.
What you should know
- An App Clip is a lightweight, on-demand app: run without a full install.
- It is launched by an invocation: a link, App Clip code, NFC, or Maps.
- Its capabilities are constrained: limited data, background, and APIs.
- It cannot request tracking: only the full app can.
- It is still a real app: apply normal security and treat invocations as untrusted.
What is an App Clip, and what is its security model?
It is a small portion of your app, under a size limit, that the system can run on demand for a focused task. A user encounters an invocation, an App Clip code, an NFC tag, a link, or a Maps place, and the system runs the App Clip without a full install, letting them complete one thing, ordering, paying, signing up, quickly. The security and privacy model follows from that lightweight, transient design: App Clips are deliberately constrained, with limited access to data, often ephemeral rather than persistent, restricted background execution and notifications, and no access to certain sensitive capabilities the full app can use. They also cannot ask for tracking permission, that prompt is reserved for the full app if the user installs it. These constraints mean an App Clip has a smaller capability and data footprint than a full app by design, which is a privacy benefit. At the same time, an App Clip is a genuine app binary: it stores data, makes network requests, and handles input, so it is subject to the same security considerations as any app, just within a narrower scope.
What are the constraints and considerations?
A set of limits that shape its footprint, plus normal app concerns. The table summarizes.
| Aspect | Detail |
|---|---|
| Size limit | App Clips must stay under a strict size budget |
| Data access | Limited, often ephemeral rather than persistent |
| Background and notifications | Restricted compared with the full app |
| Tracking permission | Not available; only the full app can request it |
| Invocation URL | Untrusted input to validate, like a deep link |
The constraints are deliberate. The strict size limit keeps App Clips small and fast. Data access is limited and often ephemeral, so an App Clip is not meant to be a long-term store of user data, and background execution and notifications are restricted, so it cannot persist activity the way a full app can. The inability to request tracking permission means an App Clip cannot prompt for cross-app tracking; that is reserved for the full app. Alongside these limits are the ordinary considerations that still apply because an App Clip is a real app: it must store any data securely, communicate over TLS, validate input, and rely on server-side enforcement, and the invocation URL that launches it is untrusted input that should be parsed and validated like any deep link, since an attacker can craft an invocation. Sharing data with the full app, where used, goes through a shared container that should be handled with the same care as any shared storage.
How do you build App Clips securely?
Apply normal app security within the App Clip's smaller scope, and lean into its constraints. Treat the App Clip as the real app it is: store any data it keeps in secure storage rather than plaintext, use TLS for its network calls, and enforce anything security-critical on the server, since the App Clip is a client like any other. Validate the invocation URL as untrusted input, parsing its parameters carefully and never trusting them or treating the invocation as authentication for a sensitive action without proper verification. Collect the minimum data the focused task needs, which aligns with both the App Clip's ephemeral design and good privacy practice, and do not try to work around the constraints to gather more, the limits are a feature. If the App Clip shares data with your full app through a shared container, protect that data as you would any shared storage. Where an App Clip handles something sensitive like a payment, verify it server-side and follow the platform's intended flows. The principle is that an App Clip is a full app's security model in miniature: the same rules apply, the scope is just smaller, and its built-in constraints help keep its footprint minimal.
What to watch out for
The first trap is treating an App Clip as not a real app and skipping normal security, when it still stores data, makes network calls, and needs secure storage, TLS, and server-side enforcement. The second is trusting the invocation URL, which is untrusted input like any deep link and must be validated. The third is collecting more data than the focused task needs, against both the App Clip's design and privacy expectations. App Clip code is part of your app, so a pre-submission scan such as PTKD.com (https://ptkd.com), which reads the compiled build against OWASP MASVS, assesses its storage, networking, and data handling just as for the full app, while validating invocations and minimizing data are yours to implement.
What to take away
- An App Clip is a lightweight, on-demand part of an iOS app launched from an invocation, with constrained capabilities, limited and often ephemeral data, restricted background and notifications, and no tracking prompt.
- Those constraints give it a smaller footprint by design, a privacy benefit, but an App Clip is still a real app that stores data, makes network calls, and handles untrusted input.
- Build it securely with the same rules in a smaller scope: secure storage, TLS, server-side enforcement, validating the invocation URL as untrusted, and collecting minimal data.
- Use a pre-submission scan such as PTKD.com to assess the App Clip's storage, networking, and data handling, just as you would the full app.


