> ## Documentation Index
> Fetch the complete documentation index at: https://docs.vortexiq.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Revenue at Risk (live), WooCommerce

> Revenue at Risk (live). The live sum of money your WooCommerce store is currently in danger of losing across failed orders, at-risk listings, and abandoned checkouts. How to read it, why it matters, and how to act on it.

**Card class:** [Hero](/nerve-centre/overview#card-classes-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

> Sum of failed orders + suspended-listing potential + abandoned-checkout estimated value.

## At a glance

> A single live number that rolls up the money your store is currently at risk of losing. WooCommerce revenue leaks in three places at once: orders that hit `failed` at the gateway, products whose listings are suspended or at risk (out-of-stock with ad spend behind them, marketplace drift), and the estimated value of carts abandoned at checkout. This card sums those three components into one figure so the merchant has a single "how much is bleeding right now" pulse instead of three separate reads.

|                                |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What it counts**             | The live sum of three components: (1) the value of orders currently in `failed` status, (2) the potential revenue tied to at-risk or suspended listings, and (3) the estimated value of abandoned checkouts. Components are added arithmetically into one currency figure.                                                                                                                                                                                                                    |
| **REST API endpoint**          | Composite. Failed-order value is read from `GET /wp-json/wc/v3/orders` filtered to `status=failed`. At-risk listing value is derived from product and stock data (`wc/v3/products`) combined with any connected ad-spend or marketplace signals. Abandoned-checkout value is estimated from checkout / session data; WooCommerce does not store a first-party "abandoned cart" object out of the box, so this component depends on a cart-recovery plugin or estimation, described generally. |
| **How the value is computed**  | The three component values are summed. Failed-order value uses each failed order's `order.total`. At-risk listing value estimates lost sales from products that cannot sell. Abandoned-checkout value is an estimate, not a booked figure, and is the softest of the three. The card is a directional risk signal, not an accounting total.                                                                                                                                                   |
| **Status / scope treatment**   | Failed-order component counts `failed` only, not `pending`, `on-hold`, `cancelled`, or `refunded`. The card is live (real-time), so it reflects the current at-risk position, not a windowed historical total.                                                                                                                                                                                                                                                                                |
| **Self-hosted vs managed-Woo** | The composite works on self-hosted, WordPress.com, and managed-Woo (Woo.com Cloud, WP Engine, Pressable, Kinsta). The abandoned-checkout component is the most environment-sensitive: its quality depends on which cart-recovery or analytics plugin the store runs, since WC has no native abandoned-cart store.                                                                                                                                                                             |
| **Time window**                | `RT` (real-time, reflects the current at-risk position)                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| **Alert trigger**              | `>$0`, driven by `sentiment_key: wc_revenue_at_risk`                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| **Roles**                      | owner, finance                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

## Calculation

Calculated automatically from your WooCommerce 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 self-hosted WooCommerce store on WC 9.0 running the Stripe Gateway, a Google Ads integration, and a cart-recovery plugin. Snapshot taken live at 11:00 on 14 Jun 26.

| Component                               | Source                                              | Value at risk |
| --------------------------------------- | --------------------------------------------------- | ------------- |
| Failed orders (current `failed` status) | 38 orders x avg £74                                 | £2,812        |
| At-risk / suspended listings            | 12 out-of-stock SKUs with live ad spend behind them | £4,300        |
| Abandoned-checkout estimate             | 210 abandoned carts x est. £19 recoverable          | £3,990        |
| **Revenue at Risk (this card)**         |                                                     | **£11,102**   |

Four things to notice:

1. **The three components sum to £11,102.** No single card tells this story: £2,812 from gateway failures, £4,300 from products that cannot sell while ads still spend on them, and £3,990 of estimated cart recovery. The card's job is to put one number on the merchant's combined exposure right now.
2. **The failed-order slice is the most actionable.** £2,812 across 38 `failed` orders points at a gateway or payment-friction problem. Drill into [Failed Orders (Last 24h)](/nerve-centre/kpi-cards/woocommerce/failed-orders-24h) and [Checkout Error Rate (24h)](/nerve-centre/kpi-cards/woocommerce/checkout-error-rate-24h) to see whether a recent change caused it, and check [Plugin Updates (Last 24h)](/nerve-centre/kpi-cards/woocommerce/plugin-updates-last-24h) for a culprit.
3. **The at-risk listing slice is real lost margin plus wasted ad spend.** £4,300 of out-of-stock SKUs with live ads is a double loss: the sale you cannot make and the ad budget you are still spending. See [Ad Spend on OOS Products](/nerve-centre/kpi-cards/woocommerce/ad-spend-on-oos-products) to stop the bleed at source.
4. **The abandoned-checkout component is an estimate, not a booked number.** £3,990 is "recoverable if recovery emails convert", not money you have lost for certain. It is the softest of the three and depends on your cart-recovery plugin's data. Read the total as a directional risk signal, not an accounting figure, the alert fires at `>$0` precisely because any non-zero exposure is worth a look.

## Sibling cards merchants should reference together

| Card                                                                                                                    | Why pair it with Revenue at Risk (live)                                                                                      |
| ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| [WC Failed Orders (Last 24h)](/nerve-centre/kpi-cards/woocommerce/failed-orders-24h)                                    | The failed-order component, broken out. The fastest-acting slice of the total and usually the first to investigate.          |
| [WC Failed Order Rate](/nerve-centre/kpi-cards/woocommerce/failed-order-rate)                                           | Puts the failed-order slice in context as a percentage of all orders, so you can tell a spike from a steady baseline.        |
| [WC Ad Spend on OOS Products](/nerve-centre/kpi-cards/woocommerce/ad-spend-on-oos-products)                             | The double-loss inside the at-risk listing component: budget spent on products that cannot sell.                             |
| [WC Out of Stock Products](/nerve-centre/kpi-cards/woocommerce/out-of-stock-products)                                   | The inventory side of at-risk listings. Restocking these directly reduces the figure.                                        |
| [WC Pagespeed-Caused Cart Abandonment Loss](/nerve-centre/kpi-cards/woocommerce/pagespeed-caused-cart-abandonment-loss) | Isolates how much of the abandoned-checkout component is driven by site speed rather than price or intent.                   |
| [WC Checkout Error Rate (24h)](/nerve-centre/kpi-cards/woocommerce/checkout-error-rate-24h)                             | A rising checkout error rate feeds both the failed-order and abandoned-checkout components at once.                          |
| [WC Total Revenue](/nerve-centre/kpi-cards/woocommerce/total-revenue)                                                   | The denominator for sizing the risk. Revenue at Risk as a percentage of Total Revenue tells you how serious the exposure is. |

## Reconciling against WooCommerce

**Where to look in WooCommerce Admin:**

There is no single WP Admin screen that shows this composite, because the card combines three different leaks. Reconcile each component separately:

* **Failed orders**: [WP Admin → WooCommerce → Orders](/wp-admin/admin.php?page=wc-orders) filtered to `Failed`. Summing the totals of these orders gives the failed-order component.
* **At-risk listings**: [WP Admin → Products](/wp-admin/edit.php?post_type=product) filtered to out-of-stock, cross-referenced against your ad platform's active campaigns for the spend-behind-them figure.
* **Abandoned checkouts**: your cart-recovery plugin's own dashboard (CartFlows, Abandoned Cart Lite, FunnelKit). WooCommerce core does not store abandoned carts, so this number lives in the plugin, not WP Admin.

**Why our number may legitimately differ from WP Admin:**

| Reason                                                                                                                                                                                                                                          | Direction of divergence                            |
| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------- |
| **Abandoned-checkout component is an estimate**. WC has no native abandoned-cart object. The estimate depends on your recovery plugin's definition of "abandoned" and its recoverable-value assumption, which will rarely match a manual tally. | Variable; this is the softest component            |
| **Time-zone**. The failed-order component is read in UTC; WP Admin filters orders in the WP site timezone (*Settings → General → Timezone*). Orders near midnight can land on different sides of "today".                                       | Marginal at day boundaries                         |
| **Self-hosted uptime / sync lag**. A live card depends on fresh data. If the host was unreachable, the most recent failed orders or stock changes may not yet be reflected, so the figure can lag the true live position.                       | Ours temporarily lower; self-resolves at next sync |
| **At-risk listing valuation method**. Estimating lost sales from an out-of-stock SKU requires a sales-velocity assumption. A manual reconciliation using a different velocity assumption will land on a different number.                       | Variable; both are estimates                       |
| **HPOS vs legacy storage**. On High-Performance Order Storage the failed-order data lives in the orders table; a store mid-migration can have orders split across stores. Reconcile against the live WooCommerce → Orders screen.               | Either; investigate per-merchant                   |

<details>
  <summary><em>Same-metric documentation cross-reference (for agencies running multiple platforms)</em></summary>

  A composite "revenue at risk" view exists on other commerce platforms in the same spirit, summing failed payments, at-risk listings, and abandoned checkouts. This is **not a reconciliation**, your WooCommerce store does not have a parallel store on Shopify or BigCommerce to compare numbers against. These cross-links exist so agencies running multi-platform client books can navigate between equivalent metrics across the docs.

  * [`shopify.revenue_at_risk`](/nerve-centre/kpi-cards/shopify/revenue-at-risk-live)
  * [`bigcommerce.revenue_at_risk`](/nerve-centre/kpi-cards/bigcommerce/revenue-at-risk-live)
</details>

## Known limitations / merchant FAQs

**Is this an accounting figure I can put in a report?**
No. Revenue at Risk is a directional risk signal, not a booked total. The failed-order slice is concrete (real orders that failed), but the at-risk listing and abandoned-checkout slices are estimates of money you might lose, not money you have lost. Use it to prioritise where to act, not to reconcile your books.

**Why does the abandoned-checkout part change so much?**
WooCommerce does not store abandoned carts natively, so that component comes from your cart-recovery plugin and its definition of "abandoned" and "recoverable value". Different plugins use different windows and assumptions, so the number moves with the plugin's logic. If you do not run a cart-recovery plugin, this component may be absent or estimated more coarsely.

\*\*The card says $0, does that mean nothing is at risk?**
It means none of the three tracked components currently show exposure: no orders in `failed` status, no flagged at-risk listings, and no estimated abandoned-checkout value. Because the alert fires at `>$0\`, a genuine zero is the quiet state you want. Confirm the underlying components are actually reporting (for example that your cart-recovery plugin is connected) before treating a flat zero as all-clear.

**How is this different from just looking at failed orders?**
Failed orders are one of three components. A store can have low failed orders but high at-risk listing value (out-of-stock SKUs still drawing ad spend) or a large abandoned-checkout estimate. Revenue at Risk exists to combine all three so a single number reflects total live exposure rather than just the gateway slice.

**How current is the figure?**
It is a live (real-time) card, refreshed on the standard sync, typically hourly on a self-hosted store. The failed-order and stock components are as fresh as the last sync; the abandoned-checkout estimate is as fresh as your recovery plugin's data. On a self-hosted store, host downtime can briefly understate the live position until the next clean poll.

**Why did it jump after a plugin update?**
A plugin update that breaks checkout pushes orders into `failed` and increases abandoned checkouts at the same time, which inflates two components at once. If the figure spikes right after an update, check [Plugin Updates (Last 24h)](/nerve-centre/kpi-cards/woocommerce/plugin-updates-last-24h) and roll back the suspect plugin on staging.

***

### Tracked live in Vortex IQ Nerve Centre

*Revenue at Risk (live)* is one of hundreds of KPI pulses Vortex IQ tracks across WooCommerce and 70+ other ecommerce connectors. Nerve Centre runs the detection layer; Vortex Mind investigates the cause when something moves; Ask Viq lets you interrogate any number in plain English.

[Start for free](https://app.vortexiq.ai/login) or [book a demo](https://www.vortexiq.ai/contact-us) to see this metric running on your own data.
