Subscription includes
Support
Customer Analytics for WooCommerce shows you who your best customers are, which ones are slipping away, and what each customer is worth, all from the order data already in your store.
While WooCommerce provides basic sales reports, decisions about retention, marketing spend, and outreach need deeper customer metrics. Customer Analytics for WooCommerce adds dedicated reports for RFM customer segments, top customers with predicted next-order dates, customer lifetime value, active customer value, cohort retention, repeat purchase rate, the order sequence customers follow and the time between their orders, churn rate, acquisition sources, and customer value by country. It also adds one-click coupon creation for a chosen segment, a WordPress user role filter for B2B and wholesale stores, and a product category filter that answers what the buyers of any part of your catalogue are worth to your whole store, all within the native WooCommerce Admin interface.
Unlike traffic analytics tools, Customer Analytics for WooCommerce reveals customer behavior patterns through metrics built for retention analysis. It extends your existing WooCommerce Analytics dashboard without requiring external services or third-party data sharing.
Who are my best customers, and who is slipping away?
Group your customers into actionable segments using RFM analysis (Recency, Frequency, Monetary), then act on them directly. Every customer is scored 1–5 on how recently they ordered, how often they buy, and how much they spend, and mapped to one of six named segments, so you can see who your best customers are and who needs winning back.
Key Features:
Example: Create a win-back coupon for your “At Risk” segment in one click to re-engage previously valuable customers before they churn.
Which of my customers are worth the most, and which are overdue for their next order?
See who your most valuable customers are, ever or as of any date in the past. The report ranks customers by lifetime value in a leaderboard, shows how lifetime spend is distributed across your customer base in an LTV histogram, and predicts each customer’s next order from their own buying rhythm.
Key Features:
Example: Sort the leaderboard by “Overdue” to find high-value customers who are past their usual buying rhythm, the exact list to reach out to this week.
What is an average customer worth over their lifetime?
Track average revenue per customer across your entire store, segmented by time periods and customer behavior patterns. The customer lifetime value WooCommerce report helps you understand the long-term profitability of different customer segments.
Key Features:
Example: If your average customer lifetime value is $200 and acquisition costs $50, that is a 4x return, the kind of context you need before scaling marketing spend.
How many of my customers are still active, and what are they worth on average?
Track the size and value of your active customer base over time. At each interval the report measures the customers who were active within your churn period: how many there are, and the average value per active customer. The trend therefore reflects your currently-engaged base instead of a flat all-time average.
Key Features:
Example: Use trend data to correlate changes in customer value with marketing campaigns, product launches, or seasonal patterns.
What share of each month’s new customers keeps buying in later months?
See how well you retain the customers you acquire, month by month. Each row of the cohort retention heatmap is a monthly cohort (the customers whose first order fell in that month), and each cell shows the percentage of that cohort who placed at least one order N months later, shaded so retention patterns stand out at a glance.
Key Features:
Example: If retention collapses after M+1 across every cohort, a post-purchase email at the 30-day mark targets exactly where customers are slipping away, and the following cohorts’ rows show whether it worked.
What percentage of my customers order more than once in the same period?
Track the percentage of customers who return for additional purchases across customizable time periods. The repeat purchase rate WooCommerce report helps identify whether customer retention efforts are working.
Key Features:
Example: A rising repeat purchase rate indicates improving customer retention without additional acquisition costs.
How many first-time buyers come back, how far do they go, and how long does each step take?
Follow the customers you acquired in a date range forward to today and see where they fall away. The report shows what share of them place a second order, a third and a fourth, how long each of those steps takes, and what the order at each position is worth, so you can tell a store that struggles to win the second order from one that wins it easily and then loses people at the fourth.
Key Features:
Example: If only 30% place a second order but 55% of those go on to a third, your money is better spent on winning the second order than on loyalty perks.
What percentage of my active customers stop buying during a period?
Monitor customer attrition with configurable detection periods tailored to your business cycle. The WooCommerce churn rate report measures the percentage of active customers lost in each period (customers lost during a period divided by customers active at its start), so you can see when customers stop purchasing and act on that data.
Churn Detection Periods:
Example: Tracking churn rate over time lets you measure whether retention campaigns are reducing customer attrition.
Which marketing channels bring customers who come back?
See which marketing channels bring customers who come back, not just customers who convert once. Every customer is attributed to the channel of their first order, using WooCommerce’s built-in order attribution data, and the report then measures what those customers went on to be worth.
Key Features:
Example: The channel that acquires the most customers is often not the one that acquires the most valuable ones. Comparing lifetime value per source tells you which campaign deserves the next increase in budget.
Which countries bring the most sales, and which produce customers who come back?
Treat each market as a group of customers, not just a pile of orders. Alongside net sales, orders and items sold, every country row shows how many customers it holds, what they are worth over their lifetime, how many of them buy again, and how many are still active.
Key Metrics by Country:
Example: Your largest market by revenue is not always your best. A smaller country whose customers buy again and again can be worth more per customer acquired, which changes where the next marketing euro goes.
Every report has a Customer role filter, so stores running role-based pricing, wholesale, or quote-request plugins can compare a WordPress user role (wholesale versus retail, for example) across lifetime value, retention, churn, and every other metric. Select Guests to see orders placed without an account. Your selection follows you from report to report, and the CSV export follows it too.
Roles are read as they stand today: WordPress keeps no record of past role changes, so a customer moved to a different role appears under their new role for their whole order history.
Every report also has a Product category filter. Pick one or more categories and the report covers only the customers who bought from them, with three ways to match them:
The filter chooses which customers are reported, not which sales are counted. Their lifetime value, order counts and retention still cover everything they bought, right across your store, which is the whole point: a category that looks small on a sales report can be the one that brings in your most valuable customers.
Select several categories at once and you also choose whether customers have to match any of them or all of them. Any of them widens the net; all of them finds the crossover buyers, the people who have bought from every category you picked, which is the question behind most cross-sell work.
Selecting a category always includes its subcategories. Your choice follows you from report to report, the CSV export records the categories and the matching mode, and any report left covering too few customers to be reliable says so on the page, so a filter that narrows things too far cannot quietly turn a handful of customers into a confident-looking average.
The plugin integrates directly with your WooCommerce Admin dashboard:
Built to WordPress coding standards and optimized for WooCommerce’s High-Performance Order Storage (HPOS) system. The plugin is HPOS compatible and designed for stores running modern infrastructure.
Requirements:
Performance Features:
Customer Analytics for WooCommerce works with the order history you already have: install it, open the Analytics menu, and the reports are populated from your existing data. There are no tracking scripts to add and no accounts to create. Everything is computed and stored on your own server.
The WooCommerce Customer Analytics extension adds customer-focused metrics to your store: RFM customer segments, customer lifetime value (CLV), a top-customers leaderboard with predicted next-order dates, cohort retention, churn rate, repeat purchase rate, the order sequence customers follow and the time between their orders, acquisition sources, and customer value by country. It extends WooCommerce's built-in Analytics with these as new WooCommerce reports under WooCommerce → Analytics, computed from your existing order data. Nothing is replaced or removed from the native reports.
Google Analytics focuses on traffic and sessions; Customer Analytics focuses on customer behavior (lifetime value, customer retention, churn rate, and RFM segmentation) using the order data already in your WooCommerce database. It runs entirely on your server for privacy-first customer insights, with no tracking script and no data sent to any third-party service.
No. Customer Analytics works on the orders already in your store, so reports are populated immediately on activation. There is no tracking snippet to add and no waiting period before the data starts collecting. Your full order history is analyzed from day one.
No. The plugin adds no front-end tracking script and runs its queries only when you open a report in the admin, reading from WooCommerce's High-Performance Order Storage. For very large stores you can set a lookback period to limit how much history each report processes.
RFM segmentation scores each customer 1–5 on Recency (how recently they ordered), Frequency (how often they order), and Monetary value (how much they spend). Scores use quintiles by default, or fixed thresholds you set. Customers map to six named segments: Champions (your best, highest-value customers), Loyal, At Risk, About to Sleep, Hibernating, and Lost. A sortable table then ranks individual customers by total spent.
From the Customer Segments report, select a segment and click Create coupon. The plugin generates a standard WooCommerce coupon restricted to that segment's customer email addresses, limited to one use per customer, which is ideal for win-back campaigns. You set the discount type, amount, expiry date, and code, then a link takes you straight to the coupon editor.
Customer lifetime value (CLV) is the average net revenue a customer generates across their whole relationship with your store. The plugin groups every order by customer (guests by billing email), subtracts refunds to match WooCommerce's revenue, and averages across customers.
The Top Customers report ranks your customers by lifetime value: a leaderboard with each customer's orders, average order value, lifetime spend, last order, and predicted next order, plus a lifetime value distribution histogram showing how many customers fall into each lifetime-spend bracket and summary cards (customers acquired, average and median lifetime value, total lifetime value, top customer). The date range selects which acquired customers appear (those whose first order falls in the range), and a "Values as of" filter can pin all values to a past date, so you can also see who your top customers were at the end of last year.
The predicted next order date comes from each customer's own buying rhythm. Their average order gap is the time from first to last order divided by the number of gaps between orders, and the predicted next order is one average gap after their last order. The Overdue column shows how far past that prediction they are, as a percentage of their own gap, so you can sort a segment by "most overdue versus their own pattern". The prediction needs at least two orders and an average gap of at least a day; customers without a usable cadence show a dash. These columns appear in both the Customer Segments and Top Customers reports.
It shows which marketing channels bring customers who come back. Each customer is attributed to the channel of their first order, using the order attribution data WooCommerce already records, and the report then reports that group's lifetime value, repeat rate, orders per customer, average order value, still-active share, and first-order revenue against lifetime revenue. You can group by channel (Campaign / UTM, Organic search, Referral, Direct and so on) or by utm source, medium, or campaign. WooCommerce's own attribution report is order-level and answers which channel made a sale; this one answers what the customers that channel brought turned out to be worth.
Because their first order carries no attribution data. WooCommerce records the source of an order only while its Order Attribution feature is active, so orders placed before that, including your older order history, have none. Orders placed through the admin are recorded as such. When only a small share of the customers in range carry attribution data, the report displays a notice stating that share, so an "Unknown" row is never mistaken for a fault.
The Cohort Retention report groups customers into monthly cohorts by the month of their first order and shows, for each cohort, the percentage who placed at least one order 1, 2, 3… months later, as a shaded heatmap with the cohort size alongside. An accompanying chart averages retention across cohorts at each month offset so you can see where the typical drop-off happens, and the whole matrix can be exported as CSV.
The Order Sequence report takes the customers acquired in the selected date range and follows them forward to today. It shows what share of them go on to place a second order, a third and a fourth, how long each of those steps typically takes, the full spread of the wait before the next order, and what the order at each position is worth. Summary cards give the customers acquired, the share who reached a second order, the median days to that second order, and the average orders per customer.
They answer different questions and are meant to be read together. Repeat Purchase Rate is period-scoped: it asks what share of the customers who ordered within a period ordered twice within that same period, so a customer who buys in January and again in February counts as non-repeat in both months. Order Sequence is cohort-scoped: the date range picks customers by the date of their first order, and their whole subsequent history counts no matter when it happened. Order Sequence will normally report a higher figure, and that is expected rather than a discrepancy.
Because they have not had time to come back yet, and counting them as failures would make a recent date range look worse simply for being recent. A step only enters the funnel once the order it starts from is older than the maturation period, which defaults to your churn period (90 days) and can be changed on the page, including switching it off entirely. The report says above the funnel how many customers are being held out, counted at the first order. The same window applies at every later step, which is why a row's measurable base can be smaller than the number of customers who reached it.
A customer is counted as churned in a period if they were active at its start (they had ordered within your churn window, default 90 days) but placed no order by the period's end. You can set churn windows from 15 days up to 2 years to match your purchase cycle.
Repeat purchase rate is repeat customers ÷ total customers × 100, measured per period. A customer counts as "repeat" when they placed two or more orders within the period.
Yes. The Countries report breaks down items sold, net sales, and orders by billing country, with all-countries, single-country, and side-by-side comparison views. This geographic sales report's net sales are calculated on the same net basis as WooCommerce's native Revenue, Products, and Categories reports.
The Countries report shows customer measures next to the sales figures on every country row: how many customers that market holds, their average lifetime value, the share who have ordered more than once, and the share still active within your configured churn period. The market that sells the most is not always the one that produces customers worth keeping.
Each customer is counted once, under the billing country of their most recent order in the selected date range. Sales figures are attributed per order, so an order is always counted against its own billing country. A customer who ordered from two countries in the same period therefore adds orders to both country rows, but is counted as a customer in only one, which keeps customer counts from double-counting and lets the country counts add up to the period total.
It depends on the report. The value reports (Lifetime Value, Active Customer Value, Countries, Top Customers, Acquisition Sources, RFM monetary value) subtract refunds to match WooCommerce's native revenue. The behavioral reports (Churn Rate, Repeat Purchase Rate, Cohort Retention, Order Sequence) exclude fully refunded orders, since a refund isn't a real purchase. In Order Sequence that exclusion also keeps the numbering straight: a refunded order never takes up a place in the sequence, so it cannot push every later order down a position. The one money figure in that report, average order value by position, does subtract refunds.
Yes. Guest orders are grouped by their billing email address so each customer is counted consistently across reports.
Yes. Every report has a "Customer role" filter, so you can compare wholesale, retail or any other role across lifetime value, retention, churn and the rest. This is especially useful for B2B stores running role-based pricing or quote requests. Select Guests to see orders placed without an account. The selection stays applied as you move between reports, and the CSV export follows it. Roles are read as they stand today, since WordPress keeps no record of past role changes, so a customer moved to a different role appears under their new role for their whole order history.
Yes. Every report has a "Product category" filter with three ways to match customers: those who ever purchased from the category, those who only ever purchased from it, and those whose first purchase came from it. You can pick several categories at once and choose whether customers have to match any of them or all of them, so you can isolate the crossover buyers who have bought from every category you picked. It is important to know that this filter selects which customers are reported, not which sales are counted. If you filter to Coffee, you get the customers who bought coffee, and their lifetime value, order counts and retention still cover everything they bought across your whole store. That is what lets you answer questions like whether coffee buyers are worth more over time than everyone else, or whether the people who only ever buy coffee ever cross over into the rest of your catalogue. Selecting a category always includes its subcategories, the selection stays applied as you move between reports, and the CSV export records the categories and the matching mode.
A purchased product counts as belonging to the category you selected if any of its categories match, so a product filed under both Coffee and Tea still counts as a coffee purchase for a Coffee filter. Buying any product with no matching category, including a product with no category at all, moves that customer out of the "only ever" group.
Yes. Subscription orders from WooCommerce Subscriptions are included in the calculations like regular orders.
Reports always use current data from your WooCommerce database, so each report reflects your orders as they are at the time you view it.
No. All calculations run on your own server using data already in your WooCommerce database. There are no external dependencies and no customer data is shared with third parties.
Yes. The plugin reads order data from WooCommerce's High-Performance Order Storage (HPOS), so HPOS must be enabled. It also needs current versions of WordPress, WooCommerce, PHP, and MySQL. See the Requirements section on this page for the exact minimums.
Yes. Every report includes a CSV download. The Customer Segments export includes each customer's email address and segment, which is useful for external analysis or marketing tools.
Extension information
Countries