Skip to content

Reports

Reporting and AnalyticsApril 21, 2026·12 min read·Updated May 25, 2026

Reports let you build custom data exports across seven report types: customers, events, transactions, purchases, payments, promo codes, and custom fields. Each report is a saved configuration (type + selected fields + optional date range + access rules) that you can run repeatedly to get fresh data. Running a report opens a table view with filters, pagination, and CSV download.

Getting started

Navigate to Reporting and analytics > Reports from the sidebar.

How it works

Reports has three pages:

  • Reports list — every saved report with its type, date range, creator, and last-run info. Actions: Run, Edit, Delete
  • New report — create a report by picking a type, selecting fields, setting an optional date range, and choosing who can view and edit
  • Generated report (/reports/run?id=) — the results view, with per-field filter popovers, per-page controls, refresh, and CSV download

Reports are run on demand. The list shows the last-generated-by user and timestamp so teammates know how fresh the data is.

Step-by-step guide

Create a report

  1. Open Reporting and analytics > Reports
  2. Click Create custom report
  3. On the New report page, enter a Name and optional Description
  4. Select a Report type from the radio list on the right (see the Reference section below for what each type covers)
  5. In the Fields list (to the right of the type), check the boxes for the columns you want
  6. Drag fields to set the column order in the output
  7. (Optional) Set a date range (see the next section)
  8. (Optional) Configure access
  9. Click Create

The report appears on the list and can be run immediately.

Set a date range

  1. In the editor, toggle Show results for a given date range
  2. Pick a time period from the dropdown (17 options; see Time range options in the Reference section below)
  3. If you choose Custom range, set Start date and End date using the date pickers
  4. Save the report

The info icon next to the date-range toggle shows which field the range filters by for the selected report type.

Configure access

  1. Accessible to everyone is on by default. Leave it on to let anyone with global report permissions use this report
  2. Turn it off to restrict access. Add users to Viewers (can run, not edit) and/or Editors (can run and edit)
  3. Save the report

Run a report

  1. On the reports list, open the three-dot menu on the report
  2. Select Run report
  3. The generated-report page opens with your results in a table
  4. Use the filter popovers above the table to narrow the data (each field has its own popover; enter a value and click Update)
  5. Use the per-page selector to adjust pagination
  6. Click the refresh icon to re-query with current filters
  7. Click the download icon to export the current filter result as CSV

Tip: Filters on the generated-report page are applied client-side or via re-query (depending on the field). The CSV download reflects only the rows matching the active filters.

Download CSV from a generated report

  1. On the generated-report page, apply any filters you want
  2. Click the download icon (cloud with down-arrow)
  3. A progress bar appears showing download progress. Click Cancel download to abort
  4. The CSV file downloads to your device

The download action requires the download_data permission. Without it, the icon is hidden.

Edit a report

  1. On the reports list, open the three-dot menu
  2. Select Edit report
  3. Update any field, date range, or access setting
  4. Click Save

Delete a report

  1. On the reports list, open the three-dot menu
  2. Select Delete report
  3. Confirm in the dialog

Deletion is permanent; you can't recover a deleted report.

Reference

Reports list columns

ColumnWhat it shows
NameReport name with description underneath
TypeBadge with the report type (Customers, Events, Transactions, Purchases, Payments, Promo codes, Custom fields)
Date range"All time", a named range (e.g., "Last 7 days"), or "from-to" dates for a custom range
Created byCreator's name and the creation date/time
Last generated byWho last ran the report and when. Shows "-" if never run
ActionsThree-dot menu with Run / Edit / Delete

Three-dot actions

ActionShown when
Run reportAlways. Opens the generated-report view
Edit reportViewer has write permission on the report (can_write !== 0)
Delete reportViewer has write permission. Confirms before deleting

Report types

Report typeWhat it covers
CustomersCustomer profiles with contact info, addresses, preferences, credit balance, and experience level
EventsCompleted event sessions with times, event host, experience level, interactions, breakages, and notes
TransactionsAll transactions with amounts (subtotal, tax, fee, discount, paid, due, refunded, total), status, customer, tips, promo codes, and source
PurchasesIndividual purchase line items within transactions (tickets, merchandise, gift cards, and add-ons)
PaymentsIndividual payments with method, card info, gateway transaction id, amount, refund amount, and who collected the payment
Promo codesPromo codes with value, redemption type, usage count, combinability, and attached events
Custom fieldsCustomer responses to custom fields from any source (booking site, internal booking, or waiver), with field name, type, response, response time, source, waiver id, and customer info

Fields by report type

Field names appear in the editor with underscores replaced by spaces and the first letter capitalized (for example, the stored customer_phone field shows as "Customer phone" in the UI).

Customers (18 fields)

