How is the cancel button styled versus the keep/subscribe path?
Across 78 cancel/keep/pause/resubscribe CTA buttons, 40 are styled as dismiss and 18 as secondary, versus only 7 primary [1]. So the cancel action is heavily de-emphasized relative to the primary keep/subscribe path. If you are optimizing for compliance rather than dark patterns, that skew is the thing to check first.
Of 78 cancel/keep CTAs, 40 dismiss and 18 secondary vs 7 primary styling, July 2026.
The role split
Cancel and retention actions skew heavily toward dismiss and secondary styling; only 7 of 78 buttons in this set are styled primary [1].
What it means
The visual hierarchy consistently pushes users toward the keep/subscribe path and mutes the cancel action into dismiss-weight styling [1]. This is the mechanism regulators scrutinize under click-to-cancel: if the cancel affordance is styled as an afterthought, the flow reads as obstructive even when a cancel option technically exists.
How to apply it
Audit your cancel screen's button hierarchy against this split [1]. A compliant flow keeps the actual cancel affordance clearly reachable rather than dismiss-weighted. The field's own experiments trend toward easing progression — DoorDash made a reason button more prominent to reduce abandonment on the cancel path, a completion-friendly direction [2]. Style the cancel action so a user can find and complete it without hunting.
The numbers
| Stat | Computed from |
|---|---|
| 78 cancel/keep CTAs: 40 dismiss (18 apps), 18 secondary (14 apps), 13 unknown, 7 primary (6 apps) | cancel_flow_cta_roles |
| DoorDash A/B made 'Select Reason' button solid to reduce abandonment | qualitative / doordash experiment |
Sources & citations
- [1] Lazyweb Research analysis of 78 cancel/keep/pause/resubscribe CTA buttons (paywall universe), July 2026. cta_role split for cancel-family buttons across distinct apps. ↩
- [2] Lazyweb Research analysis of DoorDash cancel-flow experiment, July 2026. A/B changing reason button from grayed-out to solid to ease progression. ↩
Source: Lazyweb Research — proprietary analysis of real, in-market app screens. Cite as Lazyweb Research, 2026-07-07.