Total Customers for the selected period.
At a glance
The total customer count for your store. On WooCommerce this number carries a genuine ambiguity that surprises most merchants: WC’s native customer object counts registered accounts only, while a large share of Woo stores allow guest checkout, where the buyer leaves a billing email but never creates an account. Depending on how the count is defined, those guests may or may not be included. This card reads the WooCommerce customer endpoint and is explicit about which definition it uses so the number means what you think it means.
| What it counts | The total number of customers on the store. The key question is registered-only versus registered-plus-guest. WC’s wc/v3/customers object represents registered accounts; guest buyers (billing email on the order, no account) are a separate population, described generally below. |
| REST API endpoint | GET /wp-json/wc/v3/customers. This returns registered customer accounts. Guest customers are not returned by this endpoint; they exist only as billing details on wc/v3/orders, so any guest-inclusive count is derived by combining the two sources. |
| Registered vs guest | This is the central nuance on WooCommerce. A registered customer has a WP user account and appears in wc/v3/customers. A guest checked out without creating an account, leaving a billing email but no user record. Many WC stores enable guest checkout (WooCommerce → Settings → Accounts & Privacy), so guests can be a large fraction of real buyers. The card states which population it counts; do not assume “Total Customers” means every person who has ever bought. |
| Deduplication | A guest who later registers, or who checks out twice with the same email under different names, can be counted more than once unless deduplicated by email. WC does not automatically merge a guest’s prior orders into a new account. Treat the count as approximate at the edges for stores with heavy guest checkout. |
| Self-hosted vs managed-Woo | The endpoint and definitions are identical on self-hosted, WordPress.com, and managed-Woo (Woo.com Cloud, WP Engine, Pressable, Kinsta). The registered-versus-guest split is driven by the store’s own Accounts & Privacy settings, not the hosting environment. |
| Time window | RT (real-time, the current total) |
| Alert trigger | None |
| Roles | owner, marketing |
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 with guest checkout enabled. Snapshot taken 14 Jun 26.| Population | Source | Count |
|---|---|---|
| Registered customer accounts | wc/v3/customers | 8,420 |
| Registered accounts that have placed an order | derived | 6,150 |
| Registered accounts, never purchased | derived | 2,270 |
| Guest buyers (billing email, no account) | derived from wc/v3/orders | 4,900 |
| Distinct guest emails after dedup | derived | 4,310 |
| Total Customers (registered accounts) | this card | 8,420 |
| Total buyers (registered + distinct guests) | wider view | ~10,460 |
- The card’s “Total Customers” is 8,420, but ~13,000 people have actually bought from this store. That gap is the registered-versus-guest nuance in one line. The native WC customer count (8,420) includes 2,270 accounts that never purchased and excludes 4,310 distinct guests who did. Know which population your card reports before you compare it to anything.
- Registered does not mean buyer. 2,270 of the 8,420 accounts have never placed an order, perhaps they registered for a newsletter or abandoned at checkout. If you want “customers who have bought”, that is a different, smaller number than the raw account count.
- Guest emails need deduplication. 4,900 guest orders resolve to 4,310 distinct emails: some guests bought more than once, some used slightly different names. Without email dedup, a guest-inclusive count over-states unique buyers. WC does not merge guest history into a later-created account automatically.
- There is no alert on this card by design. Total Customers is a cumulative real-time figure that only grows; a threshold alert would be meaningless. Watch movement through New Customers and Customer Churn instead, which are the directional cards.
Sibling cards merchants should reference together
| Card | Why pair it with Total Customers |
|---|---|
| WC New Customers | The growth rate behind the total. Total Customers only grows; New Customers tells you how fast and whether it is slowing. |
| WC Customer Churn | The leak side. Total Customers alone hides how many of those accounts have stopped buying. |
| WC Avg Orders per Customer | Total Revenue context: are you growing the customer base or extracting more from the existing one? |
| WC Repeat Purchase Rate | What share of those customers come back. A large total with low repeat rate signals retention work, not acquisition. |
| WC Top Customers by LTV | The high-value tail of the customer base, where the revenue concentration usually sits. |
| WC High-Value Customers Unengaged on Email | The at-risk slice of your best customers, an actionable subset of the total. |
Reconciling against WooCommerce
Where to look in WordPress / WooCommerce Admin: WP Admin → WooCommerce → Customers (the WC Analytics customers report) is the closest first-party view. Note that the WC Analytics customers report can include guests that have placed orders, whereas WP Admin → Users filtered to the Customer role shows registered accounts only. The gap between those two screens is precisely the registered-versus-guest nuance this card calls out. Other WP Admin views that touch the same data:- WP Admin → Users (role: Customer): registered customer accounts only. Matches a registered-only definition.
- WP Admin → Analytics → Customers (WC 4.0+): can include guest buyers and offers filters for new versus returning, the richest first-party breakdown.
- WooCommerce → Orders: the source of guest billing emails; a manual unique-email count here approximates the guest population.
| Reason | Direction of divergence |
|---|---|
| Registered vs guest definition. If the card counts registered accounts and you compare it to WC Analytics → Customers (which can include guests), WP Admin reads higher. If you compare it to Users → Customer role, they should align. This is the most common source of confusion. | Either, depending on which WP Admin screen you compare to |
| Guest deduplication. A guest-inclusive count depends on deduplicating by email. WP Admin and the card may dedup differently (case sensitivity, trailing whitespace, plus-addressing), producing small gaps on stores with heavy guest checkout. | Marginal; larger for guest-heavy stores |
| Time-zone. Cumulative totals are timezone-insensitive, but if you are comparing a “new customers this period” slice, the card runs on UTC and WP Admin on the WP site timezone (Settings → General → Timezone). | Marginal, only at period boundaries |
| Self-hosted uptime / sync lag. Very recently registered customers may not appear until the next successful poll, so a freshly created account can show in WP Admin before the card. | Ours temporarily lower; self-resolves at next sync |
| Spam / deleted accounts. Accounts deleted in WP after they registered, or flagged as spam, are excluded here. A raw historical count in WP Admin may differ. | Ours lower than a raw historical tally |
Known limitations / merchant FAQs
Does this count guest customers or only registered accounts? This is the single most important question on WooCommerce, and the honest answer is that it depends on the definition the card uses. WC’s native customer object (wc/v3/customers) returns registered accounts only. Guest buyers leave a billing email on the order but never create an account, so they are a separate population entirely. The card states which population it counts. If your store relies on guest checkout, do not assume “Total Customers” means everyone who has ever bought from you.
Why is this number higher than the count of people who have actually bought?
Because registered accounts include people who created an account but never placed an order, newsletter sign-ups, abandoned-checkout registrations, or accounts created during a failed first purchase. The “customers who have bought” figure is a smaller subset. If you need buyers specifically, use the WC Analytics customers report filtered to those with at least one order.
Why does my WooCommerce → Customers report show a different number?
The WC Analytics customers report can include guest buyers, while WP Admin → Users filtered to the Customer role shows registered accounts only. If the card uses a registered-only definition, it will match Users but not Analytics. Decide which population you care about and compare against the matching screen.
Can the same person be counted twice?
Yes, on guest-heavy stores. A guest who buys, then later registers, creates two records that WooCommerce does not automatically merge. The same email used with two different names at checkout can also double-count unless deduplicated. Treat the count as approximate at the edges if your store leans on guest checkout.
Why is there no alert on this card?
Total Customers is a cumulative figure that only ever grows, so a fixed threshold would not carry meaning. The directional signals you want alerts on are growth and loss: watch New Customers for acquisition pace and Customer Churn for retention.
How fresh is the count?
It is a real-time figure refreshed on the standard sync, typically hourly on a self-hosted store. A customer who registered moments ago may take until the next poll to appear. Because the total is cumulative and large, a single new record will not change the headline materially.