North Metric

    What are Failed Charges?

    Revenue at risk from payment failures — the sum of amounts from invoices that Stripe couldn't collect.

    SAAS METRIC · OPERATIONALBy Riyad Yahya
    IN SHORT

    In North Metric's 2026 benchmarks, the median Failed Charge Rate is 8.0% for SaaS companies under $10K MRR and 3.0% at $500K+ MRR. The top quartile reaches 5.0% and 2.0% at those stages, so compare your own figure with your MRR band, not one SaaS-wide average.

    BY RIYAD YAHYA, CO-FOUNDER & CTO · UPDATED NOV 14, 2026

    What are Failed Charges?

    Failed Charges is the sum of amounts from failed or open invoices in a period. It represents revenue at risk from payment failures — money you billed but Stripe couldn’t collect.

    Payment failures happen for many reasons: expired cards, insufficient funds, bank declines, fraud blocks, and network errors. Most are recoverable with retry logic and card update prompts. The ones that aren’t become involuntary churn — customers who didn’t choose to leave but lost access because their payment failed.

    Failed Charges is a leading indicator — a healthy level is below 1–2% of MRR. Rising failure amounts signal a growing gap between billed and collected revenue. Left unaddressed, that gap converts into customer churn and depresses Net Cash Flow.

    The Failed Charges formula

    Failed ChargesFailed Charges = Sum of amounts from failed/open invoices
    VARIABLEWHAT IT IS
    Failed Charge AmountSum of amounts from invoices with failed or open payment status in the period, excluding invoices that were later paid

    Failed Charge Rate

    The rate version normalizes failed charges as a percentage of total billings, making it comparable across company sizes:

    Failed Charge RateFailed Charge Rate = Failed Charge Amount ÷ (Paid Invoices + Failed Charge Amount) × 100
    See the customers behind this numberMoney at risk across your paying customers, money leaking to old prices and forever discounts, and the first 5 to act on.Get your free churn report →

    Worked example

    March 2026: Your company processes 200 invoices during the month.

    CategoryInvoicesAmount
    Paid invoices185$52,300
    Failed → later recovered8(excluded)
    Failed → still unpaid7$2,180
    Failed Charges$2,180
    ExampleFailed Charge Rate = $2,180 ÷ ($52,300 + $2,180) × 100 = 4.0%

    At a 4.0% failure rate, $2,180 in revenue is at risk this month. The 8 invoices that failed but were later recovered don’t count — they eventually produced cash. If those 7 remaining invoices aren’t recovered through dunning or card updates, they become involuntary churn.

    How it’s computed

    North Metric computes Failed Charges using a deduplication pipeline that separates genuine payment failures from retry noise:

    The deduplication pipeline

    VARIABLEWHAT IT IS
    Step 1Pull all charges from the period via Stripe's charges API
    Step 2Pull all paid invoices from the same period
    Step 3Map charges to their parent invoices — multiple charge attempts may reference the same invoice
    Step 4Exclude any invoice that appears in the paid invoices set — if it was eventually paid, it's not a failure
    Step 5Sum the remaining unique invoice amounts (÷ 100 from Stripe's cent denomination) → Failed Charge Amount
    Step 6Count the remaining unique invoices → Failed Charge Count

    This approach ensures that a single invoice that generated four retry attempts counts once, and invoices recovered by Stripe’s built-in retry or by dunning emails are excluded entirely.

    Common failure reasons

    Stripe categorizes failures by decline code. The most common in SaaS: card_declined (insufficient funds or generic bank decline), expired_card (card past its expiry date), authentication_required (3D Secure not completed), and processing_error (temporary network issues). Each has a different recovery strategy — card updates for expiry, retry for network errors, and customer outreach for bank declines.

    From failure to churn

    Stripe retries failed charges automatically: Stripe’s recommended default is 8 tries within 2 weeks (Stripe docs, checked Oct 18, 2026). While the retries run, the subscription is past_due. After the final attempt it is canceled, marked unpaid, left past_due or paused, depending on your settings. Once it ends, the failed charge becomes involuntary customer churn. Active dunning — email prompts to update payment methods — can recover 20–40% of failures before they reach cancellation.

    Failed Charges vs Churn

    Failed Charges and churn are sequential — failures today become churn tomorrow if unrecovered.

    Failed ChargesCustomer Churn
    What it measuresRevenue that was billed but not collectedCustomers lost — subscription fully canceled
    TimingLeading — appears first when payment methods expire or funds run outLagging — appears after all recovery attempts have been exhausted
    Reversible?Yes — recoverable through retries, card updates, and dunningPartially — reactivation possible but requires re-acquisition effort
    InterventionPayment recovery: automated retries, update-card emails, smart retry timingRetention: value demonstration, win-back campaigns, exit interviews
    DirectionLower is betterLower is better

    Common Failed Charges mistakes

    1. Counting retry attempts as separate failures. A single invoice that fails three times is one failure, not three. Without deduplication, your failure count and amount are inflated 2–4×. North Metric deduplicates by invoice to avoid this.
    2. Not excluding recovered invoices. An invoice that failed on attempt 1 but succeeded on attempt 3 is not a failure — it’s a successful collection with retry delay. Counting it inflates the failure rate and hides the actual at-risk amount.
    3. Treating all failures equally. An expired card is easily recovered with a card-update email. A fraud decline may require a new payment method entirely. A $29 failure and a $2,900 failure have very different urgency. Segment by decline code and amount to prioritize recovery efforts.
    4. Ignoring seasonality. Card expiry clusters around December–January (holiday reissues) and mid-year (corporate card renewals). A spike in Q1 failures may be calendar-driven, not a product or billing problem.
    5. Not connecting failures to churn. Every unrecovered failed charge eventually becomes involuntary churn. If your churn rate is rising and you haven’t checked failed charges, you may be solving the wrong problem — retention campaigns won’t help customers who simply have expired cards.
    See who’s likely to leaveSee money at risk across your customers and money leaking to old prices and forever discounts.Get your free churn report →

    Failed Charge Rate benchmarks

    Failed Charge Rate benchmarks are segmented by MRR tier. Lower is better — a rate below 3% means your payment infrastructure is healthy. Early-stage companies tend to have higher failure rates due to smaller customer bases where a few card expirations disproportionately affect the percentage.

    Stage · MRRBottom 25%MedianTop 25%
    Seed · < $10K12.0%8.0%5.0%
    Early · $10K – $50K10.0%7.0%4.0%
    Growth · $50K – $100K8.0%5.0%3.0%
    Scale · $100K – $500K7.0%4.0%2.0%
    Enterprise · $500K+5.0%3.0%2.0%
    Lower is better. Benchmarks by revenue stage, compiled from published SaaS studies and North Metric’s own analysis.
    What’s a good SaaS churn rate?See how your churn rate compares to SaaS companies at your stage.See churn benchmarks →
    After Stripe's retries endA personal note when Stripe's retries end, and hard declines and missing cards handled at once.Failed payment recovery →

    Frequently asked questions

    What is a good Failed Charge Rate for SaaS?

    Below 3% is healthy for most SaaS companies. The median across stages ranges from roughly 3% to 8% depending on company size — larger companies with enterprise customers tend to have lower failure rates. Above 10% signals a systemic payment infrastructure problem that needs immediate attention.

    What causes payment failures?

    The most common causes are expired cards, insufficient funds, bank declines, and incomplete 3D Secure authentication. Expired cards are the easiest to recover — a simple email prompting the customer to update their card resolves most cases. Insufficient funds and generic bank declines require smart retry timing (retry when the customer is likely to have funds, such as after payday).

    How does North Metric avoid double-counting retries?

    North Metric deduplicates by invoice, not by charge attempt. Multiple failed charge attempts against the same invoice count as one failure. If the invoice is eventually paid (through any retry or manual payment), it’s excluded from the failure count entirely. This gives you the true number of unresolved failures.

    Do failed charges affect MRR?

    Not directly. MRR measures the subscription amount, not whether it was successfully collected. A $100/month subscription with a failed charge still shows $100 in MRR until the subscription is canceled. Failed charges affect Net Cash Flow (less cash collected) and eventually churn if unrecovered.

    What percentage of failed charges can be recovered?

    With active dunning (automated retry + card-update emails), SaaS companies typically recover 20–40% of failed charges. Smart retry timing — retrying based on the failure code and historical success patterns rather than fixed intervals — can push recovery rates above 50%. The remaining failures usually convert to involuntary churn within 2–4 weeks.

    From metric to action

    North Metric follows up on failed payments once Stripe’s retries end, with a card-update note to the customers worth keeping. See failed payment recovery.

    Further reading

    Related metrics

    All metrics →
    SAAS METRIC

    Refunds

    Refunds = Sum of all refund amounts issued in the periodMoney returned after successful collection — the other side of revenue leakage.Open metric →
    SAAS METRIC

    Net cash flow

    Net Cash Flow = Total Cash Received − Total Refunds − Total FeesActual cash collected — failed charges reduce what should have been collected.Open metric →
    SAAS METRIC

    Customer churn rate

    Customer Churn Rate = ((Churned − Joined & Churned − Reactivated) ÷ Customers at Start) × 100Unrecovered failed charges eventually become involuntary churn.Open metric →
    See the customers behind your failed charges.Actions off until you turn them onGet your free churn report →