Know what almost made them cancel.
One script tag. One question at the moment of churn. Every answer in your dashboard — in the customer's own words, while they still remember why.
That button runs the real widget — the same one your customers would see.
Three steps, about four minutes
- 1
Paste the snippet
One async script tag in your app. Under 8 KB, no dependencies, no cookies.
- 2
Tag your cancel button
Add data-cancelintel-trigger. We ask the question, then let the cancel carry on.
- 3
Read the answers
One feed with timestamps and the page each answer came from. Export CSV any time.
<script src="https://cancelintel.dietsoda.dev/embed/k/YOUR_KEY/widget.js" data-cancelintel async></script> <button data-cancelintel-trigger>Cancel subscription</button>
One plan. No free tier to outgrow.
Pro
$19 /month
Free for 7 days. No card to start.
- Up to 3 cancel surveys
- 2,000 answers a month
- CSV export of every answer
- Domain allowlist so nobody else can post answers
- No CancelIntel badge on your widget
Questions
- Will this slow my page down?
- No. The script is under 8 KB, loads async, and renders nothing until someone clicks cancel. It never blocks your page.
- Does it work with my stack?
- If your cancel flow is HTML, yes. React, Rails, Django, Webflow, plain HTML — one script tag and one attribute. The widget renders inside a shadow root, so your CSS and ours can't fight.
- What about GDPR?
- No cookies, no tracking pixels, no fingerprinting. We store the answer text, the page it came from, and the submitting IP for rate limiting. We never ask your customer for a name or an email.
- Does it stop my customer cancelling?
- Never. The question appears once, they can skip it, and the cancel then continues exactly as it would have. If our backend is down, the widget gets out of the way.