Skip to main content

Introduction

The Reports section provides detailed data tables for analysing your business performance across appointments, sales, team members, clients, and more. With 30 built-in reports, you can track everything from daily sales to future booked income, client lifetime value and peak hours. Every report exports to CSV except Online booking analytics, most offer period-over-period comparison and a totals row, and many reports can be narrowed to specific team members - appointment-based reports also support filtering by resources (rooms/equipment). Two reports are covered in their own pages rather than below: Tax collected and Online booking analytics.

Accessing Reports

  1. Navigate to Insights > Reports in the sidebar
  2. You’ll see a grid of all available reports
  3. Click any report card to open that report
Reports page showing the grid of available report cards

Common Features

Filters

Most reports include a Date range filter. The exceptions are Client credit summary (a live snapshot), At-risk clients and Client lifetime value (both read a client’s whole history), and Online booking analytics (fixed to the last 30 days). Many reports also include:
  • Team member filter - Multi-select to focus on specific team members. Available on: Appointments summary, Service bookings, Cancellations & no-shows, Future income, Sales summary, Service & product sales, Services sales, Products sales, Team member sales, Utilisation, Days off, Client retention, and Tips summary. The Attendance report has its own single-team-member picker instead. Leaving every team member selected is the same as applying no filter (all bookings are included, including resource-only lines with no team member).
  • Resource filter - Multi-select to focus on specific resources (rooms/equipment). Available on appointment-based reports: Appointments summary, Service bookings, Cancellations & no-shows, Future income, and Client retention. An appointment service line can have a team member, a resource, or both - filters match either.
  • Compare - Set the selected period against the previous period (same number of days immediately before) or the same period last year. Reports open on Previous period. Pick Same period last year or No comparison and every report keeps that choice in the browser you made it in; the dashboard keeps its own choice. With a comparison on, delta indicators (green/red arrows with percentage change) appear on the report’s totals. A total shows no indicator when its figure for the earlier period is zero. Available on: Appointments summary, Service bookings, Cancellations & no-shows, Sales summary, Service & product sales, Services sales (Summary view), Products sales, Team member sales, Utilisation, Client retention, Top spenders, Booking source, Gift card summary, Loyalty summary, Referrals, Birthday rewards, New client offers, Discount summary, Packages summary, Membership summary, and Tips summary.

Summary Totals

Most reports display a Totals row at the bottom of the table, showing aggregated values across all matching records (not just the current page). When comparison mode is enabled, the totals row also shows delta indicators. A few reports summarise above the table instead: Future income and Attendance use summary cards, and Client credit summary shows per-currency totals at the top.

CSV Export

Every report includes an Export CSV button except Online booking analytics, which is a multi-section funnel view rather than a single table, so there is nothing to lay out as rows and columns. The exported file contains all matching records with formatted values (currency, percentages, etc.). You can open CSV files in Excel or Google Sheets.

Plan Availability

Every report is listed on the Reports page for anyone with report access. Reports your plan doesn’t include appear locked with an upgrade prompt, so you can always see what’s available:
  • The advanced reports - Service & product sales, Team member sales, Utilisation, Client retention, Client lifetime value, At-risk clients, Top spenders, Booking source, Peak hours and Tips summary - need a plan that includes advanced reports.
  • Gift card summary, Client credit summary, Loyalty summary, Packages summary and Membership summary each need the matching feature on your plan. Referrals unlocks with Loyalty - the two share one plan feature - and Birthday rewards and New client offers need a plan that includes messaging (running those two programmes needs Messages Plus, but reading their reports doesn’t).
The one report that’s hidden rather than locked is Attendance - it only appears once attendance tracking is switched on in your scheduling settings.

Appointments summary report

The Appointments summary report provides a comprehensive overview of your appointment bookings, team member and resource performance, and client retention metrics.

Filter Options

  • Date range - The period for which appointment data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Resources - Multi-select to filter by specific resources (rooms/equipment).
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Team member / resource - The name of the team member or resource. Resource rows are labelled (resource). A service line with both a team member and a resource is counted under both.
  • Services - The total number of individual services delivered by the team member within the selected period.
  • Total services value - The total revenue generated from all services (including add-on prices) across all appointments handled by the team member.
  • Average services value - The average revenue per service delivered (Total services value / Services count).
  • Total clients - The total number of unique clients served by the team member.
  • New clients - Clients who had appointments during the selected period but had no prior appointments.
  • % new clients - Percentage of total clients that were new clients.
  • % returning clients - Percentage of total clients that were returning clients.
  • Total appointments - The total number of unique appointments handled by the team member.
  • % confirmed - Percentage of appointments with “Confirmed” status.
  • % completed - Percentage of appointments with “Completed” status.
  • % cancelled - Percentage of appointments with “Cancelled” status.
  • No-shows - The number of appointments cancelled with a no-show reason.
  • % no-show - Percentage of total appointments that were no-shows.
  • Avg duration (mins) - The average scheduled duration in minutes of services performed by the team member. After a client finished early, it counts the time up to the new end.
  • Avg actual duration (mins) - The average time an appointment took end to end, from when its service was marked started to when it was checked out. This is a whole-appointment span (and it reflects when you check clients out, not only the service itself), so it isn’t directly comparable to the per-service Avg duration above - read it on its own as a sense of how long appointments really run. Populates only for appointments where the team uses check-in and checkout.
  • Avg wait (mins) - The average time a client waited between being checked in (arrived) and their service being started. Populates only where check-in is used.
  • % checked in - Of the appointments completed in the period, the percentage that were checked in - a measure of how consistently the team uses check-in.
  • % on-time arrivals - Of the checked-in appointments that were completed, the percentage where the client arrived on time - at or before the scheduled start, within a 10-minute grace window. This tracks client punctuality (whether clients turn up on time), not whether the business ran to schedule. Appointments started without a separate check-in are excluded.
  • % series - The percentage of the team member’s appointments that are part of a repeating series, so you can see how much of their work is recurring rather than one-off.

