> ## Documentation Index
> Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Email message reports

> Track email delivery, opens, clicks, bounces, suppressions, and spam reports in OneSignal email message reports.

Email message reports show delivery stats, open rate, click rate, and error diagnostics for each email. Reports update in real time as recipients interact with the message.

<Note>
  If the email is sent via a Journey or using Templates, see [Journey Analytics](./journeys-analytics) or [Template Analytics](./template-analytics) for additional details.
</Note>

<Frame caption="Snapshot view of real-time email message data">
  <img src="https://mintcdn.com/onesignal/9_Q1FZLh6C0BFLq-/images/docs/c4f0241-Frame_16310.png?fit=max&auto=format&n=9_Q1FZLh6C0BFLq-&q=85&s=d811b41ef15ec7fc17978750e6d2be86" alt="Email message report showing delivery statistics and engagement metrics" width="1201" height="531" data-path="images/docs/c4f0241-Frame_16310.png" />
</Frame>

## Delivery statistics

Audience Activity and data for messages sent via the API are retained for \~30 days. To retain historical performance, export data using the Dashboard or API. See [Exporting Data](./exporting-data).

### Delivered

Understand how many recipients received your message, and why others didn't.

| Metric               | Definition                                                                                                                                                                                                                            |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Sent**             | The number of emails sent from OneSignal, including both those successfully sent to the email service provider and failures. This is a composite metric.                                                                              |
| **Audience**         | The number of Subscriptions in the targeted Segment(s).                                                                                                                                                                               |
| **Remaining**        | The number of Subscriptions in the target audience that haven't yet received the email (queued or in flight). Appears on the dashboard delivery report.                                                                               |
| **Delivered**        | The number of emails successfully delivered to the recipient's inbox server.                                                                                                                                                          |
| **Failed**           | The number of emails unable to be delivered to the inbox, excluding bounces. May include failures reported by the ESP or OneSignal delivery failures.                                                                                 |
| **Suppressed**       | The number of emails blocked due to prior bounces or spam reports to protect sender reputation. Only recorded for apps configured to use OneSignal email.                                                                             |
| **Bounced**          | The number of emails rejected due to invalid addresses, full inboxes, sender reputation, or DMARC issues. These addresses are added to a [Suppression List](/docs/en/suppressions), either managed by OneSignal or a third party ESP. |
| **Reported as Spam** | The number of recipients who marked the email as spam. These addresses are added to a [Suppression List](/docs/en/suppressions), either managed by OneSignal or a third party ESP.                                                    |
| **Unsubscribed**     | The number of recipients who opted out of receiving emails.                                                                                                                                                                           |
| **Total Opens**      | The total number of times the email was opened, including repeats.                                                                                                                                                                    |
| **Total Clicks**     | The total number of times a link in the email was clicked, including repeats.                                                                                                                                                         |
| **Unique Opens**     | The number of individual Subscriptions who opened the email. Used with Delivered to calculate the open rate.                                                                                                                          |
| **Unique Clicks**    | The number of individual Subscriptions who clicked a link in the email. Used with Delivered to calculate the click rate.                                                                                                              |

**Total vs Unique clicks and opens**

Unique clicks and opens are counted once per Subscription, regardless of how many times that user opens or clicks the same email. Total clicks and opens count every interaction, including repeats from the same user.

The following metrics are specific to email message reports:

| Name          | Description                                                                                                                                                                     |
| ------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Remaining** | Emails still queued for sending. May take up to 8 hours depending on your [Reputation](./email-deliverability) and the Inbox provider's policies (Gmail, Yahoo, Outlook, etc.). |

For detailed metric definitions across all channels, see the [Metrics Glossary](./analytics-metrics-glossary).

### Open rate

