# Which Permission Comes First When Apps Need Several?

Source: Lazyweb Research
Published: 2026-07-07
Sample size: n=7
Tags: onboarding, mobile, ux-patterns, notifications
HTML: https://www.lazyweb.com/research/which-permission-comes-first-when-apps-need-several
Markdown: https://www.lazyweb.com/research/which-permission-comes-first-when-apps-need-several.md

**Answer.** Across only 7 same-flow permission pairs observed in Lazyweb Research's corpus, notification-before-ATT is the most common ordering (3 flows), followed by ATT-before-notification (2), location-before-ATT (1), and location-before-notification (1) [1]. The sample is too small for percentages — treat these as observed counts. The safest read: notifications tend to precede ATT, and location, when present, tends to come before both.

> In 7 observed same-flow permission pairs, notification-before-ATT led with 3 flows and ATT-before-notification with 2 — Lazyweb Research, July 2026.

## The finding

When a single tracked flow contains two different permission types, ordering by first appearance gives 7 pairs total [1]:

| Ordering | Flows |
|---|---|
| Notification → ATT | 3 |
| ATT → Notification | 2 |
| Location → ATT | 1 |
| Location → Notification | 1 |

That is the entire same-flow ordering evidence. It is enough to say notifications commonly precede ATT and location commonly precedes both, but not enough for any percentage claim [1].

## What the stacking examples show

Some apps do not sequence permissions at all. Zeus fired both the iOS notification dialog and the ATT dialog over the home screen on first landing, rather than spacing them across onboarding [2]. That 'stack everything on entry' pattern is a real alternative to ordered asks — and a risky one, since each prompt competes for the same first-session attention.

## How to apply it

If you must ask for several permissions, the observed lean is: location (if core to value) first, then notifications, then ATT last — consistent with ATT sitting later and in longer flows generally. Avoid stacking multiple system dialogs on the first screen; give each ask its own value context.

## Caveats

This rests on just 7 same-flow pairs — publish as observed counts with named examples, never as percentages [1]. Capture is incidental, so many multi-permission apps simply never had both prompts caught in one flow. Zeus is a single named stacking example, not a quantified pattern [2].

## The numbers

| Stat | Computed from |
| --- | --- |
| 7 ordered pairs: notif→ATT 3, ATT→notif 2, loc→ATT 1, loc→notif 1 | permission_ordering_pairs: per-flow MIN(rn) per permission type, self-joined, ordered by first_rn |
| Zeus: iOS notification dialog and ATT dialog both captured over the home screen | qualitative: zeus permission stacking |

## Methodology

Universe: 7 flows containing two different permission types (of 2,468 tracked flows), July 2026. Ordering via per-type first ROW_NUMBER; sample far below any percentage threshold, so reported as observed counts with named examples only.

## Sources & citations

- [1] Lazyweb Research analysis of 7 same-flow permission pairs (2,468 tracked flows), July 2026. Ordering by first ROW_NUMBER per permission type within a flow; counts only, no percentages.
- [2] Lazyweb Research qualitative review (807-app corpus), July 2026. Zeus named as a permission-stacking example (both dialogs on the home screen).

## Related questions

- [At Which Onboarding Step Do Apps Ask for Notifications?](https://www.lazyweb.com/research/onboarding-step-apps-ask-for-notifications)
- [When Do Apps Fire the ATT Prompt in Onboarding?](https://www.lazyweb.com/research/when-apps-fire-att-prompt-in-onboarding)
- [When Do Apps Ask for Location — Before or After Showing Value?](https://www.lazyweb.com/research/when-apps-ask-for-location-before-or-after-value)