Cancellations & no-shows report

The Cancellations & no-shows report provides detailed insights into cancelled appointments, helping you identify patterns and understand the reasons behind cancellations. No-shows appear as their own row alongside client-initiated cancellations.

Filter Options

  • Date range - The period for which cancelled appointment data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Resources - Multi-select to filter by specific resources (rooms/equipment).
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Reason - The cancellation reason provided when the appointment was cancelled.
  • # appointments - The total number of appointments cancelled with this specific reason.
  • Value - The total monetary value of services from cancelled appointments for each reason.
  • % of total - The percentage of all cancellations represented by this reason.

Sales summary report

The Sales summary report provides a day-by-day overview of your business’s sales performance, including services, products, payment breakdowns, and refunds. It’s built from your sales: each sale counts on its sale date, each refund on the day it was issued, and a gift card sold on its own on the day it was sold. A voided sale isn’t counted.
Sales summary report with revenue trend chart and daily breakdown of services, products, refunds, and payment methods

Filter Options

  • Date range - The period for which daily sales data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Date - The sale date (the calendar day the sale was rung, or the day your team set as the sale date). This is not the appointment date - if you check out an appointment the day after it happened, revenue lands here on the checkout/sale date unless you change Sale date at checkout or via Edit sale.
  • # of sales - The total number of unique sales transactions completed on that date.
  • # services - The total count of individual service items sold on that date.
  • Services sales - The total revenue generated from service sales on that date.
  • # products - The total count of individual product items sold on that date.
  • Products sales - The total revenue generated from product sales on that date.
  • # custom items - The total count of custom (one-off) items sold on that date.
  • Custom items sales - The total revenue from those custom items.
  • # appointment fees - The number of appointment-fee lines collected on that date. One service-bearing appointment can contribute at most one.
  • Appointment fees - The revenue from those fee lines. It is already included in Total sales and stays separate from Custom items.
  • Refunds - The total value of refunds processed on that date. Filtered to team members, their share of each refund, worked out the same way as on Team member sales.
  • Total sales - The net value of the day’s sales: services, products, custom items, appointment fees, and any package or gift card sold on a sale, less discounts and refunds. Filtered to team members, it counts only their items, less the discounts and refunds that belong to those items, the same as Team member sales. A deposit isn’t in it until its appointment is checked out. See Deposits and Total sales.
  • # gift cards - Gift cards sold on their own that day, with Sell gift card on the Gift cards screen or bought online. A gift card added to a sale is part of that sale instead. Filtered to team members, this and Gift card sales show 0, because a gift card sold on its own has no team member.
  • Gift card sales - The value of those gift cards. It isn’t part of Total sales. Their payments are included in the Cash, Card and Other columns.
  • Total collected - Total sales plus Gift card sales.
  • Cash - Total payments received in cash.
  • Card - Total payments received by credit/debit card (including card on file).
  • Gift card - Total payments received via gift card redemptions.
  • Client credit - Total payments taken from clients’ stored-value credit balances.
  • Other - Any remaining tenders (e.g. package redemptions), so no payment method is left out. The payment columns are counted before refunds.
  • Discounts - Total discounts applied to sales: manual discounts and promo codes, loyalty rewards, membership benefits, referral rewards, birthday rewards and new client offers. Filtered to team members, only the discounts that belong to their items.

Deposits and Total sales

Taking a deposit doesn’t create a sale, so a deposit on an appointment that hasn’t been checked out isn’t in Total sales or in the payment columns. When you check the appointment out, the deposit becomes part of that sale. It’s counted on the sale date (the checkout day, unless you change Sale date), under the method it was actually taken with: a card deposit in Card (a deposit paid online counts as card), a cash deposit in Cash, an Other deposit in Other, a gift card deposit in Gift card. That’s separate from whatever settled the rest of the bill, so a 180appointmentwitha180 appointment with a 43 card deposit finished in cash reports 43ofcardand43 of card and 137 of cash, which is what your card statement and your till will show. Appointments checked out before August 2026 include the deposit in the tender that settled the balance, so earlier periods keep the figures you have already reported on. To see deposits before checkout:
  • Future income shows Deposits held on upcoming Booked and Confirmed appointments, and the Balance to collect.
  • Card terminal takings, below, counts a deposit taken on a named card terminal on the day the machine took it.
  • On the Scheduler, an appointment with a paid deposit shows a green pill with the amount.
A deposit you keep when an appointment is cancelled or marked as a no-show never becomes a sale, so it isn’t in Total sales. Neither is a late-cancellation or no-show fee charged to a saved card. For what checkout changes about an appointment, see What you can do at each status.

