% of failed orders that the customer self-recovered (placed a successful order within 30D, joined by lowercased email then customerId). The baseline that defines what’s already being captured without intervention.
At a glance
The percentage of failed BigCommerce orders where the customer self-recovered (returned and placed a successful order within 30 days) without any merchant intervention. This is the baseline that defines what is already being captured for free, the floor your tooling investments must clear to be additive.
| What it counts | recovered_count ÷ failed_count × 100, where recovered_count = the subset of failed orders whose customer subsequently placed a paymentStatus = captured or paid order within 30 days, joined email-first (lowercased billingAddress.email) with customerId fallback. failed_count = orders with paymentStatus = declined OR status = Incomplete. |
| VAT / tax treatment | n/a, the rate is derived from order counts. The dollar twin lives at BC Size of the Prize where tax-inclusive total_inc_tax semantics apply. |
| Shipping | n/a, count metric. |
| Discounts | n/a, count metric. |
| Refunds | Excluded. paymentStatus = refunded succeeded first; doesn’t belong in the failure denominator. |
Incomplete orders | Included. Both Declined and Incomplete failures are summed into the denominator. Incomplete orders typically self-recover at a higher rate (45-60%) than Declined orders (15-30%) because Incomplete is usually a transient UX glitch the customer can retry past. |
| Cancelled orders | Excluded. Cancelled is a merchant void on a previously-captured order. |
| 30-day recovery window | Strict. A subsequent successful order from the same email more than 30 days after the failure does NOT count as a recovery. This window matches typical abandonment-recovery email cadence. Beyond 30 days the customer either recovered or they walked. |
| Email-first join semantics | We lowercase billingAddress.email then look for any subsequent successful order from the same email within 30 days. If the failure had no email (rare guest checkout), we fall back to customerId. We do NOT count cross-email same-customer recoveries (e.g. customer used Apple Pay private email on retry); those are real recoveries we miss, so this rate is a conservative floor. |
| Currency | Currency-agnostic, recovery is matched at the customer-identity layer, not the value layer. |
| Channels / sources | Not filtered. All channel_id values contribute. Marketplace channels (Amazon, Facebook) rarely produce failures so they barely affect the rate; the rate is mostly Stencil web behaviour. |
| Time window | 30D (the failure-detection period; the recovery-detection window is also 30 days but rolls per-failure) |
| Alert trigger | <35% (poor self-recovery), fires when the store’s organic recovery is below industry baseline, indicating either a checkout that’s so broken customers don’t try again, or a customer base with low brand attachment. |
| Sentiment key | recovery_rate |
| Roles | owner, marketing, finance |
Calculation
Calculated automatically from your BigCommerce data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US homewares brand on BigCommerce Enterprise. The 30-day window covers 14 Mar 26 to 12 Apr 26.| Failure cohort | Failed count | Recovered count | Organic recovery rate |
|---|---|---|---|
paymentStatus = declined | 71 | 28 | 39.4% |
status = Incomplete | 414 | 188 | 45.4% |
| Combined (this card) | 485 | 216 | 44.5% |
| Store profile | Typical organic recovery rate | What it tells you |
|---|---|---|
| Strong brand, repeat-customer base | 50-65% | Customers really want to buy; they retry on their own. |
| DTC mid-market (this example) | 40-50% | Healthy band. Customers retry but not unconditionally. |
| Acquisition-heavy store with new traffic | 25-40% | Lots of first-time buyers; if they fail once, half walk. |
| Low-brand commodity store | 15-30% | No emotional attachment; customers go to a competitor. |
| Below 15% | <15% | Either checkout is structurally broken or your customer base has zero loyalty. Investigate immediately. |
Incompleterecovery (45.4%) is higher thanDeclined(39.4%). This is consistent across most BC stores. Incomplete is often a transient glitch (network blip, 3DS timing); customers retry seconds later. Declined is structural (insufficient funds, fraud rule); retry alone doesn’t fix it.- A 44.5% combined rate is healthy. Industry baseline for BC Enterprise sits 40-55%. Below 35% triggers the alert because it usually means either (a) the checkout is so broken customers give up, or (b) the customer base has no brand attachment, both serious operational signals.
- The remaining 55.5% is your tooling addressable opportunity. Of 485 failures, 216 recovered organically; the other 269 are the Vortex Mind retargeting list. Recovery tooling typically captures 20-40% of THIS sub-population, so realistic incremental capture is ~80-110 additional orders/month, roughly $9-12k of incremental revenue.
- Trends matter more than the absolute number. A stable 44.5% is fine; a falling number (44.5% → 38% → 32% over three months) is an emergency. Falling organic recovery often precedes broader checkout-funnel deterioration by 4-8 weeks.
- Set your tooling capture-rate expectations based on the inverse of organic recovery. If 45% recover organically, your tooling is competing for the remaining 55%.
- Compare cohorts, declined vs incomplete recovery rates often differ by 10-20 points. Tooling investment should target the lower-recovering cohort first.
- Watch the trend, not the level, even a 60% organic recovery rate doesn’t mean “we don’t need tooling”, it means “tooling needs to clear a higher bar to be additive”. A drop in trend tells you something is breaking before the failure rate itself moves.
Sibling cards merchants should reference together
| Card | Why pair it with Organic Recovery Rate |
|---|---|
| BC Size of the Prize | The dollar twin. Multiplying failed_value × (1 − organic_recovery_rate) gives the addressable-opportunity dollars. |
| BC Failed Orders Count | The denominator. A 45% organic recovery on 485 failures means 269 unrecovered customers. |
| BC Decline Rate | The trend signal. Rising decline rate + falling recovery rate = compounding revenue loss. |
| BC Incomplete Rate | Same dynamic for the UX-side population. Incomplete recovery is usually higher; if it falls below decline recovery, your checkout has a structural problem. |
| BC Repeat Failure Customers | Customers who failed multiple times and never recovered, the 100%-tooling-needed cohort. |
| BC Top Unrecovered Today | The daily action list of the largest entries in the unrecovered cohort. |
| Customer Segments | Cross-reference: high-LTV customers usually have higher organic recovery than first-timers. The mix shifts the headline. |
| Repeat Rate | Stores with high repeat-customer rates show higher organic recovery, brand attachment drives both. |
Reconciling against the vendor’s own dashboard
Where to look in BigCommerce Control Panel: BigCommerce does not surface this metric natively. Organic recovery rate requires a customer-level join between failed orders and subsequent successful orders, BC’s reporting layer doesn’t compute it. To partially verify:- Filter Orders by status
DeclinedandIncompletefor the period; export the customer email list. - For each email in the export, manually query subsequent orders within 30 days, count successes.
- Compute
successful_followups ÷ total_failed_emails. The number should approximate this card to within ±5% (rate divergence comes mostly from email-normalisation differences).
- Customers → Customer groups: doesn’t track recovery flows.
- Analytics → Insights → Cohort report: tracks lifetime cohort retention, not failure-to-success conversion.
- Storefront → Abandoned carts: tracks pre-checkout abandonment recovery, different stage of the funnel.
- Channel Manager → Customer activity: per-channel customer events, doesn’t compute recovery rate.
| Reason | Direction |
|---|---|
Email-first join semantics. We lowercase, then fall back to customerId. Manual exports often use customerId only, missing logged-out shoppers who retry under the same email. | Vortex IQ HIGHER recovery rate (catches more recoveries) |
| 30-day strict window. Manual analysis often slides the window or uses 14 days; we use a strict 30. | Vortex IQ HIGHER if the manual window is shorter |
Email normalisation. We treat J.Smith@example.com and j.smith@example.com as the same customer; BC stores them case-sensitively. | Vortex IQ slightly HIGHER recovery rate |
| Cross-email recoveries excluded. Customer who failed under one email and succeeded under another (e.g. Apple Pay private email) doesn’t count as a recovery, so we under-count. | Vortex IQ LOWER bound on actual recovery |
| Time zone. UTC vs store. | Marginal |
| Card | Expected relationship | Notes |
|---|---|---|
stripe.stripe_decline_rate | Stripe-side decline rate is the lower bound on the failure denominator | Stripe sees only Stripe-routed failures. |
klaviyo.klaviyo_recovery_attributed_revenue | Klaviyo flow attribution lets you split organic recovery from email-driven recovery | This card is the organic baseline; Klaviyo’s attribution is the tooling-driven lift. The gap is your tooling’s true contribution. |