FieldDescription
First nameCustomer's first name
Last nameCustomer's last name
EmailPrimary email address
PhonePrimary phone number
BirthdayDate of birth
Address line 1Street address, line 1
Address line 2Apartment, suite, or unit
CityCity
StateState or province
ZipZIP or postal code
CountryCountry
Date joinedDate the customer first interacted with your company
Date last visitedDate of the customer's most recent visit
Referral sourceHow the customer heard about you (captured on waivers or booking forms)
Customer creditCurrent store-credit balance on the customer's account
Opted out of receiving emailsWhether the customer has opted out of marketing emails
Opted out of posting photosWhether the customer has opted out of public photo sharing
Player experience levelExperience tier recorded on the customer's waiver or during check-in

Events (13 fields)

FieldDescription
Event nameThe event the session was for
Group nameThe company group the event belongs to
Start timeScheduled start time of the session
End timeScheduled end time of the session
Booking dateDate of the underlying booking
Booking timeTime of the underlying booking
Event hostStaff member who hosted the session
CompletedWhether the session was marked complete
Team experience levelExperience level assigned to the team for this session
Pre-event notesNotes recorded by the host before the session started
Post-event notesNotes recorded by the host after the session finished
Number of interactionsCount of interactions (hints, clues) given during the session
Number of breakagesCount of equipment breakages or issues logged during the session

Transactions (23 fields)

FieldDescription
Transaction idOrder number for the transaction
Transaction dateDate the transaction was created
SourceWhere the transaction originated (public booking site, internal booking, etc.)
Customer first nameCustomer's first name
Customer last nameCustomer's last name
Customer emailCustomer's email
Customer phoneCustomer's phone number
Group nameCompany group the transaction belongs to
PricePre-tax subtotal
TaxTotal tax collected
FeeTotal fees collected
DiscountTotal discount applied
PaidAmount paid toward the transaction
DueAmount still outstanding
RefundedAmount refunded
TotalFinal total (price + tax + fee − discount)
StatusTransaction status (paid, partial, refunded, voided, etc.)
TipsTotal tips collected on this transaction
Tip dateDate the tip was recorded
Tip assigneesStaff members the tip was assigned to
Promo codesPromo codes applied to the transaction
Purchases in transactionSummary of the items (tickets, merchandise, gift cards) on the transaction
Transaction notesInternal notes recorded on the transaction

Purchases (22 fields)

FieldDescription
Transaction idParent transaction's order number
Purchase nameItem or ticket name
Purchase typeType of purchase (booking, gift card, merchandise, add-on)
Purchase timeTime the purchase was made
Booking dateDate of the associated booking (when the purchase is tied to a booking)
Booking timeTime of the associated booking (when applicable)
QuantityNumber of units on this line
PriceLine price
Customer first nameCustomer's first name
Customer last nameCustomer's last name
Customer emailCustomer's email
Customer phoneCustomer's phone number
Group nameCompany group the purchase belongs to
SourceWhere the purchase originated (public booking site, internal booking, etc.)
TaxTax on this line
FeeFee on this line
DiscountDiscount on this line
Promo codesPromo codes affecting this line
TipsTips assigned to this line
Tip assigneesStaff receiving tips on this line
StatusLine-item status
Transaction has due amountWhether the parent transaction still has an outstanding balance

Payments (14 fields)

FieldDescription
Transaction idThe transaction the payment applies to
First nameCardholder first name (or payer name for non-card methods)
Last nameCardholder last name
Payment methodHow the payment was made (card, cash, check, external)
Card typeCard brand (Visa, Mastercard, Amex, etc.) when applicable
Last fourLast four digits of the card
ExpiryCard expiration date
Purchase timeWhen the payment was recorded
PaidAmount paid in this payment
RefundedAmount refunded from this payment
Payment gateway transaction idGateway-side reference (for card payments)
Payment collected byStaff member who recorded the payment
Group nameCompany group the payment belongs to
Purchases in transactionSummary of items on the parent transaction

Promo codes (12 fields)

FieldDescription
Promo code nameThe internal name for the code
DescriptionWhat the code does
Value typePercentage or fixed amount
Value amountDiscount amount (percentage or currency)
QuantityMaximum number of uses (when limited)
Number of times usedCurrent redemption count
Redemption typeRedemption rules (per-customer, per-booking, global, etc.)
Can be combinedWhether the code stacks with other promo codes
Internal onlyWhether the code is restricted to staff-created bookings
Applicable to miscellaneous itemsWhether the code applies to non-event items (merchandise, add-ons)
EventsEvents the code applies to
Group nameCompany group the code belongs to

Custom fields (12 fields)

