Stripe Subscription Statuses Explained.
What each status means, what moves a subscription into it, and when to cut access.
Stripe subscriptions have eight statuses: trialing, active, incomplete, incomplete_expired, past_due, unpaid, canceled and paused. A failed renewal makes a subscription past_due; when Stripe's retries end, your Dashboard setting moves it to canceled or unpaid, leaves it past_due, or pauses it. Give access while trialing or active, a short grace period while past_due, and none once unpaid or canceled.
A Stripe subscription is always in one of eight statuses: trialing, active, incomplete, incomplete_expired, past_due, unpaid, canceled or paused. Most of them move on their own as payments succeed or fail. The two that need a decision from you are past_due and unpaid, because your Dashboard settings decide where a subscription goes when Stripe's retries end. This guide explains each status, what moves a subscription into it, and whether the customer should keep access.
All Stripe subscription statuses
| Status | What it means | Keep access? |
|---|---|---|
| trialing | In a free trial. Moves to active when the first payment succeeds. | Yes |
| active | In good standing. Doesn't always mean every past invoice is paid. | Yes |
| incomplete | The first payment failed or needs action. The customer has 23 hours to pay. | No, not yet |
| incomplete_expired | The first payment never succeeded within 23 hours. It doesn't bill the customer. | No |
| past_due | The latest invoice failed or wasn't attempted. Retries may still be running. | Your call; usually yes for a short grace period |
| unpaid | Retries ended and you chose to keep the subscription. Invoices are drafted but not charged. | No |
| canceled | Ended. Terminal; it can't be reactivated. | No |
| paused | A trial ended with no payment method and you set trials to pause. No invoices are created. | No |
Statuses for a new subscription
trialing
A subscription with a trial starts as trialing, and you can give the customer full access. It moves to active when the trial ends and the first payment succeeds. If the trial ends with no payment method and your trial settings say to pause, it becomes paused instead.
incomplete
When a subscription needs payment at creation, Stripe creates the first invoice and the subscription starts as incomplete. The customer has 23 hours to pay. If the card was declined, collect a new payment method; if the bank wants authentication, ask the customer to complete it. Smart Retries and custom retry rules don't retry this first payment, so your own checkout has to collect it.
incomplete_expired
If the first payment isn't made within 23 hours, the subscription becomes incomplete_expired and the invoice is voided. Nothing is billed. To let the customer in, create a new subscription. Stripe keeps this status so you can see who tried to subscribe and never activated.
Statuses after a failed renewal
past_due
When a renewal payment fails, the subscription becomes past_due. Stripe keeps creating invoices and retries payment under your retry settings, but past_due doesn't promise another attempt: hard declines and invoices with no payment method aren't retried until the customer adds a card. Paying the invoice that governs the status moves the subscription back to active.
unpaid
Stripe only sets unpaid if you chose it as the outcome after the last retry. The subscription stays in place and keeps generating invoices, which stay as drafts, but Stripe stops trying to charge. Stripe's own advice is to revoke access at this point, since payment was already attempted and retried while the subscription was past_due.
canceled
A canceled subscription is final. Automatic collection stops on its unpaid invoices and it can't be updated except for metadata and cancellation details. If the customer comes back, collect payment details again and create a new subscription.
paused
Paused means invoices are no longer created. In Stripe's status list it covers a trial that ended without a payment method when trials are set to pause, and Stripe's retry settings can also pause an eligible subscription after a renewal payment fails. Attaching a payment method and resuming brings it back.
The two settings that decide what happens
- What happens after the last retry. In Billing → Revenue recovery → Retries, choose to cancel the subscription, mark it unpaid, leave it past due, or pause it if eligible.
- Which invoices decide the status.In your subscription settings, "Most recent invoice" (the default) lets a subscription become active once its latest invoice is settled, even if older ones are open. "All invoices" keeps it past_due or unpaid until every applicable outstanding invoice is paid, voided or marked uncollectible.
When to cut access
- trialing, active: give access.
- past_due: keep access for a short grace period while retries run, and ask for a new card straight away if the decline was hard.
- unpaid, canceled, incomplete_expired, paused: remove access.
- incomplete: don't grant access until the first invoice is paid.
Watch the invoice.payment_failed and invoice.paidwebhooks and subscription status changes, and decide access from the subscription's status or the customer's active entitlements rather than from a single payment.
See money at risk in your own Stripe, and the first five customers to act on.
Where North Metric fits
Past_due subscriptions are where money quietly leaks. North Metric reads your Stripe account, lists every past_due subscription by the revenue at risk, and drafts a personal card-update note for hard declines on day 0 and for invoices still unpaid when Stripe's retries end. See how to recover failed payments in Stripe and failed payment recovery.
Sources
- Stripe docs: How subscriptions work, checked Nov 14, 2026.
- Stripe docs: Automate payment retries, checked Nov 14, 2026.
When retries end: the four outcomes compared
Stripe lets you choose what happens to a subscription once its retries end unpaid. Each choice trades something.
| Pros | Cons | |
|---|---|---|
| Cancel the subscription | Collection stops cleanly and the status matches reality; no invoices pile up. | The subscription is gone, so getting the customer back means a new subscription. |
| Mark it unpaid | Keeps the subscription, so it can resume once the customer pays. | Invoices are still drafted but not charged, and the subscription can't be updated except for metadata. |
| Leave it past_due | Nothing ends, and invoices keep being created. | New invoices keep failing, and the customer may keep access while not paying. |
| Pause it (if eligible) | Stops invoices without ending the subscription. | Only some subscriptions are eligible, and paused revenue doesn't come back until you resume it. |
What North Metric does here, and what it costs
North Metric reads your Stripe account and ranks paying customers by money at risk. The free churn report shows the risk; the plan drafts the moves and waits for your approval.
| Free churn report | Plan | |
|---|---|---|
| Price | $0 | $199 a month or $1,990 a year; $109 a month for 12 months under $30K MRR |
| Customers at risk | The first 5 to act on, each with a plain reason | Every paying customer ranked by money at risk, with a 0–100 risk score |
| Failed payments | Money at risk from failed payments | Card-update notes drafted once Stripe’s retries end |
| Cancellations | Top cancel reasons, in Stripe’s own reason names | Save emails and win-back notes drafted in your name |
| Usage drops | — | From PostHog or Stripe Meters, matched to how each customer pays |
| Changes in Stripe | None | Only the ones you approve, or rules you set with limits |
| Proof | Your last 12 months replayed: who would have been flagged | Kept MRR tied to invoices, measured against a comparison group |
| How to start | Connect Stripe; refreshed monthly by email | 14-day trial, no card |
Prices as listed on the pricing page.
Frequently asked questions
What does past_due mean in Stripe?
The latest invoice failed or wasn't attempted. Stripe keeps creating invoices and may retry under your retry settings. Paying the invoice that governs the status makes the subscription active again.
What does unpaid mean for a Stripe subscription?
Retries ended and your settings chose to keep the subscription rather than cancel it. Invoices are still created as drafts, but Stripe stops charging. Stripe recommends revoking access at this point.
What does incomplete_expired mean in Stripe?
The first payment failed and the customer didn't pay within 23 hours of the subscription being created. The invoice is voided and nothing is billed. Create a new subscription if the customer returns.
How do I handle past due subscriptions in Stripe?
Keep Smart Retries and Stripe's failed-payment email on, ask for a new card straight away on hard declines, and choose in the Dashboard whether subscriptions are canceled, marked unpaid, left past due or paused when retries end.