Skip to main content
Use the Retention chart on the OneSignal dashboard to see what percentage of your users came back on the days after they were active.
Retention is in Beta and will be available to all accounts soon.
Navigate to Dashboard > Analytics > Retention to view the chart.

How the cohort works

Start by picking a date. Everyone who had a session that day becomes your cohort, and that group stays fixed for the rest of the window, even if their Subscriptions change afterward. The date you picked is Day 0, so the curve starts at 100% as long as anyone was active that day. Every point after it is the share of that same cohort who came back on that day. Each day is measured on its own, so someone who goes quiet for a day and returns later still counts on the day they return. A user counts as active on any day they had at least one session. A session begins each time a user opens your app or website from a fully closed state, or reopens it after being in the background for at least 30 seconds. Returning within 30 seconds continues the current session instead of starting a new one. Retention counts every session, whether or not a message gets credit for it. See Sessions to learn more about how OneSignal tracks sessions. Retention counts users, not Subscriptions. Someone who uses your app on a phone and a laptop counts once.

Chart metrics

The chart plots three values for the cohort you select.

Filters

Use the controls above the chart to pick a cohort and choose how far forward to measure. Channel series reflect the channels a user is subscribed to on the cohort start date, not the channel a session came from. The series overlap and do not add up to the total, so a user subscribed to both push and email appears in the push series and in the email series. Users with no subscribed channels appear in their own series. OneSignal fixes the cohort on the cohort start date. A user who subscribes to a new channel or adds a device later in the window does not join the cohort retroactively.

Data availability

Keep these limits in mind when you pick a cohort start date.
  • Retention data is available from July 24, 2026. You cannot select an earlier cohort start date.
  • Retention is not backfilled, so cohorts before that date are not available.
  • Days are UTC calendar days and are the same for every app.
  • The most recent cohort start date you can pick is yesterday (UTC), because a day has to finish before it counts.
  • The curve ends at the last complete day rather than continuing at 0%. A window that is still in progress shows a shorter line.
  • A window of N days covers Day 0 through Day N, so a 7-day window plots 8 points.

Export chart data

Export the chart to CSV using the export button at the top right. The file contains the retention rate for each day in the window. Exporting requires a plan that includes CSV report export.

FAQ

Does retention show message opens and clicks?

No. Retention only shows whether users came back to your app, and it counts every session whether or not a message gets credit for it. For delivery, open, click, and unsubscribe rates, use Engagement trends. To connect specific messages to what users did next, use Conversion metrics.

Why is my retention chart flat at 0%?

No users had a session on the date you selected, so the cohort is empty and every day in the window divides by a cohort of zero. Try a more recent date, or one you know had activity. Retention data begins on July 24, 2026 and is not backfilled, so the earliest cohorts you can build start on that date.

Why does the line stop before the end of the window?

Retention only counts complete days. If you pick a cohort start date five days ago with a 30-day window, the last complete day is Day 4, so the chart plots five points (Day 0 through Day 4) and the line ends there. It is not a forecast, and the remaining days fill in as each day completes.

Why is Day 0 100%?

The cohort is defined as the users who had a session on the cohort start date, so all of them were active by definition on Day 0. The exception is a cohort with no users. If nobody was active on the date you picked, cohort size is 0 and the chart plots a flat 0% line across the whole window rather than starting at 100%.

If a user skips a day, are they excluded from later days?

No. OneSignal counts each day independently. Take a user who is active on Day 0, inactive on Day 2, then active again on Day 3. That user does not count on Day 2, because they had no session that day. They count again on Day 3.

Why don’t the channel series add up to the total?

A user can be subscribed to more than one channel, and each channel series counts every user subscribed to that channel. Someone subscribed to push and email counts in both series, so the series overlap by design.

What timezone are the days measured in?

UTC. Day boundaries are the same for every app and cannot be set per app.

Why do I see sessions elsewhere in the dashboard but no retention data?

Retention data only started being tracked on July 24, 2026. Sessions from before that date appear in other reports, but they were never recorded for retention, so any cohort starting before July 24, 2026 is empty. See Sessions for where else session data appears.

Interpreting retention curves

Read curve shapes, compare cohorts, and understand the methodology behind the chart.

Sessions

How OneSignal defines a session and aggregates session data across a user’s devices.

Subscription trends

Track how your subscribed audience grows and declines by channel.

Metrics glossary

Canonical definitions for every metric across the dashboard, API, CSV, and Event Streams.