Card terminal takings

Named your card terminals at Settings → Card terminals? A Card terminal takings card appears on this report, totalling each machine for the period: Taken, Refunded, and Net, plus an Unattributed refunds line for refunds of terminal-taken money that can’t be pinned to one machine (for example, on a sale settled partly on a machine and partly another way). The takings card is attributed to the day the machine actually took or refunded the money. Deposits count on the day they were captured. Refunds of sales, refunded deposits, and reversed client credit top-ups count on the day the money was given back, on the machine that took them. A top-up reversed on one machine and taken again on another leaves the reversal on the first and the new top-up on the second. Where a deposit was refunded in more than one part, the total is shown on the latest of those days. This is different from the Card column above, which reports by sale date and doesn’t net refunds per tender. The two can show different figures for the same day and both be right, because they answer different questions.

Future income report

The Future income report shows the expected income from your upcoming, not-yet-completed appointments - your booked pipeline - net of any manual and promo-code discounts already applied. It answers “how much have I actually got on the books?” without waiting for checkout. It counts appointments with a Booked or Confirmed status that fall in the window you choose; completed and cancelled appointments (including no-shows) are excluded.
What’s included: the whole booking - services (with any add-ons), products added to the appointment, custom items, and one active appointment fee where the appointment carries one. The figure is net of the manual discounts and promo codes already on each appointment. Memberships, packages, loyalty rewards and gift cards are only applied at checkout, so they are not deducted here - the final amount collected may be lower for a client who redeems one. Tips and taxes aren’t included either, as they’re added at checkout.

Filter Options

  • Date range - A forward window with quick presets for Next 7 days, Next 30 days, Next 90 days (the default) and Next month, plus any custom range.
  • Team members - Multi-select to filter by specific team members.
  • Resources - Multi-select to filter by specific resources (rooms/equipment).

Summary

  • Expected net income - Gross booked value less manual and promo-code discounts, across all matching appointments.
  • Gross booked - The total booked value before discounts.
  • Discounts - The total manual and promo-code discounts applied. A percentage of gross is also shown once you have enough upcoming appointments for it to be meaningful.
  • Deposits held - Deposits already collected against these appointments. If Collect at booking took an appointment fee, that amount is included here. These deposits reach the Sales summary when each appointment is checked out (see Deposits and Total sales).
  • Balance to collect - Expected net income less deposits already held.
A trend chart shows expected net income across the window, grouped by day, week or month depending on how far ahead you’re looking.

Data Fields (by team member / resource)

  • Team member / resource - The name of the team member or resource. Resource rows are labelled (resource).
  • Appointments - The number of upcoming appointments they’re part of.
  • Gross - The booked value of their lines before discounts - their services (with add-ons), plus any products or custom items on the booking that are credited to them.
  • Discounts - Their share of the manual and promo-code discounts.
  • Net - Gross less discounts.
Products and custom items are credited to the team member chosen on that line, not to whoever performs the service. Appointment fees are never credited to a team member and always sit in House / Online. They remain outside manual and promo-code discounts. A line with nobody chosen - an online booking whose cart has no team member to credit, for example - appears in a House / Online row, the same explicit “no attribution” bucket used on Team member sales, so the breakdown always adds up to the headline. Filtering by team member or resource hides that row, because an unattributed line belongs to no one you selected.

Use Cases

  • Track the income you have booked for the weeks ahead and plan cash flow.
  • See how discounts and promo codes are affecting your forward revenue.
  • Spot quiet weeks early so you can promote them before they arrive.

Service & product sales report

The Service & product sales report provides a comprehensive view of sales performance broken down by team member, showing both service and product sales separately with percentage splits.

Filter Options

  • Date range - The period for which sales data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Team member - The name of the team member.
  • # of services - The total count of individual service items sold by the team member.
  • Service sales - The team member’s service sales after discounts and refunds.
  • # products - The total count of individual product items sold by the team member.
  • Product sales - The team member’s product sales after discounts and refunds.
  • Total sales - The combined revenue from both services and products.
  • Service % - The percentage of total sales from services.
  • Product % - The percentage of total sales from products.
Discounts and refunds are shared across a sale’s items the same way as on Team member sales. Service and product sales with no team member, such as resource-only services and online orders collected at your business, appear in a House / Online row, after their discounts and refunds. The totals include this row. Filtering by team member hides it, because an unattributed line belongs to no one you selected.

Service bookings report

The Service bookings report shows how many times each service was booked - counted from appointment service lines by appointment date, excluding cancelled appointments. Use this when you want popularity by bookings, including appointments that have not been checked out yet. This is not the same as Services sales, which counts services sold at checkout.

Filter Options

  • Date range - Filters on the appointment date (the day the appointment is scheduled for).
  • Team members - Multi-select to focus on specific team members (matches the team member on each service line).
  • Resources - Multi-select to focus on specific resources (matches the resource on each service line). Lines may have a team member, a resource, or both.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Service name - The name of the individual service.
  • Service category - The category that this service belongs to.
  • # bookings - The number of non-cancelled appointment service lines for this service. A multi-service appointment contributes one count per service line. Bundle components each count as their own line. Variants of the same service are rolled into that service.
  • % of bookings - This service’s share of all booking lines in the period.
  • Avg duration (mins) - The average duration in minutes for this service’s lines. After a client finished early, it counts the time up to the new end.

