At a glance
The count of distinct Customer.id values across orders placed in the period. This is “how many distinct people bought from us in the last 30 days”, regardless of how many orders each placed.
Calculation
Worked example
A US multi-channel home goods brand on Shopify Plus. Period: 12 Apr 26 to 11 May 26.- Cross-platform dedup is real. 491 customers (5,203 - 4,712) bought across more than one channel, e.g. POS visit + online repeat, or Online + Buy Button. They count once. This is why summing per-channel customer counts overstates the unique base.
- POS guest checkouts are nearly half of POS orders. 614 of 1,240 POS orders had no customer record. The Shop POS app does not require account creation; staff often skip the email-capture step at busy moments. Those 614 transactions are invisible to retention marketing and to this card. To improve, train POS staff to ask for email at checkout (a 2-second prompt that adds 30 to 50% to addressable customer base).
- Online vs POS customer overlap. Of the 4,180 online customers and 612 POS customers, only ~210 are in both sets (~5%). The omnichannel narrative is often more aspirational than real; most stores see <10% overlap. Plan loyalty mechanics around bridging the gap (single account across channels, omni-CRM tools).
- TikTok Shop produces near-1:1 customer-to-order ratio. 391 orders, 340 customers. New shoppers, no repeat behaviour yet. Common for newly-launched marketplace channels. Don’t compare AOV or repeat-rate against your established channels until 6 to 9 months of data exists.
- Refunds and cancellations don’t reduce the count. A customer who placed and refunded one order still counts as 1 unique customer this period. To see only successful-purchase customers, use a fulfilled-only filter (manual today; on roadmap as a separate variant).
Sibling cards merchants should reference together
Customer count is rarely useful alone. Pair with these for context:Reconciling against the vendor’s own dashboard
Where to look in Shopify Admin: Analytics → Reports → “Customers over time” → set the date range to match this card. The unique-customer count for the period should match within reconciliation tolerances. Other Shopify Admin views that look similar but are not the same:- Analytics → Dashboards → Overview: shows total customer count (lifetime, not period). Different metric.
- Customers → All customers: shows the full lifetime customer base. Filter by Last order date in window to approximate this card.
- Reports → First-time vs returning: a split of this card’s number, useful for tracking New Customers.
Cross-connector reconciliation:
Known limitations / merchant FAQs
Why is my count flat while orders are rising? Repeat behaviour is growing. Each customer is buying more this period than last. Healthy if accompanied by stable Repeat Rate, risky if it means you are over-relying on a small core. Why is my count rising while orders are flat? Acquisition is up but each customer is buying less. Often a sign of new-customer surge from advertising or PR; the new cohort needs time to develop repeat behaviour. Why is my Shopify Admin number higher? Most often, time-zone or filter scope. Shopify Admin defaults to store time zone for the date range; Vortex IQ uses UTC for window edges. The Shopify report may also include channels that Vortex IQ filters out (or vice versa). For exact reconciliation, set the same date range and channel filter on both sides. Do guest checkouts count? No. A guest order withoutOrder.customer.id does not contribute to this card. Most POS orders fall in this bucket; train POS staff to capture email at checkout, or use a POS app that auto-creates customer records.
Multi-store, can I see total customers across stores?
Not yet within a single card. Each store is a separate integration. A cross-store rollup with email-based dedup is on the roadmap. Today, sum carefully and acknowledge cross-store overlap is invisible.
Multi-currency, any impact?
None on the count. Customer cardinality is currency-blind.
Shopify Plus vs basic?
No definitional difference. Plus stores typically run multiple stores under a Shopify Plus organization; each store has its own customer count. Markets (multi-region) settings within a single store do not affect this card.
Refresh cadence?
Webhooks fire within seconds; index lag 5 to 15 minutes. The 30-day rolling window updates each ingest cycle.
B2B vs DTC?
B2B customers (companies, locations within a company) count once each in this card. A B2B customer with 5 buyers across 2 locations counts as 1 customer (one parent record). For per-buyer-individual counts, use Shopify B2B’s separate Customer endpoint; that is on the roadmap as a B2B-specific card.
The card moved, what should I do?
- Cross-reference New Customers and Repeat Rate to attribute the move to acquisition or retention.
- If acquisition is up but customers flat, churn is hiding the growth. Pair with Churn Risk.
- If customers fell sharply, check whether ad spend changed; usually a paused channel explains it.
- If POS contributes a large share, audit POS staff email-capture habits; missed emails turn into invisible customers.