Skip to main content
Card class: StandardCategory: Ecommerce Platform
The lifetime count of registered customer accounts in the store, the size of the audience you own and can market to directly.

At a glance

Total Customers is the running tally of registered accounts in your OpenCart store. It is your owned-audience size: the people you can email, segment, and re-engage without paying for reach each time. It is a lifetime, cumulative figure, so it only ever climbs unless accounts are deleted. The number matters less day to day and more as a trend and a denominator: it is the base under repeat rate, the pool a newsletter draws from, and a rough gauge of how much of your demand you have converted into a lasting relationship rather than a one-off sale.
What it countsThe total number of registered customer accounts in the store, all time.
Customer sourceRegistered accounts live in oc_customer. The count is of account records, not orders.
Guest checkoutsGuest orders may not create an oc_customer record, so a high-guest store can have far more buyers than this count shows. Total Customers measures registered accounts, not everyone who has ever bought.
Approved / unapprovedOpenCart can require account approval (especially for B2B / customer groups). Whether unapproved accounts are included depends on configuration.
Customer groupsAccounts belong to customer groups (retail, wholesale, etc.); this card counts across all groups by default.
Currency / refundsNot applicable. This is an audience-size count, not a money metric.
Multi-storeCustomers carry a store_id reflecting where they registered; by default this card counts across every storefront.
Time windowRT (live, cumulative)
Alert triggerNone. This is a slow-moving cumulative base; watch growth via New Customers instead.
Rolesowner, marketing

Calculation

COUNT(customers)
  (all registered accounts, lifetime)

Worked example

A Canadian pet-supplies store on OpenCart 4.x, running both a retail storefront and a small wholesale customer group. The snapshot is taken on 20 Mar 26.
SegmentAccountsNotes
Retail customer group18,400The bulk of the base
Wholesale customer group (approved)220B2B accounts, approval required
Wholesale (pending approval)35Included or excluded by configuration
Guest buyers with no account~4,000 buyersNot counted, no oc_customer record
Total Customers (this card)18,620approved retail + wholesale
What’s interesting here:
  1. Roughly 4,000 buyers are invisible to this count. The store accepts guest checkout, so thousands of people have bought without creating an account. Total Customers measures the owned, addressable base, not everyone who has ever paid. The gap is itself a marketing opportunity: convert guests to accounts and the base grows.
  2. The wholesale approval queue affects the number. Thirty-five pending B2B accounts sit in limbo; whether they count depends on configuration. For a B2B-heavy store this matters, because an unapproved account cannot yet buy at wholesale prices but may still be a real prospect.
  3. It only goes up. Because it is cumulative, Total Customers rises monotonically unless accounts are deleted (for example a privacy-driven erasure). A sudden drop is almost always a deletion event or a data issue, not lost customers in the usual sense.
  4. The trend matters more than the level. 18,620 alone says little. Read against New Customers (30D) it tells you how fast the owned audience is compounding, which is the number marketing actually plans against.

Sibling cards merchants should reference together

CardWhy pair it with Total Customers
New Customers (30D)The growth rate of this base. Total is the level; New is the inflow that moves it.
Repeat Customer RateUses this base as its denominator; loyalty is a share of total customers.
Newsletter Opt-In RateHow much of your owned audience you can actually email; opt-in share of total.
High-Value Customers Unengaged on EmailFinds the valuable slice of the base at risk of going cold.
Order VolumeOrders per customer is a quick health ratio; pair the two to see engagement depth.
Average Order ValueCombined with the base, gives a rough lifetime-value sketch for planning.

Reconciling against OpenCart

Where to look in the OpenCart admin: Customers → Customers lists every registered account and shows the total at the foot of the list or in the filter results. You can filter by customer group, approval status, and store to break the total down. Reports → Customers → Customer Orders ties accounts to their order history, and System → Settings → multi-store context lets you see which storefront an account registered against. The base table is oc_customer. OpenCart admin views that look like the same number but aren’t:
  • Reports → Customers → Customer Orders lists customers who have ordered, not all registered accounts, so it undercounts accounts that registered but never bought.
  • A newsletter subscriber count is the opted-in subset, not the full account base.
  • The Dashboard shows no lifetime customer total; recent-activity tiles are not the cumulative count.
  • A guest order’s email in Sales → Orders represents a buyer but not necessarily an oc_customer account, so the orders list can imply more “customers” than this card counts.
Why our number may legitimately differ from the OpenCart admin:
ReasonDirection of divergence
Approval status. Whether unapproved accounts are included is configurable; an admin view filtered differently will not match.Either direction
Multi-store. Customers carry a store_id; this card counts across all storefronts unless filtered. A single-store admin view shows fewer.Card higher than a single-store view
Guest buyers. Guests without an oc_customer record are excluded here but may appear as “customers” in order-based reports.Card lower than an order-based customer count
Customer groups. The card counts all groups by default; an admin view filtered to one group shows fewer.Card higher than a single-group view
Account deletions. Privacy-driven erasures remove accounts; the card reflects deletions, so a historical admin export may be higher.Card lower after deletions
API / DB sync lag. An account created in the last minute may not yet be reflected.Self-resolves at next sync
Cross-connector note: if you run an email platform, its total contact count will usually exceed this number, because it also holds guest buyers (captured by email at checkout), newsletter-only signups, and imported lists. The email tool measures reachable contacts; this card measures registered store accounts. Both are useful, and the gap between them is a sign of how much of your audience lives outside formal accounts.

Known limitations / merchant FAQs

Does this include guest buyers? No. Guest checkouts may not create an oc_customer record, so people who bought without registering are not counted. Total Customers measures your registered, addressable account base, not everyone who has ever purchased. The gap between buyers and accounts is itself worth watching. Why is my email platform’s contact count higher? Email tools hold more than store accounts: guest buyers captured by email, newsletter-only signups, and imported lists. They measure reachable contacts; this card measures registered store accounts. A larger email list is normal and healthy. Should this number ever go down? Rarely. It is cumulative, so it climbs as accounts are created. A drop almost always means account deletions (often a privacy erasure request) or a data issue, not customers “leaving” in the ordinary sense. Do unapproved or pending accounts count? That depends on configuration. OpenCart can require approval for some customer groups (common in B2B). The card can be set to include or exclude unapproved accounts to match how you treat them operationally. Does it count across all my storefronts and customer groups? Yes by default. Customers carry a store_id and belong to a customer group; the card sums across all storefronts and all groups unless you filter. Filtered admin views will naturally show smaller totals. Why is there no alert on this card? The lifetime base moves slowly and almost always upward, so a threshold on the level would not be useful. Growth is the actionable signal, and that is what New Customers (30D) watches. A sudden fall here, by contrast, is worth investigating as a deletion or data event. How do I grow this number? Convert guests to registered accounts at or after checkout, offer an account benefit (order tracking, faster reorder, loyalty), and capture emails that can later become accounts. Watch the effect through New Customers and the opt-in rate rather than this slow cumulative total alone.

Tracked live in Vortex IQ Nerve Centre

Total Customers is one of hundreds of KPI pulses Vortex IQ tracks across OpenCart 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 or book a demo to see this metric running on your own data.