Services sales report

The Services sales report provides detailed insights into the performance of individual services at checkout, including pricing, revenue share, and duration metrics. The date filter uses the checkout date (when the sale was completed), not the appointment date. Appointments that were booked but never checked out do not appear here. For booking counts by appointment date, use Service bookings. The report has two views: Summary (one row per service, aggregated over the period) and Detailed (one row per service sold, with dates - handy for exporting CSVs into bookkeeping or cashflow spreadsheets).

Filter Options

  • Date range - The period of checkout dates to include.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year. Available in the Summary view only - the Detailed view lists individual lines, so there is nothing to compare period-on-period.

Data Fields

  • Service name - The name of the individual service.
  • Service category - The category that this service belongs to.
  • # services - The total number of times this service was sold at checkout.
  • Sales - The total revenue generated from this service, net of any per-service discount (a membership benefit, a per-line manual discount, or a loyalty or birthday reward that gave the service free) and of any refunds. A service given free for points shows as $0 here, exactly as one covered by a membership does; money-off rewards and appointment-level discounts belong to the whole bill and are reported on the Sales summary instead.
  • Avg price - The average price per service instance.
  • % of revenue - The percentage of total service revenue represented by this service.
  • Avg duration (mins) - The average duration in minutes for this service, as sold: an early finish doesn’t change it.

Data Fields (Detailed view)

  • Date of service - The date the service was performed (the appointment date; for walk-in sales, the checkout date).
  • Checkout date - The date the sale was checked out.
  • Service - The service name (including the variant, where applicable).
  • Bundle - The bundle this line was sold as part of, or a dash when the service was sold on its own. A bundle is sold as one line per component service, so each component keeps its own row.
  • Service category - The category that this service belongs to.
  • Team member - Who performed the service.
  • Gross - The price charged on the sale for that line, before any per-service discount or refund. Where a package session covered the service, the covered portion is already taken off.
  • Net - Gross less that line’s share of any per-service discount (membership benefit, per-line manual discount, or a loyalty or birthday reward that gave this service free), and less its share of any refund. A refund is shared by everything on the sale, by what each item earned after its own discount rather than by its ticket price: a service you gave away gives nothing back, and a custom item, package or gift card sold on the same sale keeps its own share. This is the figure that reconciles with the Summary view’s Sales total.

Products sales report

The Products sales report provides detailed insights into retail product performance, showing which products are selling well, their average price, and revenue share. Current stock on hand and stock value at cost are on the Products page, not this report.

