CancelHub
Last updated May 20, 2026

How we score cancellation friction.

Short version: a real person walks through each public cancellation flow on a fresh browser session and counts a fixed list of observable signals. The 0–10 score is a weighted sum of those signals. Anyone can ask for a re-test.

What we measure

Six observable signals, all visible to any user going through the flow today. We're not measuring intent or motive — just what the flow does.

01

Steps below the fold

weight 0–1.5

How far the user has to scroll to find the cancel link from the account settings page. A link visible above the fold scores 0; a link that requires scrolling past upsells, banners, or unrelated cards scores up to 1.5.

02

Retention prompts

weight 0–2.5

The number of screens between clicking “cancel” and the actual cancellation taking effect. Includes “wait — get 2 months free,” “are you sure?”, downgrade offers, pause-instead-of-cancel suggestions, and chatbot interrogations. One prompt = 0.5; six prompts = 2.5.

03

Click count

weight 0–1.5

Total clicks from sign-in to confirmation email. We benchmark against Netflix (2 clicks) and score from there. Each click above 4 adds 0.25.

04

Confirmation-shaming language

weight 0–1.5

Whether the prominent button keeps you subscribed and the cancel option is rendered as a small grey link (or worse, hidden behind a help icon). We score visual hierarchy that pushes the user away from cancelling.

05

Phone-only path

weight 0–2.0

If the only documented way to cancel is calling a number or starting a live-chat session — i.e., no self-serve web flow — this adds 2.0 alone. Hold times over 10 minutes add another 0.5.

06

Fees disclosed at cancel

weight 0–1.0

Whether the cancellation flow reveals a fee (early-termination, restocking, etc.) that wasn't prominently shown at sign-up. Surprise fees disclosed only on the last screen score the full 1.0.

The score is a simple sum. Maximum possible: 10. Decimal places are rounded to the nearest whole number for the public index.

How we test

Each guide is hand-tested by a person on our team using a clean browser profile — no cookies, no extensions, no signed-in payment method. We sign up for the cheapest tier, wait at least 24 hours, and then walk through the cancellation flow exactly as the service documents it.

We record: the URL of each screen, the count of clicks, the text of every retention offer, and the exact wording on the final confirmation. Screenshots are kept internally so any score can be reproduced or audited on request.

We don't accept money, free accounts, or PR samples from any service we cover. The people doing the testing are paid by the project, not by the companies under review.

How often we re-test

Each guide is re-verified on a rolling schedule:

  • High-friction services (score 7–10) — re-tested every 8 weeks. These services change flows most often.
  • Moderate (4–6) — re-tested every 12 weeks.
  • Low-friction (0–3) — re-tested every 24 weeks. They rarely get worse without warning.
  • On request — anyone (including the company being scored) can email hello@cancelhub.app and we re-test within 7 business days, regardless of the rolling schedule.

Every entry on the public index shows the date it was last verified. If you're reading a score that was set six weeks ago, the actual flow may already have changed.

If you're a company we've scored

We try to be fair, but we test public flows, not internal ones — if your in-app flow is different from the website flow, or if you've changed the cancel path since our last verification, please tell us. Two paths:

  • Request a re-test. Email hello@cancelhub.app with the URL or steps you want us to verify. We re-test on a clean session within 7 business days and update the date stamp. If the flow has materially improved, the score moves the same day we finish testing.
  • Publish a response. If you disagree with how we framed something, send a written response (any length, plain English) and we'll publish it under the score with attribution. We don't edit company responses except for length.

We don't accept payment to remove or modify scores. We don't accept threats to do so either — we'll just publish those.

What this index is not

The friction index is our opinion about the observable difficulty of public cancellation flows, expressed as a number to make services comparable. It is not:

  • A legal determination. We don't claim any service violates any law.
  • A measure of product quality, customer service, or company morality.
  • A guarantee. Flows change — verify against the service's current pages before relying on our numbers.
  • A blanket recommendation to cancel. We're providing facts about exit cost, not telling you what to subscribe to.

Corrections

When we get something factually wrong (a wrong fee, a misnamed button, a flow we haven't updated in time), we correct it as soon as we can confirm. Corrections are logged with a date and a one-line note at the bottom of the affected guide so the change is visible.

If a correction materially changes a score, we update the score the same day, and we email the affected company (if they've given us a contact) within 24 hours.

Open source

The scoring weights above are public. The list of services and their current scores is public. The methodology is open to challenge. If you think we've mis-weighted something or missed a signal, write to hello@cancelhub.app with your proposal. We update the methodology page when we change it.