VoidhashDocs
DevelopersHelp centerGuidesAPI reference
Dashboard
Help center
Get started
Get access to Studio
Find your way around Studio
Glossary
Files and bots
Files and boards
Bots
Analytics
Analytics overview
Reports
Chart reference
Metric definitions
Insights and dashboards
Query with VoidQL
Alerts
Check your data
Ads
Ad measurement
Connect Meta Ads
Send purchases to Meta
Ads reports
People
Find and help a person
Groups
Cohorts
Refunds and cancellations
Products
Set up products and perks
Paywalls
Design a paywall
Prices and buttons
Design for every device
Onboarding flows
Translate a paywall
Fonts and images
Paywall components
Build and deploy
Paywall locations
A/B testing
Feature flags
A/B tests
Automations
Automations
Push notifications
Settings
Payment providers
Manage projects and teams
Members and roles
SSO and directory sync
Notices
Plans and billing
Audit log
Your account
Help
FAQ
Troubleshooting

Cohorts

Group people into cohorts, by hand or by what they do, and use them in Explore, dashboards and automations.

A cohort is a named group of your people, such as "Power users" or "Beta testers". Use one to narrow Explore and dashboards to those people, or to choose whom a scheduled automation reaches.

There are two kinds:

  • Dynamic: you describe who belongs, such as everyone who did workout_completed at least 3 times in the last 30 days. Voidhash works out who matches every time the cohort is used, so people join and leave on their own.
  • Static: a list of people you add and remove yourself, such as the testers of a beta.

A cohort's kind can't change later. To switch, create a new one.

Create a cohort

  1. Open People → Cohorts and click New cohort.
  2. Enter a Name, and choose Dynamic or Static under Type.
  3. Click Create. The cohort opens, ready for its conditions or its people.

Search cohorts finds one by name. The list shows each cohort's kind and, for a static cohort, how many people it holds. A dynamic cohort shows its count when you open it.

Describe a dynamic cohort

A dynamic cohort is a list of conditions. Under Match, choose All conditions to keep only people who meet every one, or Any condition for people who meet at least one. Click Add condition, the plus beside Conditions, and pick what it checks:

ConditionHolds for people who…
Person propertyhave a property, such as plan, that compares as you set, as it is now.
Did an eventdid an event, or didn't, a number of times in the last days you set. Optional Event property filters count only some events.
Did an event for the first timedid an event for the very first time in the last days you set.
In a cohortare in another cohort, or aren't.
Belongs to a groupbelong to a group, such as a company or team your app names on its events, whose property compares as you set.

While you edit, the panel beside the conditions shows how many people Would be in this cohort now, and the first of them. Nothing changes for charts and automations until you click Save.

How conditions read your data:

  • Counts. At least, at most and exactly count a person's events in the window. at most 2 times means once or twice: someone who never did it didn't do it at most twice. To find people who didn't do something, choose Didn't.
  • Comparisons. is and is not match a value exactly. contains, starts with and ends with compare text and ignore case. greater than and less than compare numbers. matches regex uses a regular expression. is not, doesn't contain and doesn't match regex also keep people who don't have the property.
  • Groups. A person belongs to the groups their events named in the last 90 days, and a group's property is compared as it is now.
  • Every environment. Event conditions count events from production and test alike: a person is the same person in both.

Who can be in a cohort

  • People, once they're identified. Someone who used your app without signing in isn't in any cohort. Once they sign in, what they did before counts too.
  • One person, once. When two profiles are merged into one, the person counts once, with everything either profile did.
  • Current people only. Deleted and archived people are never in a cohort, even a static one you added them to.

Add people to a static cohort

  1. Open the cohort and click Add people.
  2. Under Search, find people by name, ID or email. Or, under Paste IDs or emails, paste distinct IDs or emails, one per line or separated by commas.
  3. Click Add. Studio says how many people joined, and lists what matched nobody, such as an email no one in this project has.

An email adds everyone with that email. You can add up to 10,000 people at a time. To take someone out, choose Remove from cohort in their row. People already in the cohort stay as they are.

You can also make a static cohort from a chart: click a point, bar, funnel step or retention cell in Explore, or in a dashboard tile you've opened, to see the people behind it, then choose Save as cohort and name it. It saves everyone behind that number, not only the people listed, up to 10,000. See See the people behind a number.

Use a cohort

  • Explore. On a cohort's page, click Explore to open Explore narrowed to its people. In Explore itself, the filter menu's Cohort keeps people in a cohort, or not in it. To compare up to five cohorts side by side, choose Cohorts in a trend's Split by, or in a funnel's or retention's Breakdown. Someone in two cohorts counts in both. See Split by cohort.
  • Dashboards. A tile or a whole dashboard can filter by a cohort, like any other filter.
  • Automations. A Schedule can reach a cohort's people. For a dynamic cohort, who's in it is worked out when the schedule runs. See Automations.

Developers and AI agents can manage cohorts too, through the API (developer docs) and the MCP server.

Limits

LimitValue
Conditions in a dynamic cohort20
Window of an event condition1 to 365 days
Event property filters on one condition10
Cohorts naming cohorts3 deep: a cohort, one it names, and one that one names. Never in a circle.
People added to a static cohort at once10,000

If something's off

  • Someone you expected is missing: check they're identified, and that their events fall in the condition's window. A group condition only sees the last 90 days.
  • A cohort shows no count, or a chart using it fails: it names a cohort that was deleted. Open it and change or remove that condition.
  • Saving says cohorts can't name each other in a circle: a cohort you named leads back to this one. Name a different cohort, or copy that cohort's conditions instead.
  • Adding people reports names that matched nobody: check the spelling, and that the person has used this project's app with that ID or email.

Next steps

  • Insights and dashboards
  • Automations
  • Find and help a person

Still stuck? Check Troubleshooting, ask us on Discord, or email support@voidhash.com on a paid plan.

Something wrong or missing on this page? Tell us by email or on Discord.

PreviousGroupsNextRefunds and cancellations

On this page

Create a cohortDescribe a dynamic cohortWho can be in a cohortAdd people to a static cohortUse a cohortLimitsIf something's offNext steps