# What Is the Mix of Primary, Secondary, and Dismiss CTAs on Paywalls?

Source: Lazyweb Research
Author: Ali Abouelatta, Lazyweb Research
Published: 2026-07-07
Updated: July 2026
Sample size: n=2679
Category: [Paywall anatomy and plan-structure benchmarks](https://design.lazyweb.com/blog/category/paywall-anatomy-and-plan-structure-benchmarks)
Tags: paywall, monetization, mobile, ux-patterns, cancellation
HTML: https://design.lazyweb.com/blog/paywall-cta-role-mix-primary-secondary-dismiss
Markdown: https://design.lazyweb.com/blog/paywall-cta-role-mix-primary-secondary-dismiss.md

**Answer.** 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 |

## Methodology

Universe: 2,679 role-labeled paywall CTAs (of 4,406 extracted across 252 companies) in the mobile corpus, July 2026. Caveat: 39.2% of CTAs are role='unknown'; dismiss prevalence is a lower bound.

## Visual references

Real, in-market app screens tracked by Lazyweb Research:

- Ask Ai: https://zlfyzdmohcskkucuunmk.supabase.co/storage/v1/object/public/screenshots/uploaded_ask_ai/paywall/compare/2026-05-29/1780052659287_00_08_Paywall_paywall.png
- Facetune: https://zlfyzdmohcskkucuunmk.supabase.co/storage/v1/object/public/screenshots/uploaded_facetune/paywall/compare/2026-05-24/1779648476219_00_Facetune-20260524-184755-01.png
- Halide: https://zlfyzdmohcskkucuunmk.supabase.co/storage/v1/object/public/screenshots/uploaded_halide/paywall/compare/2026-05-29/1780052874470_00_04_Paywall_paywall-main.png
- Lyft: https://zlfyzdmohcskkucuunmk.supabase.co/storage/v1/object/public/screenshots/travel3_lyft/lazyscreenshots/2024_09_03_12-04-00_ADA9E91A.png

## 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.

## Related questions

- [How Many CTAs Does the Median Mobile Paywall Have?](https://design.lazyweb.com/blog/how-many-ctas-median-paywall-has)
- [What % of Paywalls Have a Visible Close or Restore Option?](https://design.lazyweb.com/blog/what-percent-of-paywalls-have-a-visible-close-button)
- [Do Paywalls Use Feature Checklists or Benefit Carousels?](https://design.lazyweb.com/blog/do-paywalls-use-feature-checklists-or-benefit-carousels)
- [How Many Plan Options Do Mobile Paywalls Show — 1, 2, or 3?](https://design.lazyweb.com/blog/how-many-plan-options-do-mobile-paywalls-show)
- [What % of Paywalls Pre-Select the Annual Plan?](https://design.lazyweb.com/blog/what-percent-of-paywalls-preselect-the-annual-plan)
- [What % of Paywalls Show Social Proof (Ratings, Member Counts)?](https://design.lazyweb.com/blog/what-percent-of-paywalls-show-social-proof)
- [What % of Paywalls Mention a Free Trial?](https://design.lazyweb.com/blog/what-percent-of-paywalls-mention-a-free-trial)
- [How Many CTAs Does the Median Paywall Have?](https://design.lazyweb.com/blog/how-many-ctas-does-the-median-paywall-have)

## Explore the evidence

- [Billing toggle experiment kit](https://design.lazyweb.com/blog/billing-toggle-experiment-kit?utm_source=lazyweb&utm_medium=research&utm_campaign=billing-toggle-kit)
- [Cal AI annual-plan and trial presentation](https://design.lazyweb.com/blog/cal-ai-paywall-annual-plan-and-trial)
- [Monthly versus annual billing toggles](https://design.lazyweb.com/blog/monthly-vs-annual-billing-toggle-pricing)
- [Billing cadence versus plan tiers](https://design.lazyweb.com/blog/annual-billing-toggle-vs-plan-tiers)
- [Cal AI trial-introduction screens](https://design.lazyweb.com/flow/cal-ai/onboarding-paywall)

## Continue your research

[Connect Lazyweb to your coding agent](https://www.lazyweb.com/mcp-install)