FieldDescription
Custom fieldThe field label from your custom fields library
Custom field typeCheckbox, Input field, or Dropdown
ResponseThe customer's answer
Response timeWhen the response was submitted
SourceWhere the answer came from: waiver, transaction (booking-site cart), or internal_booking
Waiver idFor waiver-source answers, the id of the waiver the response was attached to. Lets you trace an answer back to a specific signed waiver. Empty for transaction and internal_booking rows
Transaction idFor transaction-source answers, the transaction the response is associated with. Shows "-" for waiver-source rows in both the on-screen table and the CSV export
Customer first nameCustomer's first name
Customer last nameCustomer's last name
Customer emailCustomer's email
Customer phoneCustomer's phone number
Group nameCompany group the response belongs to

Time range options

When Show results for a given date range is enabled, the dropdown shows the same 17 options used across the platform:

GroupOptions
Rolling windowsToday, Last 24 hours, Last 7 days, Last 30 days, Last 365 days
Completed periodLast week, Last month, Last quarter, Last year
Current periodThis week, This month, This quarter, This year
Period-to-dateMonth to date, Quarter to date, Year to date
CustomCustom range, which shows Start date and End date pickers

What the date range filters by depends on the report type:

Report typeDate range filters by
CustomersFirst interaction date with your company
EventsEvent session submission date
TransactionsTransaction creation date
PurchasesPurchase date
PaymentsPayment date
Promo codesConfigured event date range on the promo code
Custom fieldsResponse submission date

Access and permissions

SettingDescription
Accessible to everyoneAnyone with global report permissions can run and edit this report
ViewersSpecific users who can run (but not edit) the report
EditorsSpecific users who can run and modify the report

A user can be added to both Viewers and Editors; editor access implies viewer access.

Generated report (the Run view)

When you click Run report, the generated-report page opens. Key elements:

ElementPurpose
Report titleThe report's name
Filter popoversOne per field that supports filtering; open, enter a value, click Update to re-query. Reset clears a single filter
Refresh iconRe-runs the query with current filters
Total results countShows the row count
Download iconDownloads the current filter result as CSV (requires download_data permission)
Per-page selectorChanges page size and re-queries
Results tableAll selected fields, with special formatting for dates, currency, phone, and status
Downloading progress barAppears during CSV export with a Cancel download button

Good to know

  • Reports are saved configurations, not one-time exports. Run them repeatedly to get fresh data.
  • Field order matters. Drag fields in the editor to match the column order you want in both the table and the CSV.
  • Each report type exposes a different set of fields. Switching the report type clears your field selection and reloads the available fields.
  • The Last generated by column on the list shows who last ran the report and when, which is useful for teammates to know how fresh the displayed snapshot is.
  • The Source field on Transactions and Purchases tells you where the record originated (public booking site, internal booking, etc.).
  • Filters on the generated-report page are per-field popovers. Some filters accept free text (customer name), some multi-select (events, groups), some ranges (numeric, date).
  • The Transaction has due amount field on Purchases is a boolean flag useful for isolating unpaid line items.
  • Running large reports (e.g., all-time transactions) can take time. The page shows a spinner while loading; don't navigate away until the table renders.

FAQ

Q: Can I schedule reports to run automatically?

A: Reports are currently run on demand. Click Run report whenever you need fresh data.

Q: What format is the report output?

A: The generated-report page shows data in a filterable table. Click the download icon for a CSV export that reflects your current filters.

Q: Can I create a report that combines multiple types (e.g., customers and transactions)?

A: Each report covers one type. Create separate reports for each type and combine the data externally if needed. The Transactions report includes customer first/last name, email, and phone, and the Purchases report pulls in similar customer fields, so cross-referencing is possible within a single report for many common use cases.

Q: Can the date range be different per run?

A: The date range is saved on the report. To change it, edit the report. Filters on the generated-report page work on the already-queried result set; the date range is part of the underlying query.

Q: Why does a field not appear in the filter list on the generated report?

A: The generated-report page shows filter popovers for fields commonly filtered. Uncommon fields may not have a filter popover. If you need to filter on a specific field not exposed, download the CSV and filter in a spreadsheet.

Q: What's the difference between Transactions and Purchases?

A: A transaction is the order as a whole (total, customer, payment status). Purchases are the line items within transactions (individual tickets, merchandise, or gift cards). Use Transactions for order-level analysis, Purchases for SKU-level detail.

Q: Why can't I download the CSV?

A: Your role may not have the download_data permission. The download icon is hidden without it. Ask an admin to add the permission in Settings > User management.

Q: How is the Custom fields report different from the others?

A: The Custom fields report returns one row per customer response to a custom field. Use it to audit answers across bookings, waivers, and internal bookings — especially for fields marked "interaction required" or "alert on booking calendar" in your custom fields library. Filter on the Source column to focus on a single channel (waiver, transaction, or internal_booking), and use Waiver id to trace any waiver-source answer back to the specific signed waiver.