Filter Options

  • Date range - The period for which product sales data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Product - The name of the retail product.
  • # products - The total quantity of this product sold.
  • Sales - The total revenue from this product, net of any per-product discount (a membership benefit, a per-line manual discount, or a loyalty or birthday reward that gave the product free) and of any refunds. A discount on the whole appointment or sale, promo codes included, belongs to the whole bill and is reported on the Sales summary instead, the same as on Services sales. A refund is shared by everything on the sale, by what each item earned after its own discount: a product you gave away gives nothing back, and a custom item sold beside it keeps its own share.
  • Avg price - The average price per unit sold (Sales / # products).
  • % of revenue - The percentage of total product revenue represented by this product.

Team member sales report

The Team member sales report shows each team member’s sales after discounts and refunds, the figure you can pay commission from, with productivity measures like service hours and sales per hour. Sales with no team member (appointment fees, resource-only services and products sold without a team member, such as online orders collected at your business) appear under House / Online, after their discounts and refunds, and never inflate a team member’s sales or commission basis.

Filter Options

  • Date range - The period for which team member sales data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Team member - The name of the team member.
  • # of sales - The total number of unique sales that include items attributed to this team member.
  • Gross - The price of every item attributed to this team member, before discounts, on the sale date.
  • Discounts - The discounts that belong to those items, on the sale date. A discount on one item (a per-line manual discount, a membership benefit, or a loyalty or birthday reward that gave the item free) comes off that item. A promo code comes off the items it was applied to, split the way it was at checkout. Any other discount on the whole appointment or sale (a whole-sale discount, a money-off reward, a referral reward or a new client offer) is shared across its services, products and custom items, and any package bought with it, in proportion to what each still cost after its own discount. An appointment fee and a gift card sold take no share.
  • Refunds - This team member’s share of the refunds made in the period, on the day each refund was made. A refund is shared across the refunded sale’s items by what each cost after its discounts, never by the price before them.
  • Total sales - Gross less Discounts less Refunds: what clients paid for this team member’s items. A voided sale is left out entirely.
  • Avg services per sale - The average number of service items per sale.
  • Avg products per sale - The average number of product items per sale.
  • Average sale value - The average value of this team member’s items per sale (Total sales / # of sales).
  • Service hours - The total hours of this team member’s services as sold: an early finish doesn’t change them.
  • Sales per hour - Revenue generated per service hour (Total sales / Service hours).
The Totals row adds the House / Online row to the team member rows, so it matches Total sales on the Sales summary for the same dates, apart from a custom item, package or gift card sold with no team member, which this report leaves out. For example, Alice rings up a 120colouranda120 colour and a 40 shampoo, and Ben a 60blow−drywith60 blow-dry with 10 off. Then 21comesoffthewholeappointment,andtheclientpays21 comes off the whole appointment, and the client pays 189. The 21issharedbywhateachitemstillcosts:21 is shared by what each item still costs: 12 on the colour, 4ontheshampooand4 on the shampoo and 5 on the blow-dry. Alice’s row reads Gross 160,Discounts160, Discounts 16 and Total sales 144.Ben′sreadsGross144. Ben's reads Gross 60, Discounts 15andTotalsales15 and Total sales 45. Refund the 189infullandAlice′sRefundsare189 in full and Alice's Refunds are 144 and Ben’s $45, so each nets to zero across the sale and the refund. Two limits: when two team members do the same service (and variant) on one sale, a discount given on that service is shared between them by price, because the sale doesn’t record which of them it was given to; and a discount larger than the items it came off leaves the amount above their value credited to no one.

Utilisation report

The Utilisation report provides insights into how effectively your team members’ available working hours are being utilised, including revenue metrics.

Filter Options

  • Date range - The period for which utilisation data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Team member - The name of the team member.
  • Available hours - The total hours the team member was scheduled to work, excluding time off and blocked time.
  • Booked - The total hours booked with client appointments. After a client finished early, it counts the time up to the new end, so the freed time shows as unbooked.
  • Unbooked - The available hours not booked (Available hours − Booked).
  • % utilisation - The percentage of available hours that were booked (Booked / Available hours × 100).
  • Revenue - The team member’s sales after discounts and refunds, the same figure as Total sales on Team member sales.
  • Revenue per hour - Revenue divided by booked hours (Revenue / Booked).

Days off report

The Days off report provides a detailed listing of all scheduled time off for your team members, including the duration and hours impact.

Filter Options

  • Date range - The period for which time-off data should be displayed.
  • Team members - Multi-select to filter by specific team members.

Data Fields

  • Team member - The name of the team member who has scheduled time off.
  • Day - The specific date of the time off.
  • Type - The type of time off.
  • Total days off - The total number of days off for this team member in the selected period.
  • Hours missed - The total working hours missed due to the time off, based on the team member’s scheduled working hours.

Client retention report

The Client retention report tracks new versus returning clients and rebooking rates by team member and resource, helping you measure client loyalty and identify retention opportunities.

Filter Options

  • Date range - The period for which retention data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Resources - Multi-select to filter by specific resources (rooms/equipment).
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Team member / resource - The name of the team member or resource. Resource rows are labelled (resource).
  • Total clients - The total number of unique clients served by that team member or resource.
  • New clients - Clients who had their first-ever appointment during the selected period.
  • Returning clients - Clients who had previous appointments before the selected period.
  • Retention rate (%) - The percentage of clients who are returning (Returning clients / Total clients × 100).
  • Rebooking rate (%) - The percentage of clients who have a future appointment booked at the time of viewing.

Booking source report

The Booking source report shows where your bookings come from, helping you understand the effectiveness of your online booking page versus manual bookings. This report tracks the booking origin - whether an appointment was created by the client online, by your team on the dashboard, or through your own website integration. That’s different from the traffic channel (Instagram, Google, an AI assistant, and so on) that sends a visitor to your booking page, which you’ll find under Online booking analytics.

Filter Options

  • Date range - The period for which booking source data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Source - The booking origin: Online (the client booked themselves), Team Booking (someone on your team booked it on the dashboard - including appointments imported from a previous system), or Integration (created through your own API key - typically a booking form on your own website). Appointments created before Bella tracked booking origins appear as Unknown.
  • Appointments - The total number of appointments from this source.
  • Revenue - The total revenue generated from appointments booked through this source.
  • % of total - The percentage of all appointments represented by this source.
  • Average value - The average revenue per appointment from this source.

Gift card summary report

The Gift card summary report tracks gift card sales (including cash / card / other / online amounts collected), redemptions, and outstanding balances over time. Use it to reconcile till payments taken for gift cards. Available on plans that include gift cards.

Filter Options

  • Date range - The period for which gift card data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Date - The date for the gift card activity.
  • Gift cards sold - The number of gift cards sold on that date.
  • Total sold amount - The total monetary value of gift cards sold.
  • Gift cards redeemed - The number of gift cards that had redemptions on that date.
  • Total redeemed amount - The total monetary value redeemed from gift cards.
  • Outstanding balance - The remaining unredeemed balance across all gift cards as of that date.

Client credit summary report

The Client credit summary report shows your total outstanding Client credit (stored-value) liability right now - it’s a point-in-time snapshot, not a date range. Available on plans that include client credit. Use it for reconciliation and to see exactly how much stored value you owe clients.

Data Fields

  • Client - Each client currently holding a balance (searchable; export to CSV for reconciliation).
  • Balance - The client’s total spendable credit.
  • Paid - The portion that is the client’s own money (top-ups and refunds-to-credit).
  • Bonus - The promotional-bonus portion, kept separate so your true liability is clear.
  • Currency - The currency the balance is held in (a client’s balance is locked to one currency).
Per-currency totals are summarised at the top. A Reconcile balances button checks each cached balance against its transaction ledger. If any have drifted, team members with the Client Credit → Manage client credit permission also get a Repair action that rewrites the drifted balances from the ledger.

Loyalty summary report

The Loyalty summary report monitors loyalty programme activity including points earned, redeemed, and expired. Available on plans that include the loyalty programme.

Filter Options

  • Date range - The period for which loyalty data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Date - The date for the loyalty activity.
  • Points earned - The total loyalty points earned by clients on that date.
  • Points redeemed - The total loyalty points redeemed by clients on that date.
  • Points expired - The total loyalty points that expired on that date.
  • Rewards redeemed - The number of loyalty rewards claimed on that date.
  • Active members - The number of clients with a non-zero points balance as of that date.

Referrals report

The Referrals report tracks how your referral programme is performing day by day - successful referrals, the rewards they generate, and the value of the discounts clients redeem. Available on plans that include loyalty/referrals - see Referrals.

Filter Options

  • Date range - The period for which referral data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Date - The date for the referral activity.
  • Conversions - The number of successful referrals on that date. A conversion is counted when a referred friend completes their first paid visit and the referrer earns their reward.
  • Rewards issued - The number of referral rewards created on that date, counting both the referred friend’s welcome reward and the referrer’s earned reward.
  • Redeemed - The number of referral rewards redeemed at checkout on that date. A reward issued on an earlier date may be redeemed within the selected range, so the issued and redeemed counts on a single row need not match.
  • Reward value - The total discount applied by the referral rewards redeemed on that date.

Birthday rewards report

The Birthday rewards report tracks how your birthday reward is performing - the birthday rewards clients redeem at checkout and the discount value those redemptions give. Available on plans that include messaging; the birthday reward itself is part of Messages Plus.
Snapshot: At the top of the report, a callout shows how many clients have a birthday in the current month and the percentage of your active clients who have a date of birth on file. These are current totals - they do not change with the date range, so you can gauge how complete your birthday data is and how many clients are eligible this month. Only the table below follows the selected dates.

Filter Options

  • Date range - The period for which birthday reward data should be displayed. The snapshot callout above is independent of this range.
  • Compare - Against the previous period or the same period last year. The comparison applies only to the rewards redeemed and reward value, not to the current snapshot.

Data Fields

  • Date - The date for the birthday reward activity.
  • Rewards redeemed - The number of birthday rewards redeemed at checkout on that date.
  • Reward value - The total discount applied by the birthday rewards redeemed on that date.

New client offers report

The New client offers report tracks how your new-client offer is performing - the offers new clients redeem on their first visit and the discount value those redemptions give. Available on plans that include messaging; the new-client offer itself is part of Messages Plus.

Filter Options

  • Date range - The period for which new-client offer data should be displayed.
  • Compare - Against the previous period or the same period last year. When enabled, delta indicators (green/red arrows with percentage change) appear on the redemptions and offer value.

Data Fields

  • Date - The date for the new-client offer activity.
  • Offers redeemed - The number of new-client offers redeemed at checkout on that date.
  • Offer value - The total discount applied by the new-client offers redeemed on that date.

Tips summary report

The Tips summary report shows tips received by your team members over time. You can view tips aggregated by date or broken down by team member, making it easy to track gratuity trends.

Filter Options

  • Date range - The period for which tip data should be displayed.
  • Team members - Multi-select to filter by specific team members.
  • Compare - Against the previous period or the same period last year.
  • Group by - Switch between two display modes:
    • By date (default) - One row per day across the selected period. All dates are shown, including days with zero tips.
    • By team member - One row per team member. Expand any row to see a day-by-day breakdown for that person.

Data Fields - By date

  • Date - The local date.
  • Tip count - The number of tips received on that date.
  • Total tips - The total monetary value of tips received on that date.
  • Average tip - The average tip amount per transaction on that date (Total tips ÷ Tip count).

Data Fields - By team member

  • Team member - The name of the team member.
  • Tip count - The total number of tips received by this team member in the selected period.
  • Total tips - The total monetary value of tips received by this team member.
  • Average tip - The average tip amount per transaction (Total tips ÷ Tip count).
Expanding a team member row reveals a daily breakdown with the same Date, Tip count, Total tips, and Average tip columns for each day in the range.

Packages summary report

The Packages summary report tracks prepaid package sales and refunds, redemptions, and outstanding sessions over time. Available on plans that include packages.

Filter Options

  • Date range - The period for which package data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Date - The date for the package activity.
  • Packages sold - The number of packages sold on that date.
  • Total sold amount - The gross monetary value of packages sold on that date. A later refund never changes it.
  • Refunds - Package value returned on that date, from package purchases that were refunded in full. It lands on the day the refund was issued, not the day of the original sale - so a package sold in January and refunded in March shows in January’s Total sold amount and March’s Refunds. Only the package’s own price is reversed: on a sale that mixed a package with services, the services aren’t touched.
  • Net sold amount - Total sold amount minus Refunds. Negative on a day that only had refunds.
  • Sessions redeemed - The number of sessions redeemed on that date.
  • Sessions outstanding - Sessions sold but not yet redeemed, as of that date - the balance you still owe clients. A voided package leaves this figure (the client no longer has the sessions) but stays in Total sold amount, because voiding a package returns no money. Refunding a package purchase in full also voids the package, so its remaining sessions leave this figure too - there the money is returned, and you see it in the Refunds column.

Membership summary report

The Membership summary report tracks membership performance over time - new memberships sold, new-membership revenue, cancellations, sessions redeemed, credit added to client balances, and the total active member base. Available on plans that include memberships.
Membership summary report showing 47 active members at end of period, breakdown by plan with revenue per plan, and a daily table of new memberships, revenue, cancellations, and sessions redeemed across a 9-day window

Filter Options

  • Date range - The period for which membership activity should be displayed.
  • Compare - Against the previous period or the same period last year.

Summary Cards

  • Active members at end of period - The number of members on Active, Paused or Past due plans on the last day of the selected range. Cancelled, expired and never-activated memberships are excluded.
  • Breakdown by plan - For each plan with activity in the period, the active member count, new memberships sold, cancellations, new membership revenue, and credit added by the plan’s credit benefit.

Data Fields

  • Date - The date for the membership activity.
  • New memberships - The number of memberships activated on that date.
  • New membership revenue - The first-payment revenue from memberships activated on that date. On a plan that adds credit, this is the price minus the credit added: that part of the payment is money the client will spend later, not revenue yet.
  • Cancellations - The number of memberships cancelled or expired on that date. An online purchase the client never paid for isn’t counted.
  • Sessions redeemed - The number of session-based benefit redemptions on that date.
  • Credit added - Membership credit (the paid part and any bonus) added to client balances on that date, read from the client credit ledger.
You can export the report as CSV. For details on creating and managing plans, see Memberships.

At-risk clients report

The At-risk clients report identifies clients who may be at risk of not returning, based on how often they normally come in. If a client usually books every 4 weeks but hasn’t been in for 6, they are flagged as overdue. There is no date range on this report - it reads each client’s full appointment history, so it always reflects where things stand today.

Data Fields

  • Client - The client’s name, linked to their profile.
  • Email - The client’s email address, so you can reach out without leaving the report.
  • Appointments - How many appointments the client has had in total.
  • Usual frequency - The client’s average number of days between appointments, calculated from their appointment history.
  • Days since last - Days since the client’s most recent appointment. Amber from 30 days, red from 60.
  • Overdue - How many times over their usual gap the client now is (for example, 2× means twice their normal interval). Amber from 2×, red from 5×.
  • Lifetime spend - The client’s total spend across all their sales.
The client’s phone number is included in the CSV export as well.

How It Works

The report analyses each client’s appointment history to work out their typical gap between appointments. Cancelled appointments are excluded, and so are appointments already booked for a future date - otherwise a single upcoming booking would hide a client who has genuinely drifted away. A client is flagged as at risk when they have had at least two appointments, it has been at least 14 days since their last one, and they are at least 1.5× past their usual gap. The 14-day floor stops frequent clients being flagged the moment they’re a day late. Clients are listed highest lifetime spend first, so the most valuable at-risk clients are at the top. The totals row shows how many clients are at risk and the combined spend at stake.

Client lifetime value report

The Client lifetime value report projects the annual value of each client based on their appointment history, helping you understand which clients contribute most to your revenue. There is no date range on this report - it reads each client’s full history so the projection has as much to work with as possible.

Data Fields

  • Client - The client’s name, linked to their profile.
  • Appointments - The client’s total number of appointments.
  • Total spend - The total revenue generated from this client’s sales.
  • Avg appt value - The average revenue per appointment (Total spend ÷ Appointments).
  • First appointment - The date of the client’s first appointment.
  • Last appointment - The date of the client’s most recent appointment.
  • Predicted annual - The projected yearly revenue: average appointment value × how many appointments a year the client’s history suggests. A client with only one appointment has no established frequency yet, so this shows as zero until they come back.

Top spenders report

The Top spenders report ranks clients by their total spending, helping you identify your most valuable clients for loyalty programmes, VIP treatment, and retention strategies.

Filter Options

  • Date range - The period for which spending data should be displayed.
  • Compare - Against the previous period or the same period last year.

Data Fields

  • Client - The client’s name, linked to their profile.
  • Appointments - The number of appointments in the selected period.
  • Total spend - The total revenue from this client in the selected period.
  • Avg spend / appt - The average revenue per appointment.
  • Last appointment - The date of the client’s most recent appointment.
You can sort by any column. By default, clients are sorted by total spend (highest first).

Discount summary report

The Discount summary report tracks manual and promo-code discount usage across your sales, by date and reason.

Filter Options

  • Date range - The period for which discount data should be displayed.
  • Compare - Against the previous period or the same period last year. Both filters below apply to the comparison period too, so a filtered figure is always compared against the same cohort.
  • Source - Manual (a reason someone on your team picked) or Promo code (whether a client typed it or your team selected it).
  • Scope - Per-line (the discount names one service or one product) or Order-level (it applies to the whole order). Order-level covers an appointment bill, a walk-in sale, and an online product order - a shop order has no appointment at all, which is why the label is order-level rather than appointment-level.

Data Fields

  • Date - The date the discounts were applied.
  • Discount reason - The reason or label applied to the discount (e.g. “Loyalty reward”, “Manager override”, “First visit”).
  • Times applied - The number of times this discount reason was applied on that date.
  • Total amount - The total monetary value of those discounts.
  • Breakdown by item - Each per-line discount grouped by the service or product it named, with how often and how much.
A promo code counts as one use however many lines it discounted, so the count is redemptions rather than lines.

Use Cases

  • Identify which discount reasons are used most frequently
  • Track the financial impact of your discount policies
  • Compare discount trends across periods to spot changes in discounting behaviour

Attendance report

The Attendance report shows team member clock-in and clock-out records against their scheduled shifts. Unlike the other reports it isn’t a single table - it’s a card per day, per team member, so you can see what was scheduled, what was actually worked, and where the two don’t match. It only appears once attendance tracking is switched on in your scheduling settings.

Filter Options

  • Date range - The period for which attendance data should be displayed. Defaults to the current week, with a This week button to jump back to it.
  • Team member - Pick one team member, or leave it on all.
  • Status - Narrow to On time, Late, Missing or Active days.

Summary

Six cards sit above the day cards, covering everything that matches your filters:
  • Total worked - Total hours actually clocked.
  • Total scheduled - Total hours the team was rostered on.
  • Break time - Total time clocked out on breaks.
  • Late arrivals - The number of days a team member clocked in after their scheduled start.
  • Missing - The number of scheduled shifts with no clock-in recorded at all.
  • Estimated pay - Hours worked costed at each team member’s hourly rate. Team members without an hourly rate on their profile contribute nothing to this figure.

Day Cards

Each card covers one team member on one day and is labelled On time, Late, Missing, Active (still clocked in) or No shift. It shows the scheduled shift, hours worked and earnings for the day, with a banner spelling out how late a late clock-in was, or that a scheduled shift had no clock-in. Underneath, each individual time entry lists its clock-in → clock-out time range, duration and earnings, tagged where relevant as Manual (added by hand), Auto-closed (never clocked out) or Edited (hover to see who changed it and when). You can add, edit, close or delete entries straight from the report. The Export CSV button gives you the flat version of all this - one row per entry, with team member, date, scheduled shift, clock-in and clock-out, total hours, hourly rate, estimated pay and status - which is the format to hand to payroll.

Peak hours report

The Peak hours report shows your busiest times across the week as a visual heatmap, helping you optimise staffing, promotions, and availability.

Filter Options

  • Date range - The period for which appointment data should be analysed.

How It Works

The report builds a 7×14 heatmap (Monday-Sunday × 7am-8pm) showing the number of appointments at each hour of each day. Darker cells indicate busier times. The report also identifies your busiest 2-hour window across the entire week.

Data Fields

  • Heatmap - A grid showing appointment count per day and hour, colour-coded from light (fewer appointments) to dark (more appointments).
  • Busiest slot - The peak 2-hour window with the highest combined appointment count (e.g., “Tue 10am-12pm”).
  • Total appointments - The total number of non-cancelled appointments in the selected period. This counts every appointment, including any starting before 7am or from 9pm onwards, so it can be higher than the heatmap cells add up to.

Use Cases

  • Staffing: Schedule more team members during peak hours and reduce coverage during quiet times.
  • Promotions: Set an off-peak price for your quiet windows with Smart pricing, so the discount applies itself when clients book online.
  • Availability: Extend or reduce online booking availability based on demand patterns.

FAQs

Q: Can I export reports to CSV? A: Yes - every report has an Export CSV button except Online booking analytics, which is a multi-section funnel view rather than a single table, so there are no rows to export. The export contains all matching records (not just the current page) with formatted values. You can open CSV files in Excel or Google Sheets. Q: How do I compare performance across periods? A: Many reports include Compare, and they open on Previous period: the same number of days immediately before your selected range. Choose Same period last year to compare against the equivalent dates one year ago, or No comparison to turn it off; the reports keep your choice in that browser. Delta indicators (green/red arrows) appear on the report’s totals. Q: How do I schedule reports to run automatically? A: Automatic report scheduling is not currently available. You manually generate reports as needed. Q: Why don’t I see the Reports section? A: Reports access requires the Reports → View all reports permission. By default, Owners and Admins have it. Your account owner can grant report access to any role through Settings → Team permissions. (A team member with only Timesheets → Manage timesheets, on a business with attendance tracking switched on, sees the Reports page too - but nothing on it except the Attendance report.) Q: How far back does report data go? A: Reports can access all historical data from when you started using Bella Booking. Q: Do reports update in real-time? A: Reports show data up to the current time when you load them. Refresh the page to see the latest data. Q: Can clients see any reports? A: No. Reports are internal business tools not accessible to clients. Q: Why is a report locked? A: That report isn’t part of your current plan. Locked reports stay listed so you can see what’s available - click one and you’ll get an upgrade prompt telling you what it needs. Gift card summary, Client credit summary, Loyalty summary, Packages summary and Membership summary each need their matching feature; Referrals unlocks with Loyalty, and Birthday rewards and New client offers need a plan that includes messaging. The advanced reports (Service & product sales, Team member sales, Utilisation, Client retention, Client lifetime value, At-risk clients, Top spenders, Booking source, Peak hours, Tips summary) need a plan with advanced reports. Every report also requires the Reports → View all reports permission - see the question above. Q: Why don’t I see the Attendance report? A: Attendance is the one report hidden rather than locked. It appears once attendance tracking is switched on in your scheduling settings, and it needs the Timesheets → Manage timesheets permission rather than Reports → View all reports.
Note: Reports provide the detailed data you need for informed decision-making. Use them alongside the Dashboard for comprehensive business oversight.