# Retention and audience

The Product screen’s Audience tab answers who uses your app and whether they come back: retention by cohort, the releases they were on, each identified user, and every session.

> **Needs identify()**
>
> Retention, releases and users are worked out from what you pass to `identify()`. Sessions without it still count everywhere else. See [Product analytics](https://squiggle.sh/docs/product).

## Retention

Each row is a cohort: the users first seen on one day, or in one week. Each column is a later day or week, and the cell is the share of that cohort who came back then. A period that hasn’t arrived yet is left empty rather than shown as 0%, so a new cohort doesn’t look like one nobody returned to.

A cell counts the people active in that week, not by that week, so a later column can be higher than an earlier one. Pick a cell to see who it counts:

## The rest of the tab

| Section | What it shows |
| --- | --- |
| Releases | Each version your sessions ran, with when it first appeared and how many sessions it has, so you can line a change in the numbers up with a release. Read from the release, appVersion or version trait, in that order. |
| Users | Each identified user with their traits, session count, total time and when they were last seen. A user is marked at risk when they have been away for three times their usual gap between sessions. |
| Sessions | Each session with its length, user, screens and actions. Expand one to see its screens, actions, gestures and errors on one timeline, or open it on the Performance screen. |

## From the terminal

```shell
squiggle product retention --weekly   # weekly cohorts instead of daily
squiggle product releases             # each release, when it first appeared, and its sessions
squiggle product users                # identified users, with an at-risk flag
squiggle product sessions --limit 50  # the newest 50 sessions
```
