What Is the Mix of Primary, Secondary, and Dismiss CTAs on Paywalls?
Across 2,679 role-labeled paywall CTAs in Lazyweb's corpus, 70.4% are primary, 22.3% secondary, and 7.3% dismiss[1]. Primary actions dominate the labeled set roughly 3 to 1 over secondary, and explicit dismiss controls are rare at fewer than 200 CTAs[1]. Design one clear primary action, allow a lightweight secondary, and treat dismiss as an intentional, minority affordance.
Of 2,679 role-labeled paywall CTAs, 70.4% are primary, 22.3% secondary, and 7.3% dismiss (Lazyweb Research, July 2026).
The role breakdown
Across all 4,406 extracted paywall CTAs (252 companies, 874 canonicals), 2,679 carry a role label[1]. Of the labeled set:
| Role | CTAs | Share of labeled |
|---|---|---|
| Primary | 1,886 | 70.4% |
| Secondary | 597 | 22.3% |
| Dismiss | 196 | 7.3% |
The remaining 1,727 CTAs (39.2% of all 4,406) are unlabeled and excluded from these percentages[1].
How to apply it
The labeled mix says paywalls lead hard with a primary action (7 in 10 CTAs)[1], keep secondary actions like restore or view-all-plans to about 1 in 5, and use explicit dismiss controls sparingly (7.3%)[1]. If your paywall has multiple competing primary-weight buttons, you are diverging from the norm. Keep one primary CTA visually dominant and demote everything else to secondary or dismiss.
Caveats
Role percentages must use the 2,679 labeled rows, not all 4,406, because 39.2% of CTAs are role='unknown'[1]. That unlabeled share means dismiss prevalence in particular is a lower bound — some unknown CTAs are surely dismiss controls. Roles are model-assigned during extraction.
The numbers
| Stat | Computed from |
|---|---|
| labeled roles: primary 1,886 (70.4%), secondary 597 (22.3%), dismiss 196 (7.3%) of 2,679 labeled; 1,727 unknown of 4,406 total (39.2%); 252 companies, 874 canonicals | cta_role_mix: cta_role counts from paywall_ctas |
Sources & citations
- [1] Lazyweb Research analysis of 2,679 role-labeled paywall CTAs (252 companies, ~800 tracked apps), July 2026. Of 4,406 extracted CTAs, 2,679 carry a role label; 1,727 are role='unknown' and excluded from percentages. ↩
Source: Lazyweb Research — proprietary analysis of real, in-market app screens. Cite as Lazyweb Research, 2026-07-07.