Reports
The five catalogue reports, CSV export, run history, and what a scheduled delivery actually sends
A Report is a named, read-only view of a dataset: a table of entries plus a summary above it. Reports generate on demand and download as CSV, and a ReportSchedule sends a recurring digest to your team. This page covers the catalogue, the export, and the delivery limits you should know before promising a CSV by email.
Reports
Five
Orders, Attendance, Traffic, Attribution, Activity
Format
JSON or CSV
Runs
Recorded after generating
Schedules
Daily, weekly, monthly
Send hour
0 to 23, UTC
Digest
Summary email
No CSV attachment today
The catalogue
The catalogue is fixed. A Member sees only the reports their capabilities allow.
| Report | Capability | Rows | Summary |
|---|---|---|---|
| Orders | orders.read | Day, Orders, Gross | Confirmed Orders, gross, net, AOV |
| Attendance | checkin_sessions.read | Funnel stage, Count | Expected, checked in, no-shows |
| Traffic | events.read | Source, Medium, Views, Visitors | Views, visitors |
| Attribution | events.read | Source, Medium, Orders, Gross | Attributed Orders, attributed gross |
| Activity log | audit.read | When, actor type, actor, action | Total entries |
Two shapes surprise people.
- Orders is daily, not one row per Order. It gives one row per day with the count and gross for that day. Use the Orders screen when you need individual Orders.
- Attendance is a funnel, not a list of people. Its rows are issued, viewed, and checked in. Use the Check-in log when you need names and times.
The Activity log returns up to 1000 rows per generation and reports the full total separately.
Generating a report
A report takes an optional Event and an optional date window. It does not take a search term.
- Without an Event, the report covers the whole Organization.
- Without dates, the window starts at the beginning of time and ends now.
- A date range is inclusive at the start and exclusive at the end.
- The same filters produce the same rows, so a repeat is reproducible.
CSV export uses the same generated result as the on-screen table. The file is named after the report key, such as orders.csv, and contains a header row and the entry rows. The summary is not repeated in the CSV; it is what the screen shows above the table.
CSV is money in minor units
Money columns are written as whole minor units, not formatted currency. A gross of 125000 in the Orders report means 1,250.00 in the Order currency. Format the column in your spreadsheet.
Runs
Generating a report can also record a run. A run stores the report key, the requester, the row count, and the summary.
| Status | Used today? |
|---|---|
| Succeeded | Yes |
| Pending | No |
| Running | No |
| Failed | No |
The run table allows all four, but the product only writes a succeeded run after a successful generation.
This is the honest failure path: if generation fails, the request returns an error and no run row exists. There is no background job to check later and no failed-run record to inspect. Retry the generation with the same filters.
A run does not store the CSV artifact. The CSV is produced from the current data at the moment you ask for it, so generating the same run later can legitimately produce different numbers if Orders changed in between.
Scheduled reports
A schedule belongs to one Organization and carries:
- the report key and a name,
- a cadence of daily, weekly, or monthly,
- a send hour from 0 to 23, in UTC,
- recipients,
- an enabled flag.
The report key cannot be changed after creation. To change the report, delete the schedule and create another.
Recipients can be Organization Members and external email addresses. The form accepts both.
What a schedule does
- Claims the schedule when its next run time is due.
- Advances the next run time for its cadence.
- Emits one digest per consented Member recipient.
- Deduplicates within the same day, ISO week, or month.
What it does not do
- It does not generate or attach a CSV.
- It does not deliver to external email addresses.
- It does not follow the cadence window in the content.
- It does not send to a Member without digest consent.
What the digest contains
The digest is an email with the report title and a short list of its summary metrics. The period label says "the last 30 days", regardless of whether the schedule is daily, weekly, or monthly.
There is no CSV attachment, no secure link, and no row data. Money is formatted with a rupee symbol.
The digest reads the report at send time, so the numbers are current. But a daily schedule and a monthly schedule both show a 30-day summary today.
A Member becomes a digest recipient when they are added to a schedule, which records their consent. An absent or revoked consent stops future digests. A recipient who never consented is skipped before a delivery is created, so there is no failure record for them.
Do not promise a CSV by email yet
If someone needs the file on a cadence, schedule the reminder and download the CSV manually, or use the report screen. The scheduled path sends a summary, not a file.
Pausing and deleting
A paused schedule keeps its last slot until it is resumed; it does not catch up on missed runs. Resuming recomputes the next run from the resume time.
Deleting a schedule stops every future delivery immediately. It cannot be undone.
What is not available
- No custom report builder, saved views, or ad-hoc columns.
- No PDF, Excel, or JSON download beyond the on-screen JSON.
- No asynchronous large export, artifact window, or download history.
- No forecasting or cohort retention curves.
- No per-row report of Orders, Participants, or Registrations in this catalogue. Those live on their own screens.
Related
- Metrics — the definitions the reports reuse
- Notifications — how the digest is delivered
- Insights — the dashboards
- Export your data — the organizer walkthrough