Subscription Management
Let customers upgrade, downgrade, change billing cycles and cancel with exact prices, dates and consequences shown before they confirm.
8 states7 edge casesDesktop + Mobile
01The problem
Customers need to change what they pay for: more seats, a higher plan, annual billing, or cancellation. Each change has money, timing and access consequences that are easy to get wrong. Unclear proration and surprise charges create support tickets and chargebacks, and cancellation flows that hide the exit destroy trust.
02When to use
Use when
- Self-serve SaaS with multiple plans or seat-based pricing
- Customers switching between monthly and annual billing
- Any product where customers can cancel without talking to sales
Avoid when
- Enterprise contracts managed by account teams — show plan details read-only with a contact path.
- One-time purchases with no recurring billing.
- App-store billing, where the platform owns the change and cancellation flow.
03Recommended UX
Statecraft recommendation
Before any plan change is confirmed, show a summary with the exact amount charged today, the next billing date and amount, and what changes in access.
04Desktop behaviour
On desktop the plan comparison and the change summary can sit side by side, so customers see the consequence of each choice as they make it.
Desktop rules
- Mark the current plan clearly and disable its button (“Current plan”).
- Recalculate the summary as the customer changes plan, seats or billing cycle.
- Put the amount in the confirm button: “Pay $23.40 and upgrade”.
- Show scheduled changes on the billing page: “Changes to Starter on 1 Dec · Undo”.
05Mobile behaviour
On mobile, the comparison and summary become sequential steps. The summary must never scroll the confirm button away from the price.
Mobile rules
4 mobile rules are included in Pro.
Statecraft Pro
Unlock the full pattern
Get the complete interaction flow, states, edge cases, mobile rules and implementation prompt.
- Interaction flow · 6 steps
- 4 mobile rules
- 8 states
- 7 edge cases with recommendations
- 5 microcopy comparisons
- Accessibility notes
- Developer notes
- Claude Code / Codex implementation prompt
Edge cases covered in this pattern
- Downgrade below current usage
- Mid-cycle seat increase
- Monthly to annual switch
- Payment fails on upgrade
- Cancel during trial
- Undo a scheduled cancellation
- Price change for existing customers