How to Cancel a Stripe Subscription (Customer + Admin)
Knowing how to cancel a Stripe subscription cleanly matters whether you are a customer trying to stop being billed or a founder managing accounts on the admin side. The mechanics are simple, but the details, immediate versus end-of-period cancellation, refunds, and what it does to your revenue numbers, are where people get tripped up.
This guide covers both sides: how a customer cancels through the Stripe customer portal, how an admin cancels through the Dashboard or API, and how each cancellation should show up in your reporting so churn never surprises you.
How a Customer Cancels a Stripe Subscription
If you are a customer, you almost never cancel "on stripe.com" directly. You cancel through the billing settings of the business you subscribed to, which usually routes you to the Stripe customer portal, Stripe's hosted, self-serve billing page. The typical flow is:
- Log in to the product or service you are paying for and open its account, billing, or subscription settings.
- Click the option to manage billing or manage your plan, which opens the Stripe customer portal.
- Select your active subscription and choose Cancel plan.
- Confirm. The portal will tell you whether the cancellation is immediate or takes effect at the end of the current billing period.
If you cannot find a self-serve option, the business may not have the portal enabled. In that case, email their support and ask them to cancel it on their end. Never share your card details or password to cancel; cancellation never requires re-entering payment information.
How an Admin Cancels via the Stripe Dashboard
If you run the business, canceling a customer's subscription from the Stripe Dashboard takes a few clicks:
- Open the Stripe Dashboard and go to Customers, then find the customer.
- Open their profile and locate the active subscription in the Subscriptions section.
- Click the actions menu on the subscription and choose Cancel subscription.
- Choose whether to cancel immediately or at the end of the billing period, and whether to create a prorated refund or credit if you cancel mid-cycle.
That is it. The customer stops being billed according to the option you picked, and Stripe records a cancellation event.
Try StripeReport Free
Get your Stripe revenue every morning
Yesterday’s revenue, MRR, churn, and today’s renewals, delivered to your inbox and Slack daily. Plus a full revenue dashboard. 3-day free trial.
Start Your Free Trial →Canceling via the Stripe API
For programmatic control, for example canceling automatically when a user deletes their account, use the API. Deleting or updating the subscription object handles it: canceling immediately ends the subscription right away, while setting cancel_at_period_end to true lets the customer keep access until their paid period runs out and then stops the renewal. The second option is usually the friendlier default, because the customer already paid for the current period.
Pausing Instead of Canceling
Cancellation is not always the right answer. If a customer needs a break rather than an exit, Stripe lets you pause a subscription instead of ending it. A paused subscription stops collecting payment but keeps the record intact, so the customer can resume later without re-subscribing from scratch. For seasonal businesses or customers hitting a temporary budget freeze, offering a pause can save an account you would otherwise lose entirely. From a reporting standpoint, a pause is not churn yet, but it is a risk signal worth watching, because paused revenue that never resumes is churn in slow motion.
Refunds and Credits on Cancellation
When you cancel mid-cycle, you decide what happens to the money the customer already paid. You can leave it, since they keep access until the period ends, issue a full or prorated refund, or convert the unused portion into account credit. There is no universally correct choice: a prorated refund is customer-friendly and reduces disputes, while keeping the payment is standard for end-of-period cancellations where the customer retains access. Whatever your policy, apply it consistently so your refund line stays predictable, and remember that refunds reduce your recognized revenue for the period.
Immediate vs End-of-Period Cancellation
This is the most important decision when you cancel, and it affects both the customer experience and your revenue reporting:
- Immediate cancellation: Access ends now. You may owe a prorated refund for the unused portion, and the churn hits your numbers this period.
- End-of-period cancellation: The customer keeps access until the period they already paid for ends, then the subscription does not renew. No refund is needed, and the revenue is not truly lost until the period closes.
The distinction matters for metrics. A subscription set to cancel at period end is still active revenue today but is already committed churn. Treating it as fully churned too early understates your current MRR, and ignoring it overstates your forecast. Good reporting flags these pending cancellations separately.
Reducing Cancellations With a Better Flow
How you handle the cancellation moment shapes how many you actually lose. A few practices consistently save accounts without being pushy:
- Offer alternatives at the exit: A pause, a downgrade to a cheaper plan, or a short discount can convert a cancellation into retained revenue for customers who are wavering rather than certain.
- Ask a single reason question: A one-click cancellation survey tells you whether people leave over price, missing features, or a bad onboarding, which is the raw material for reducing future churn.
- Make it honest and easy: Dark patterns that hide the cancel button generate chargebacks and angry reviews. A clean, respectful flow keeps the door open for customers to return.
The goal is not to trap anyone, it is to make sure the customers who leave are the ones who truly meant to.
What Cancellation Does to Your Revenue
Every cancellation is churned MRR, and if you are not tracking it deliberately, a slow bleed of cancellations can erase your new-customer growth without you noticing until a bad month. The Stripe Dashboard records the events but does not roll them into a churn rate or show you the revenue impact, which is why you need dedicated Stripe churn rate tracking. And because a share of cancellations are involuntary, driven by failed payments rather than an actual decision to leave, pairing cancellation tracking with failed payment recovery recovers revenue you would otherwise lose for no good reason.
StripeReport connects to Stripe with a read-only API key and turns every cancellation into a clear churn signal. It separates pending end-of-period cancellations from immediate ones, calculates your churn rate and lost MRR, and sends a same-day email or Slack alert when a big account cancels, so you can reach out before they are gone for good. For the broader picture of what the Dashboard does and does not surface, see our guide to Stripe revenue reporting.
Try StripeReport Free
Get your Stripe revenue every morning
Yesterday’s revenue, MRR, churn, and today’s renewals, delivered to your inbox and Slack daily. Plus a full revenue dashboard. 3-day free trial.
Start Your Free Trial →Key Takeaways
- Customers cancel through the Stripe customer portal, reached from the billing settings of the business they pay, not stripe.com directly.
- Admins cancel from the Dashboard under the customer's subscription, or programmatically through the API.
- Choose immediate versus end-of-period carefully; it changes refunds and how the churn hits your current MRR.
- Every cancellation is churned MRR, so track it with a tool like StripeReport and pair it with failed-payment recovery.