← App Prototypes
App Prototypes 2026-07-30

Exit Clause

Every subscription checked against the cancellation rules companies are supposed to follow — and a ready-to-send demand letter the moment one breaks them.

Exit Clause
Prototype

ExitClause

Every subscription checked against the cancellation rules companies are supposed to follow — and a ready-to-send demand letter the moment one breaks them.

Date: 2026-07-30 Form factor: web app Status: Prototype

What it is

ExitClause pulls in your subscriptions and runs each one through the same four-part test the FTC uses for negative-option billing: same-channel cancellation, no extra steps, no forced retention gauntlet, and immediate effect. Anything that fails gets a violation badge, a running refund estimate for the months you were charged after asking to cancel, and a one-click demand letter that cites the exact rule that was broken.

Who it serves

Anyone who has ever tried to cancel a gym, meal box, or beauty subscription online and been rerouted into a phone tree, a chat bot, or a mandatory retention call. ExitClause is built for the person who knows the charge is wrong but doesn't have the time or legal language to fight it — it does the citation lookup and the letter-writing for them.

Why it could be profitable

Freemium subscription: free to track and scan up to 3 subscriptions; a paid tier (~$6.99/mo or $39/yr) unlocks unlimited subscriptions, auto-generated demand letters, and refund-status tracking. A concierge add-on could take a success fee (e.g. 15%) on refunds it helps recover, mirroring existing chargeback-recovery services.

This is timely because enforcement is actively heating back up: the FTC's 2024 Click-to-Cancel Rule was vacated by the Eighth Circuit in 2025 for a procedural defect, but the agency never stopped pursuing the same conduct under Section 5 of the FTC Act and ROSCA — and in March 2026 it opened an Advance Notice of Proposed Rulemaking to revive the rule outright, with comments due April 13, 2026. Recent enforcement includes an $8.5M Care.com settlement and a record $2.5B Amazon settlement, both for making cancellation harder than sign-up. Consumers are still stuck untangling this on their own in the meantime.

Form factor & scope

Single-page web app. This prototype demonstrates the compliance-scoring engine, the dashboard, and demand-letter generation for a fixed sample portfolio of 15 subscriptions — no live billing or email integrations.

How to run it

  1. Open index.html in any modern browser.
  2. Browse the subscription list, click any card flagged with a violation to see which rule it broke and the estimated refund owed.
  3. Click "Generate demand letter" on a flagged subscription to see the auto-filled cancellation and refund request, citing ROSCA and the FTC rule.
  4. Use the "Show violations only" toggle and the sort control to triage the worst offenders first.

What's in this prototype

  • A dashboard summarizing total monthly spend, number of subscriptions with violations, and total estimated refund owed
  • A card grid of 15 sample subscriptions loaded from sample-data.json
  • A rules engine (in script.js) that checks each subscription against four click-to-cancel/ROSCA requirements: equal-channel cancellation, step parity, no forced retention gate, and immediate effect
  • A detail panel per subscription showing which specific rule(s) it violates, with citations
  • A demand-letter generator that fills in subscription name, cost, and overbilled months into a ROSCA/FTC-citing template
  • A "show violations only" filter and a sort-by-refund-owed control

Roadmap

  • Real inbox/bank-statement parsing to auto-detect subscriptions instead of manual entry
  • Direct e-sign and send integration (email or certified mail API) for generated letters
  • State-law overlay (e.g. California's Automatic Renewal Law, proposed NYC rule) stacked on top of the federal ROSCA baseline
  • Refund-status tracking with automated follow-up reminders at day 15/30/45
  • Concierge dispute filing with card issuers when a merchant ignores the demand letter

Sources

Requirements

ExitClause — Requirements

Goals

  • Let a user see, at a glance, which of their subscriptions violate click-to-cancel/ROSCA norms.
  • Quantify the dollar amount they're plausibly owed back.
  • Produce a legally-grounded cancellation/refund demand letter without the user having to know the citations themselves.
  • Make the worst offenders (highest refund owed, most overdue) obvious to triage first.

Primary user

A subscriber who has requested a cancellation (or wants to) and suspects the company is dragging its feet, charging through a forced retention process, or requiring a harder channel to cancel than to sign up. They are not a lawyer and don't want to become one — they want a checklist and a letter.

Functional requirements

  • FR1: Load subscription records from sample-data.json on page load.
  • FR2: Render each subscription as a card showing name, category, monthly cost, and status.
  • FR3: Evaluate each subscription against four rules: equal-channel cancellation, step parity, no forced retention gate, immediate effect.
  • FR4: Show a violation badge and count on any card that fails one or more rules.
  • FR5: Compute and display a portfolio-level summary: total monthly spend, number of subscriptions with violations, total estimated refund owed.
  • FR6: Estimate refund owed per subscription as monthsOverbilled × monthlyCost for subscriptions with a cancelRequestedDate set.
  • FR7: On card click, open a detail view listing exactly which rule(s) were broken, with their citation text.
  • FR8: Provide a "Generate demand letter" action that fills a letter template with the subscription's name, monthly cost, cancellation request date, months overbilled, and the specific rule citation(s).
  • FR9: Provide a toggle to show only subscriptions with violations.
  • FR10: Provide a sort control to order subscriptions by estimated refund owed (descending) or by monthly cost.
  • FR11: Persist no data outside the page — this is a demo, not a real account.
  • FR12: Work fully offline after initial load (no required network calls except the CDN-free static assets).

User stories

  • As a subscriber, I want to see all my subscriptions in one view with a violation flag, so that I don't have to remember which ones gave me trouble.
  • As a subscriber, I want to know exactly which rule a company broke, so that I feel confident escalating instead of guessing.
  • As a subscriber, I want a dollar estimate of what I'm owed, so that I know whether it's worth the fight.
  • As a subscriber, I want a ready-made letter with the right legal citation, so that I don't have to write it myself.
  • As a subscriber, I want to filter to only the subscriptions with problems, so that I can triage quickly.
  • As a subscriber, I want to sort by refund owed, so that I go after the biggest wins first.

Non-functional requirements

  • Runs entirely client-side; no backend, no API keys, no auth.
  • Readable on mobile and desktop via responsive CSS (flex/grid + media queries).
  • No real personal or financial data is collected or transmitted — sample data only.
  • Accessible color contrast for violation/compliant badges (not color-only signaling — icons/text labels included).

Out of scope (for the prototype)

  • Real bank/email integration to auto-detect subscriptions.
  • Actually sending letters (email/mail API integration).
  • State-law-specific overlays beyond the federal ROSCA/FTC baseline.
  • User accounts, authentication, or persistent storage.

Open questions

  • Should the concierge success-fee tier require binding arbitration agreements, or stay purely advisory (user sends the letter themselves)?
  • How would the product detect subscriptions automatically without requiring risky bank-read access (e.g. Plaid-style aggregation)?
  • Does a per-state law overlay (CA ARL, proposed NYC rule) change the letter template meaningfully enough to justify at launch, or is the federal ROSCA citation sufficient for v1?

More from App Prototypes