The Report builder answers the questions the fixed reports don't: pick a date range and a Group by dimension, and it rolls your sales data up that way — with a table, totals, a chart, and the same CSV/Excel/PDF exports as every other report. Views you like can be saved, shared with the whole workspace, and duplicated.
It lives at Growth → Reports → Report builder and needs the same reports access as the rest of the suite.
How do I build a custom sales report?
Open the builder and set the range
The date-range picker works like every report — presets or a custom range.
Pick a Group by dimension
One of: month, week, day, location, staff, service, category, kind, or payment method. The table re-rolls immediately.
Read the result
Columns adapt to the dimension — revenue with discounts, tax, and tips for sale-level groupings; item counts and quantity for item-level ones; payment counts and amounts when grouping by payment method. A totals row anchors the bottom, and a bar chart shows revenue by group.
Save it as a view
Type a name, optionally tick share with the workspace, and click Save view. The view appears as a pill you can re-apply in one click, and its URL is bookmarkable.
Saved views
| Action | How |
|---|---|
| Apply | Click the view's pill — the builder loads its configuration |
| Share | Tick the share option when saving; shared views show for everyone with reports access |
| Duplicate | With a view applied, Options → Duplicate copies it as your own starting point |
| Delete | The ✕ on a pill — only on views you own |
Common questions
Can I combine two dimensions, like staff by month?
Not in one table — the builder groups by a single dimension. Run it grouped by staff for the month you care about, or export the Sales list and pivot in a spreadsheet.
Whose data does a shared view show?
The configuration is shared, not a snapshot — everyone who applies it sees live data through their own location scope and permissions.
What data source does it use?
Sales (completed carts). For payments, appointments, or stock questions, use the dedicated report for that domain — see Which report answers my question?.