Open events are counted when the email is viewed, though privacy settings and inbox behavior may affect accuracy. See [Why are open events low?](#why-are-open-events-low)

| Name             | Description                                                                                        |
| ---------------- | -------------------------------------------------------------------------------------------------- |
| **Unique Opens** | Count of individual recipients who opened the email.                                               |
| **Total Opens**  | Total number of times the email was opened, including repeats.                                     |
| **Open Rate**    | `(Unique Opens / Delivered) * 100%`. Measures how many delivered emails were opened at least once. |

<Info>
  **Unique vs. Total Opens**

  * **Open Rate** is always based on unique opens.
  * Use **Total Opens** to see repeat engagement from the same recipients.
</Info>

<Warning>
  Open rate accuracy can be affected by inbox privacy features (e.g., Apple Mail Privacy Protection), ad blockers, and image tracking being disabled. These factors may cause opens to be **over-reported** (due to automatic image prefetching) or **under-reported** (when tracking pixels are blocked).

  For more reliable engagement insights, compare Open Rate with **CTR** and **CTOR**.
</Warning>

### Click-through rate

Measure engagement through link clicks. Click tracking can be enabled or disabled per email send. For more on link behavior, see [URLs, links, and deep links](./links) and [Email unsubscribe links and headers](./unsubscribe-links-email-subscriptions).

| Name                          | Description                                                                                                                                                                     |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Click-Through Rate (CTR)**  | `(Unique Clicks / Delivered) * 100%`. Measures how many delivered emails resulted in a click. Requires [Click Tracking to be enabled](./unsubscribe-links-email-subscriptions). |
| **Total Clicks**              | All link clicks, including repeat clicks from the same user. See [URLs, Links and Deep Links](./links).                                                                         |
| **Click to Open Rate (CTOR)** | `(Unique Clicks / Unique Opens) * 100%`. Measures how engaging the email was after being opened.                                                                                |

<Info>
  **CTR vs CTOR** — CTR measures clicks as a percentage of deliveries; CTOR measures clicks as a percentage of opens. Use both to evaluate message quality. Add UTM parameters to links for tracking in tools like Google Analytics.
</Info>

<Warning>
  If click tracking is enabled but click events are low, check for browser-level blocking (e.g., Brave or Firefox). Contact `support@onesignal.com` if the issue persists.
</Warning>

### Unsubscribed and reported as spam

Understand opt-outs and spam complaints so you can improve targeting and deliverability.

| Name                 | Description                                                                                                                    |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| **Unsubscribes**     | Number of recipients who opted out of receiving emails. Status is updated immediately.                                         |
| **Reported as Spam** | Recipients who marked your message as spam. These addresses are automatically added to the [Suppression List](./suppressions). |

<Warning>
  Monitor unsubscribe and spam rates closely. Rates that are too high can result in your app being disabled. Use segmentation and send-time optimization to reduce complaints. See [Email deliverability](./email-deliverability) and [Email reputation best practices](./email-reputation-best-practices).
</Warning>

***

## Conversions

<Info>
  **Coming soon** — [Conversion metrics](/docs/en/conversion-metrics) will be available on message reports. Once available, you will see attributed and influenced conversions for each message directly in its report. See [Conversion metrics](/docs/en/conversion-metrics) for details on the attribution model and setup instructions.
</Info>

***

## Message statistics

Analyze performance trends over time, including engagement and delivery issues.

<Frame caption="Message Statistics over 24-hour view">
  <img src="https://mintcdn.com/onesignal/56ctKxZSV4m5VEkn/images/docs/b515604ef097dd62b783a810d8d491d2e2fce84b69bddfa8877b6fb0ce65d0e6-Screenshot_2025-05-13_at_15.51.04.png?fit=max&auto=format&n=56ctKxZSV4m5VEkn&q=85&s=6e1c62efd8a9a62016c8f01f5a589de0" alt="Message statistics graph showing delivery and engagement trends over 24 hours" width="1633" height="582" data-path="images/docs/b515604ef097dd62b783a810d8d491d2e2fce84b69bddfa8877b6fb0ce65d0e6-Screenshot_2025-05-13_at_15.51.04.png" />
</Frame>

View metrics by:

* 30 days (default)
* 24 hours
* 60 minutes

You can toggle additional metrics like Bounced, ESP Failed, Sent, Spam, Suppressed, Total Clicks, and Total Opens.

Use the export icon in the top-right of the graph to download the data.

***

## Audience activity

The **Audience activity** report shows how each subscription interacted with a specific message. Results are grouped into categories so you can quickly see how recipients engaged.

<Frame caption="Audience activity tabs and table">
  <img src="https://mintcdn.com/onesignal/uUnoewrrt1DvIru9/images/push/audience-activity.png?fit=max&auto=format&n=uUnoewrrt1DvIru9&q=85&s=1568714f2133e3e9ef98c36de476e28f" alt="Audience activity screenshot" width="2150" height="402" data-path="images/push/audience-activity.png" />
</Frame>

<Tabs>
  <Tab title="Categories">
    | Category                     | Description                                                |
    | ---------------------------- | ---------------------------------------------------------- |
    | **Sent**                     | Message was sent to the device.                            |
    | **confirmed receipt**        | Delivery was confirmed by the device.                      |
    | **Did not confirm delivery** | Delivery confirmation was not received.                    |
    | **Clicked**                  | User clicked the notification.                             |
    | **Did not click**            | User did not click the notification.                       |
    | **Failed**                   | Delivery failed.                                           |
    | **Unsubscribed**             | The subscription unsubscribed after receiving the message. |

    Each tab displays the number of recipients in that category and lets you drill into the individual subscription records.
  </Tab>

  <Tab title="Table columns">
    | Column                  | Description                                                       |
    | ----------------------- | ----------------------------------------------------------------- |
    | **External ID**         | Your system identifier (if set).                                  |
    | **OneSignal ID**        | Unique OneSignal user ID.                                         |
    | **Subscription ID**     | Unique subscription instance (device + app/browser).              |
    | **Device**              | Browser or OS type. If you see `()`, the device has been deleted. |
    | **Subscription status** | Current status (for example, Subscribed, Unsubscribed).           |
    | **Sent**                | Time the message was sent.                                        |
    | **confirmed receipt**   | Time delivery was confirmed by the device.                        |
    | **Clicked**             | Timestamp if the user clicked, or `-` if not.                     |
    | **Failed**              | Indicates if delivery failed.                                     |
    | **Unsubscribed**        | Indicates if the user unsubscribed after receiving the message.   |
    | **Failure message**     | Error message if delivery failed (for example, “Invalid token”).  |
  </Tab>
</Tabs>

<Note>
  Audience activity data is only available for **30 days** from the time the message is sent. Export results if you need to retain them longer.
</Note>

***

### Why audience activity is helpful

Audience activity helps you go beyond delivery counts by showing which specific users fall into each outcome. Use it to:

* **Diagnose delivery issues** by reviewing failed or unconfirmed deliveries.
* **Measure engagement** by comparing clicks vs. non-clicks.
* **Track churn** by identifying unsubscribes tied to a message.
* **Segment audiences** for retargeting or export.

***

### Exporting results

You can download audience data with the **Export** menu:

* **Selected activity** – exports only the currently viewed tab (for example, all users who did not click).
* **All activities** – exports the full report across every category.

Exports let you analyze results offline, share with other teams, or merge with your CRM and analytics tools.

***

### Retargeting users

From any tab, click **Send a retargeted message** to act on that specific group.

You can send:

* **New push**
* **New SMS**

This allows you to follow up with only the users in the selected activity group.

#### Example use cases

* Send a retargeted push to users in **Did not click**.
* Send an SMS to users in **Did not confirm delivery** who may not be reachable via push.
* Follow up with **confirmed receipt** users to encourage further engagement.

***

### Example workflow

<Steps>
  <Step title="Open the Did not click tab">
    Navigate to the **Did not click** tab in Audience activity.
  </Step>

  <Step title="Review the list of subscriptions">
    Check which subscriptions received the notification but did not engage.
  </Step>

  <Step title="Send a retargeted message">
    Click **Send a retargeted message → New push** to follow up with this segment.
  </Step>

  <Step title="Export for deeper analysis">
    If needed, export the audience activity for offline analysis or multi-channel targeting in a journey.
  </Step>
</Steps>

***

## Click activity

The Click Activity section shows a per-link breakdown so you can see which links were clicked and how often. Metric definitions (Unique Clicks, Total Clicks, CTR) are the same as in [Click-through rate](#click-through-rate) above.

<Info>
  **Auto Warm Up campaigns:** Emails sent through [Auto Warm Up](./email-warm-up) after February 2, 2026 show individual click stats for each link. For warm-up campaigns sent before that date, all link clicks are grouped under "All other links."
</Info>

***

## FAQ

### Why are my email stats showing zero opens or clicks?

The most common cause is missing CNAME DNS records. Without CNAME records configured for your sending domain, OneSignal cannot track opens, clicks, or unsubscribes — these metrics stay at zero even though emails are being delivered.

To verify your DNS records are set up correctly:

1. Go to **Dashboard > Settings > Email > Senders**.
2. Select your sending domain and check for a green checkmark next to each DNS record, especially the CNAME records used for click and open tracking.
3. If any records show as missing or unverified, follow the [Email DNS configuration](./email-dns-configuration) guide to add them.

<Note>
  After adding or updating DNS records, allow up to 48 hours for propagation. Opens and clicks are only tracked for emails sent **after** the records are verified — previously sent emails are not retroactively updated.
</Note>

If your CNAME records are verified and you still see zero opens, check whether inbox privacy features are blocking tracking. See [Why are open events low?](#why-are-open-events-low) below.

### Why are my emails marked as failed?

Failure reasons are shown in the Audience Activity export. Common causes include:

* Misspelled or non-existent domains (e.g. `@gmial.com`)
* Email addresses already on your ESP’s suppression list
* Using [Custom Unsubscribe Links](./unsubscribe-links-email-subscriptions) without also unsubscribing via [Update User API](/reference/update-user) or [CSV Upload](./import#csv-upload)
* Previously bounced addresses
* Inboxes throttling un-warmed sender domains (see [Warm-up Guide](./email-warm-up))

### Why are open events low?

Inbox privacy features (e.g., Apple Mail Privacy Protection), ad blockers, and disabled image loading can prevent open events from being recorded. Open tracking is not 100% reliable — test on multiple devices and networks for comparison. See the [Open rate section](#open-rate) for details on how privacy features affect accuracy.

### Why do I see emails in Pending?

Two main reasons:

1. **Scheduled delivery:** Especially if auto warm-up is enabled, delivery is spread out.
2. **Pending confirmation:** Some inboxes delay event feedback up to 8 hours.

If the message stays in Pending, it's likely sent but not confirmed. Check **Sent at** in Audience Activity for clues.

### How do I export audience activity data?

In the email message report, scroll to **Audience Activity** and click **Export CSV**. The export includes per-recipient delivery status, timestamps, click events, and failure reasons.

### What is the difference between Bounced and Suppressed?

**Bounced** means the recipient's mail server rejected the email (e.g., invalid address or full inbox). **Suppressed** means OneSignal proactively blocked the send because the address was already on the [suppression list](./suppressions) — for example, from a previous bounce, spam complaint, or unsubscribe.

***

## Related pages

<Columns cols={2}>
  <Card title="Email deliverability" icon="envelope-circle-check" href="./email-deliverability">
    Understand factors that affect inbox placement and how to improve them.
  </Card>

  <Card title="Email reputation best practices" icon="shield-check" href="./email-reputation-best-practices">
    Maintain strong sender reputation and avoid spam filters.
  </Card>

  <Card title="Suppressions" icon="ban" href="./suppressions">
    View and manage bounced, unsubscribed, and spam-reported addresses.
  </Card>

  <Card title="Template analytics" icon="chart-bar" href="./template-analytics">
    Review aggregate performance metrics across all sends of a template.
  </Card>

  <Card title="URLs, links, and deep links" icon="link" href="./links">
    Configure link behavior, click tracking, and deep linking in messages.
  </Card>

  <Card title="Email warm-up" icon="temperature-arrow-up" href="./email-warm-up">
    Gradually ramp sending volume to establish domain reputation.
  </Card>

  <Card title="Email DNS configuration" icon="server" href="./email-dns-configuration">
    Add SPF, DKIM, DMARC, and CNAME records to enable tracking and authentication.
  </Card>
</Columns>
