# Customer Analytics (/docs/reporting/customer-analytics)



Overview [#overview]

Track who's buying from you and how often. Access from
**Dashboard > Reports > Customer**.

This page documents how every customer metric is calculated. For shared
rules across reports, see [How report calculations work](/docs/reporting/how-calculations-work).

What this report counts [#what-this-report-counts]

* **Customers counted**: every Customer record at your location. Customer
  rows are not filtered by status.
* **Bookings counted toward customer money/value metrics**: Confirmed and
  Pending. Draft and Canceled bookings are excluded from lifetime value,
  customer segments, top customer rankings, and cohort revenue.
* **Revenue formula**: business revenue = `GrandTotal − TipAmount`.
* **Date axis**: bookings filter by **booking creation date**
  (`CreatedAt`). New-customer counts use **Customer record date**.

Summary Metrics [#summary-metrics]

| Metric                        | What it is                                       | How it's calculated                                                          |
| ----------------------------- | ------------------------------------------------ | ---------------------------------------------------------------------------- |
| **Total Customers**           | All customer records at this location            | Count of every customer record                                               |
| **New Customers**             | Customers whose record was created in the period | Count where `Customer.Date >= start date`                                    |
| **Returning Customers**       | Customers with more than one booking ever        | Count of customers with `Bookings.Count > 1`                                 |
| **Customer Lifetime Value**   | Average lifetime business revenue per customer   | Sum of `GrandTotal − TipAmount` across recognized bookings ÷ Total Customers |
| **Retention Rate**            | Share of customers with a recent booking         | Customers with at least one booking in the last 90 days ÷ Total Customers    |
| **Churn Rate**                | 100% − Retention Rate                            | —                                                                            |
| **Average Booking Frequency** | Average recognized bookings per customer         | Sum of recognized bookings across customers ÷ Total Customers                |
| **Repeat Purchase Rate**      | Same as Returning Customers ÷ Total Customers    | —                                                                            |

Customer Segments [#customer-segments]

Customers are bucketed into named segments based on booking recency and
frequency. Each segment shows:

* **Customer Count** — number of customers in this segment
* **Revenue** — sum of `GrandTotal − TipAmount` across recognized bookings
  from customers in this segment
* **Average Order Value** — segment revenue ÷ count of recognized bookings
  from this segment

Use segments to target retention emails, win-back campaigns, and VIP
treatment.

Customers by Source [#customers-by-source]

Customer acquisition channel breakdown:

* **Source** — the channel where the customer was first acquired
* **Customer Count** — number of customers attributed to this source
* **Revenue** — sum of `GrandTotal − TipAmount` from recognized bookings for
  these customers

Useful for evaluating marketing ROI by channel.

Top Customers [#top-customers]

Your top 10 customers by total business revenue:

| Data Point        | What it is                                                 |
| ----------------- | ---------------------------------------------------------- |
| **Customer Name** | —                                                          |
| **Booking Count** | All bookings ever (every status)                           |
| **Total Revenue** | Sum of `GrandTotal − TipAmount` across recognized bookings |
| **Last Booking**  | Date of the customer's most recent booking                 |

Customer Cohorts [#customer-cohorts]

Cohort retention analysis. Customers are bucketed by the month in which their
customer record was created. For each cohort:

* **Cohort Month** — the month the customer joined
* **Customer Count** — how many customers in this cohort
* **Retention Rate** — most recent monthly retention percentage observed
* **Average Lifetime Value** — sum of `GrandTotal − TipAmount` from
  recognized bookings ÷ cohort size
* **Monthly Retention** — list of retention percentages for months 1
  through 12 after the cohort joined; each percentage is the share of the
  cohort who had at least one booking in that month

Use cohort data to spot whether customer quality is changing over time —
e.g., do customers acquired in summer retain better than winter customers?

Date axis [#date-axis]

| Section                             | Date used                                                        |
| ----------------------------------- | ---------------------------------------------------------------- |
| Customer counts, segments, cohorts  | `Customer.Date` for cohort assignment                            |
| In-period bookings                  | `Booking.CreatedAt` filtered to date range                       |
| LTV, segment revenue, top customers | All recognized bookings ever (no date filter)                    |
| Active / Returning / Retention      | `Booking.CreatedAt >= UtcNow.AddDays(-90)` for the 90-day window |

The "active in last 90 days" calculation uses the time of the report run,
not the date filter — so re-running the report on different dates produces
slightly different retention numbers as the 90-day window slides forward.

Filters [#filters]

The Customer Report supports the common filters:

* **Date range** — filters in-period bookings by `CreatedAt`.
* **Customers** — narrow to specific customer records.
* **Sources** — filter by acquisition source.
* **Statuses** — override the default recognition rule.

Related How-To Guides [#related-how-to-guides]

* [View customer analytics](/how-to/reporting/view-customer-analytics)
* [Run a revenue report](/how-to/reporting/run-a-revenue-report)
* [How report calculations work](/docs/reporting/how-calculations-work)
