Reporting
Every number here is a query against your own database. There's no reporting delay and no sampling.
The Reporting section ranks emails, sequences, flows and broadcasts against each other; each row clicks through to a full report. The same reports are reachable from each thing's own actions menu.
What's counted, and what isn't
Two exclusions apply everywhere, and they're why the numbers are worth having.
- Test sends don't count. A test to yourself isn't a send to your list. It never appears in reports, never counts as anyone having received the email, and never affects eligibility.
- Bot hits don't count. Security scanners and link checkers open mail and follow every link within seconds of delivery. Those hits are recorded but flagged, and every reporting figure leaves them out. They still show on a person's own timeline, dimmed, so a suspicious burst is visible rather than silently discarded.
Opens and clicks are counted per person. Someone who opens an email four times opened it once.
Opens are directional. Clicks are the real signal. An open is recorded when the tracking pixel loads, and Apple Mail Privacy Protection loads it for everyone using Apple Mail whether or not they read anything. Treat opens as a trend line worth comparing against the same email last month — not as a headcount. When a number has to be right, use clicks.
Unsubscribes are attributed exactly
The unsubscribe link in every email carries a signed token naming the exact send it came from. So "this email caused four unsubscribes" is a fact, not an inference from timing — including for one-click unsubscribes from the mail client's own header.
Per email
Sends, unique opens and clicks with their rates, click-to-open rate, unsubscribes attributed to it, a breakdown of clicks by URL, and the three series over time so you can see the shape of the response.
Every email in the list carries a line saying where it's used — the date it went out as a broadcast, and the sequences and flows it belongs to — so a table of subject lines and percentages tells you what each of them actually is.
Per sequence
Runs started, finished, in progress and canceled, then every step side by side: what's queued at it, what it sent, and how it performed. Read down the steps and where a sequence loses people is obvious.
Per flow
Runs entered, completed, exited early and inside right now; where everyone is sitting; and — the column worth reading — where runs ended.
A flow with a healthy entry rate and everybody leaving down a gate's give-up path is a flow whose gate is waiting for something that mostly doesn't happen. That only shows up if exits are counted by where they happened.
Per broadcast
The same treatment as an email, scoped to that broadcast's own sends.
A broadcast handed to your provider has no per-recipient rows here, and its report says so rather than showing zeroes — no data and none happened are different claims.
Date filtering
Presets for the last 7, 30 and 90 days, all time, or a custom range. The range lives in the URL, so a report link carries its period with it and a reload doesn't reset what you were looking at.
What isn't here
Revenue attribution, cohort analysis, a custom report builder, scheduled emailed digests and deliverability dashboards are all deliberately out of v1. Payments and clicks are both local, so revenue attribution in particular is buildable later.