Skip to main content
Analytics show how your messages are doing: how many were sent, delivered, opened, and clicked, for each template, journey, and broadcast. To look up a single message, use .

What the numbers count

Every analytics view uses the same metrics: Opened and Clicked only fill in on channels Courier can track, so a 0 in Opened on SMS means “not measured”, not “nobody read it”. lists what each channel reports.

Set up delivery tracking

Delivered comes from your provider, not from Courier. Each provider reports delivery once you set it up, and until then its messages stay at SENT. How you set it up depends on the provider: Slack, Microsoft Teams, and other chat providers confirm delivery when they accept the message, so they need no setup. Messages sent after you turn tracking on start filling in the Delivered column. has the full provider list.

Templates

The page shows the whole workspace:
  • Send volume: messages sent over time.
  • Template performance: sends and error rates for each template.
The Analytics page, with send volume above the template performance table
One dropdown sets the time range for both: Last 7 days, Last 30 days, Last 90 days, or Custom range. A custom range reaches back to January 1 of last year, which is as far as the analytics store goes. Select a template to see its numbers split by channel and provider. Use it to compare channels for one notification, or to spot a provider with an unusually high error rate.
One template's metrics, split by channel and provider

Journeys

Open a journey and select its Metrics tab, next to Editor and Logs. Choose Last 7 days, Last 30 days, or Last 90 days to change the chart and the table together.
A journey's Metrics tab, with the send volume chart above the template table
  • Total sent: a stacked bar chart with one bar per day and one color per journey template, so you can see which send node carries the volume.
  • Template table: one row per template in the journey.
A column shows -- when there isn’t enough data yet. Select a row to open that template’s detail panel. It has five charts (total sent, delivery rate, open rate, click rate, and error rate), a table of the same numbers per provider, and its own time range. Templates removed in a later version of the journey stay in the table with an Inactive prefix, so their history doesn’t disappear. For a journey with an A/B test, per-variant results are on the experiment’s Results tab. See .

Broadcasts

Every sent broadcast has a Performance tab.
A broadcast's Performance tab, with aggregate rates above the per-recipient log
The top of the tab summarizes the whole send: Below it, the per-recipient log lists every recipient with a timestamp and status. Filter by All, Delivered, Opened, Clicked, or Errors, or search for one recipient. Select View in logs on a row to open that message in . To send something similar again, open a past broadcast and select Duplicate broadcast. Courier copies its content and setup into a new draft.

Get the numbers by API

The returns one template’s numbers as a time series, split by provider and channel, so you can chart them in your own dashboard or alert on them.

Limits & behavior

  • Time ranges are in UTC. “Last 7 days” covers 7 UTC days, which can differ from your local reporting day.
  • Analytics are per environment. A message sent with a Test key appears only in Test.
  • Messages without a template don’t appear in template analytics. A message sent with inline content has no template to count it under.
  • There’s no roll-up by tenant, list, or audience. Template analytics are per template, and broadcast analytics are per broadcast.
  • Numbers start with the first send. A draft or scheduled broadcast has no Performance data.

FAQ

Delivery rate counts messages a provider confirmed. Most providers need delivery tracking set up first, and some never confirm, so messages sit at SENT. for each provider you send with.
Open tracking depends on a pixel that some email clients block and some security scanners load automatically. Read open rates as a trend across sends. covers why.
Analytics are scoped to the environment of the key that sent the message. Switch the dashboard to the Test environment.
The returns a template’s numbers as a time series. For a workspace-wide view, list your templates and call it for each one.