> ## 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.

# Total Orders, Shopify

> Total Orders for Shopify stores. Tracked live in Vortex IQ Nerve Centre. How to read it, why it matters, and how to act on it.

**Metrics type:** [Supporting Metrics](/nerve-centre/overview#metrics-types-explained)  •  **Category:** [Ecommerce Platform](/nerve-centre/connectors#connectors-by-type)

## At a glance

> Count of orders placed in the period. The most fundamental volume metric, the denominator that AOV, refund rate, fulfillment rate, and most other ratios sit on top of.

|                               |                                                                                                                                                            |
| ----------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **What it counts**            | `COUNT(orders)`. Each `Order.id` row contributes one.                                                                                                      |
| **API endpoint**              | `Admin GraphQL. Order.id`.                                                                                                                                 |
| **VAT / tax treatment**       | Not applicable (count metric).                                                                                                                             |
| **Shipping**                  | Not applicable.                                                                                                                                            |
| **Discounts**                 | Not applicable.                                                                                                                                            |
| **Refunds**                   | NOT deducted. A fully-refunded order still counts. To exclude refunds, use a fulfilled-only filter.                                                        |
| **Cancelled / voided orders** | Included. To exclude, filter `cancelledAt IS NULL`. The default is intentional: cancelled orders represent demand that came in, even if it didn't convert. |
| **Currency**                  | Multi-currency safe (count, not money).                                                                                                                    |
| **Channels / sources**        | Not filtered. Online + POS + Buy Button + marketplace channels all contribute.                                                                             |
| **Test orders**               | Currently NOT filtered. Test orders inflate count slightly for stores that frequently test (rare in production).                                           |
| **Time window**               | `30D vsP` (default 30D vs the prior 30D)                                                                                                                   |
| **Alert trigger**             | `drop >15% vsP`, sustained order-count drop indicates revenue risk                                                                                         |
| **Roles**                     | owner, marketing, operations                                                                                                                               |

## Calculation

```
COUNT(_id)
  WHERE date BETWEEN [period_start, period_end]
```

## Worked example

A US apparel brand on Shopify Plus. Period: 12 Apr 26 to 11 May 26.

| Sales channel               | Order count | Share    |
| --------------------------- | ----------- | -------- |
| Online Store                | 5,120       | 74.9%    |
| Shop POS (4 retail outlets) | 1,240       | 18.1%    |
| Buy Button (3rd-party site) | 89          | 1.3%     |
| TikTok Shop                 | 391         | 5.7%     |
| **Total orders**            | **6,840**   | **100%** |

vs the prior 30D where total orders = 7,420. The card flags a **7.8% drop** (below the 15% trigger threshold but worth investigating).

Five things to notice:

1. **The drop is concentrated in Online Store.** 5,120 vs prior 5,820 (-12.0%). POS is roughly flat. The acquisition / paid-channel issue is online-specific.
2. **TikTok Shop is now 5.7%, growing.** 391 vs prior 240 (+62.9%). Newer channel scaling fast; even a slow Online Store can be offset by emerging channel growth.
3. **POS resilience is the diversification lesson.** Multi-channel brands cushion online ad-channel volatility with retail / POS revenue. Single-channel DTC brands face the full headwind when Meta / Google CAC spikes.
4. **Refund-corrected order count is similar but not identical.** \~5% of orders refund; fully-refunded orders still count here. To see "kept orders" only, filter `displayFinancialStatus != REFUNDED`.
5. **Cancellations included.** \~1% of orders cancel; cancelled orders still contribute. To see "shipped orders" only, filter `displayFulfillmentStatus = FULFILLED`.

## Sibling cards merchants should reference together

Order count is rarely useful alone. Pair with these:

| Card                                                                                              | Why pair it with Order Count | What the combination tells you                                                                               |
| ------------------------------------------------------------------------------------------------- | ---------------------------- | ------------------------------------------------------------------------------------------------------------ |
| [Total Revenue](/nerve-centre/kpi-cards/shopify/total-revenue)                                    | Revenue counterpart.         | Revenue ÷ orders = AOV.                                                                                      |
| [AOV](/nerve-centre/kpi-cards/shopify/average-order-value)                                        | Per-order spend.             | The product of order count × AOV = revenue; the decomposition.                                               |
| [Customer Count](/nerve-centre/kpi-cards/shopify/unique-customers)                                | Unique customers.            | Orders ÷ customers = orders per customer (frequency).                                                        |
| [Orders Over Time](/nerve-centre/kpi-cards/shopify/orders-over-time)                              | Timeseries.                  | Daily shape pinpoints when the count moved.                                                                  |
| [New Customers](/nerve-centre/kpi-cards/shopify/new-customers)                                    | New vs returning split.      | New-customer share × order count = new-acquisition orders.                                                   |
| [Cancellation Rate](/nerve-centre/kpi-cards/shopify/cancellation-rate)                            | Cancellation share.          | Order count includes cancellations; net orders = total × (1 - cancel rate).                                  |
| [`google_analytics.ga_purchases_trend`](/nerve-centre/kpi-cards/google-analytics/purchases-trend) | Cross-platform order count   | GA4 sees purchase events; Shopify sees orders; should match within 5-15% (ad blockers, cookie consent gaps). |
| [`bigcommerce.order_count`](/nerve-centre/kpi-cards/bigcommerce/total-orders)                     | Same definition.             | Documentation cross-link.                                                                                    |
| [`adobe_commerce.order_count`](/nerve-centre/kpi-cards/adobe-commerce/total-orders)               | Same definition.             | Documentation cross-link.                                                                                    |

## Reconciling against the vendor's own dashboard

**Where to look in Shopify Admin:**

[Analytics → Reports → "Orders over time"](https://admin.shopify.com/reports/orders_over_time) → set the date range. Headline count should align with this card to within sync-lag tolerance.

Other Shopify Admin views:

* **Analytics → Dashboards → Overview**: the headline orders tile.
* **Orders → All orders**: filter by date range, count manually.
* **Reports → Sales by channel**: per-channel order counts.

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

| Reason               | Direction              | Why                                                                              |
| -------------------- | ---------------------- | -------------------------------------------------------------------------------- |
| **Time zone**        | Boundary days          | Standard time-zone gap.                                                          |
| **Test orders**      | Ours slightly higher   | We do not yet filter `Order.test = true`.                                        |
| **Channel filter**   | Either                 | Shopify can be filtered by channel; this card aggregates.                        |
| **Cancelled orders** | Both include           | Both include; status-filtered views in Shopify Admin can show different numbers. |
| **Sync lag**         | Ours lower for "today" | 5 to 15 minute index lag.                                                        |

**Cross-connector reconciliation:**

| Card                                                                                              | Expected relationship                               | What causes legitimate divergence                                                          |
| ------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ------------------------------------------------------------------------------------------ |
| [`google_analytics.ga_purchases_trend`](/nerve-centre/kpi-cards/google-analytics/purchases-trend) | GA4 purchases ≈ Shopify orders × (1 - tracking-gap) | Ad blockers, cookie consent rejection, tag-fire failures cause GA4 to undercount by 5-25%. |

***

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

  The same definition lives on other commerce platforms. Cross-platform navigation only.

  * [`bigcommerce.order_count`](/nerve-centre/kpi-cards/bigcommerce/total-orders)
  * [`adobe_commerce.order_count`](/nerve-centre/kpi-cards/adobe-commerce/total-orders)
</details>

## Known limitations / merchant FAQs

**Why is my order count dropping?**
Three usual culprits, ranked by likelihood:

1. **Paid traffic pulled back.** A Meta or Google CPM spike, a campaign paused, or a creative burning out reduces the top-of-funnel and orders follow within 3 to 7 days. Cross-reference the corresponding ad-platform spend trend.
2. **Conversion-rate regression.** A site change (redesign, header swap, checkout app update) silently broke add-to-cart or checkout. Pair with [Conversion Rate](/nerve-centre/shopify/ecommerce_conversion_rate) and [Checkout Failure Rate](/nerve-centre/shopify/checkout_failure_rate). If sessions held but orders fell, the issue is on-site.
3. **Comparable-period seasonality.** A 30D vsP comparison straddling Black Friday, Boxing Day, or Easter produces drops that look alarming but are mechanical. Always check whether the prior period included a known peak before reacting.

**Are test orders included?**
Yes, currently. Shopify's `Order.test = true` flag is not yet filtered. For most production stores this contributes 0 to 5 orders a month and is invisible. If you actively use test orders for QA (a dev partner running cart-flow regression tests), you may see a spike in this card after a release week. The roadmap includes a `test = true` filter; in the meantime, exclude them in the Shopify Admin Orders list filter when reconciling.

**Does each Shopify Subscriptions billing count as a separate order?**
Yes. A monthly subscription customer paying for 12 months generates 12 distinct `Order.id` rows, each contributing 1 to this card. This is the same behaviour as Shopify Admin's *Orders over time* report. If you want to see the *first* order per customer, use [New Customers](/nerve-centre/kpi-cards/shopify/new-customers) which de-duplicates by `customer.id`.

**B2B / wholesale orders, do they count the same?**
Yes, every B2B Edition order with `purchasingEntity = PurchasingCompany` increments this card. If your store mixes DTC and B2B and you want to view them separately, filter the Shopify Admin Orders list by `tag:wholesale` (or whatever convention you use) to compare. The card itself does not yet split by purchasing-entity type.

**Why does my POS-heavy store show order counts so different from my online competitor's?**
POS orders count here. A retail-and-online brand running 4 till locations easily adds 1,000 to 3,000 orders a month from POS that pure-DTC brands don't have. Order count comparisons across business models are misleading without channel-splitting; use Shopify Admin's *Sales by channel* report for the channel-specific view.

**Refresh cadence?**
Webhook-driven, with a 5 to 15 minute index lag. The `today` figure on this card lags slightly behind the Shopify Admin Orders list; everything older than 30 minutes is fully caught up.

**The card jumped overnight, what should I check first?**
Open [Orders Over Time](/nerve-centre/kpi-cards/shopify/orders-over-time) and look at the daily shape. A single-day spike is usually a sale, a flash promotion, or a viral moment; a step-up in the baseline is a channel scaling (TikTok Shop, a new partner). A drop is the same exercise in reverse; the daily granularity tells you which day broke from trend.

***

### Tracked live in Vortex IQ Nerve Centre

*Total Orders* is one of hundreds of KPI pulses Vortex IQ tracks across Shopify 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.
