Customer Analytics
Track customer lifetime value, retention, segmentation, and cohort behavior.
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.
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
| 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
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 − TipAmountacross 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
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 − TipAmountfrom recognized bookings for these customers
Useful for evaluating marketing ROI by channel.
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
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 − TipAmountfrom 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
| 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
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.
Download CSV
The Download CSV button in the page header exports any table on this report (segments, customers by source, top customers, cohorts) for the applied filters, plus one section that is not shown on the page:
- All customers — every customer record at your location, one row each,
with name, emails, phone, company, source, customer-since date, tags,
address, and lifetime booking count, revenue, first and last booking. It
ignores the date range on purpose: it is the customer list, not a period
view. Revenue follows the same rule as the rest of the report (Confirmed
and Pending bookings,
GrandTotal − TipAmount). The Customers filter still applies if you want a subset.
Pick the columns you need in the dialog; your selection is remembered per section.
