Booking Analytics
Analyze booking trends, conversion, lead time, and day-of-week patterns.
Overview
Booking analytics help you understand demand patterns and optimize your operations. Access from Dashboard > Reports > Bookings.
This page documents what each metric counts and how it's calculated. For shared rules across reports, see How report calculations work.
What this report counts
- Bookings counted: every booking in the date range, partitioned by status. Unlike most reports, this one needs Canceled and Pending data — it's measuring the funnel.
- Date axis: bookings are filtered by creation date (
CreatedAt). The Day-of-Week analysis and Popular Time Slots views switch to service date (StartDateUtc) — those views ask "when does the booking happen?" not "when did we sell it?"
Summary Metrics
| Metric | What it is | How it's calculated |
|---|---|---|
| Total Bookings | Bookings in the date range across all statuses | Count of all bookings created in the period |
| Confirmed Bookings | Bookings with Confirmed status | Count of Confirmed bookings created in the period |
| Cancelled Bookings | Bookings that ended up Canceled | Count of Canceled bookings created in the period |
| Pending Bookings | Bookings awaiting operator confirmation | Count of Pending bookings created in the period |
| Conversion Rate | What fraction reached Confirmed | Confirmed Bookings ÷ Total Bookings, as a percent |
| Cancellation Rate | What fraction ended up Canceled | Cancelled Bookings ÷ Total Bookings, as a percent |
| Average Lead Time | Average days between booking creation and service date | Mean of (StartDateUtc − CreatedAt) for bookings with a future service date |
| Repeat Customer Rate | Share of customers with more than one booking | Customers with 2+ bookings ÷ unique customers in the period |
Note: this report's Confirmed, Cancelled, and Pending columns are status histograms — they're deliberately raw counts of each status, not combined revenue-recognized totals like the rest of the reporting suite.
Booking statuses that appear
Bookings move through four statuses: Draft, Pending, Confirmed, and Canceled. The status breakdown chart shows the latter three (Draft is the pre-commit cart state and is not a "real" booking). There are no custom statuses.
Booking Volume
A multi-series line chart that overlays:
- Total bookings per period (blue) — every booking created in the period
- Confirmed bookings per period (green) — bookings in Confirmed status
- Cancelled bookings per period (red) — bookings in Canceled status
Use the Group by filter to view trends by day, week, or month. Helps you spot growth patterns, seasonal demand shifts, and the impact of marketing campaigns.
Status Breakdown
A pie chart showing the distribution of bookings across statuses:
- Each segment displays the count and percentage of total bookings.
- Color-coded: Confirmed (green), Pending (amber), Cancelled (red).
- Draft bookings are excluded — they represent abandoned carts, not real bookings. See the Operations report for cart conversion analytics.
Booking Sources
Where your bookings originate (website, manual entry, API integrations, third-party channels):
- Each source shows booking count, percentage of total, and color coding.
- Includes every status (Draft excluded) — useful for measuring channel volume regardless of conversion outcome.
Popular Time Slots
Identifies which times of day are most popular by counting bookings whose service date falls in each hourly bucket.
- Grouped by service hour (
StartDateUtc.Hour), not booking-creation hour. The question this answers is "when do customers want to be served?" - Each time slot shows booking count and percentage of total bookings.
- Use this data to optimize scheduling windows, ensure adequate staffing during peak hours, and consider premium pricing for high-demand slots.
Booking Lead Time
Analyzes how far in advance customers book:
- Bookings are grouped into lead time ranges (e.g., "0-7 days", "8-14 days", "15-30 days", "31+ days").
- Each range shows booking count, percentage, and average revenue per booking in that bucket.
- Revenue per booking uses
GrandTotal − TipAmount(business revenue). - Only bookings whose
StartDateUtcis after theirCreatedAtare included (excludes service-now / past-dated bookings).
Short lead times may indicate walk-in demand; long lead times suggest planned events or group bookings.
Day-of-Week Analysis
A detailed breakdown of booking patterns by day of the service date:
| Data Point | What it is |
|---|---|
| Day of week | Monday through Sunday, derived from StartDateUtc |
| Booking Count | All bookings whose service date falls on this day of week |
| Revenue | Sum of GrandTotal − TipAmount for Confirmed and Pending bookings whose service date falls on this day |
| Average Order Value | Revenue ÷ count of revenue-recognized bookings for that day |
| Peak Day flag | Indicates whether this is one of your two highest-volume days |
Revenue and AOV use the revenue-recognition rule (Confirmed + Pending) and strip tips. Booking Count is a raw total across all statuses for the day.
Use this data to adjust pricing (premium on peak days, discounts on slow days), plan staffing schedules, and target marketing for underperforming days.
Filters
The Booking Analytics report supports the full set of common filters:
- Date range — filters bookings by
CreatedAt. - Activities — narrow to bookings for specific activities.
- Equipment — narrow to bookings that include specific equipment.
- Sources — filter by booking source.
- Statuses — explicitly filter by specific statuses.
- Min / Max amount — filter by
GrandTotal(customer-facing total). - Group by —
day,week, ormonthfor the period chart.
