Anatomy of an Audience
Rules and Conditions
An audience’s rules define membership. Each rule tests a variable against a value using an operator. Rules are combined with AND or OR at the top level.Variables
You can target on two categories of attributes:-
System variables — Built-in device and app properties available for all users. Examples:
locale.currentCountry— The user’s countrydeviceInfo.systemVersion— OS version (supports semver comparisons)applicationInfo.version— App version (supports semver comparisons)applicationInfo.heliumSdkVersion— Helium SDK version- Device type, OS name, language, and more
- Custom user traits — Properties you pass to the Helium SDK from your app (e.g., subscription_tier, days_since_install, has_completed_onboarding). These are fully custom and scoped to your organization.
Operators
Available operators depend on the variable type:
Multi-value selection is supported for
= and != on string variables (e.g., country is one of US, CA, GB).
Example Rules
-
US users on iOS 17+:
locale.currentCountry = US AND deviceInfo.systemVersion >= 17.0 -
Power users:
custom.days_since_install > 30 AND custom.sessions_count > 50 -
Non-subscribers:
custom.subscription_tier not exists
The “All Users” Audience
Helium has a special system audience called All Users. It matches every user unconditionally.-
Stored as a real audience record with empty rules
({ operator: "AND", rules: [], isAllUsers: true }). - Created automatically the first time you scope an experiment to “All Users.”
- Hidden from the standard audiences list — it only appears when selecting audiences for experiments or workflow targeting.
- In analytics queries, it translates to no filtering.
Lifecycle of an Audience
1
Create
Audiences can be created in several ways:
- From the Targeting page — Use the audience builder with the full rule editor.
- From experiment creation — The audience selector lets you create a new audience inline while setting up an A/B test.
2
Use In Targeting
Once created, audiences are available in two places:
- Workflow targeting criteria — Map an audience to a paywall, experiment, or “no paywall” action. Rules are evaluated in order; the first matching audience wins.
- Experiment scoping — Scope an experiment to a specific audience so only matching users are enrolled.
3
View Metrics
Each audience shows real-time metrics computed from your analytics data:
These metrics are computed on-demand from ClickHouse — they’re not cached or pre-aggregated, so they reflect current data. During experiment creation, Helium shows an “estimated exposed users per day” based on these metrics to help you gauge experiment reach.
4
Edit
You can update an audience’s name, description, and rules at any time. Changes apply to all workflows and experiments referencing that audience. Keep in mind that changing rules alters who qualifies — if you narrow the rules, some users currently seeing a paywall may stop matching.
5
Delete
An audience can only be deleted if it is not currently referenced by any workflow’s targeting criteria. If it’s in use, you’ll need to remove it from the workflow first. Deletion is permanent.
Stripe Targeting Constraints
If a workflow or experiment includes paywalls with Stripe products, the audience must meet specific targeting requirements. “All Users” does not qualify for Stripe targeting because Stripe paywalls only work for a subset of users (Apple Pay enabled, US App Store). You’ll need to create a more targeted audience that filters for eligible users. Helium validates this automatically and shows a warning if Stripe targeting constraints aren’t met.Integration with Workflows
Audiences connect to workflows through targeting criteria — an ordered list of rules on the workflow:- For each rule: “If the user is in [audience], then [show paywall / run experiment / show nothing].”
- Rules are evaluated top-to-bottom. The first matching audience determines the outcome.
- Users who don’t match any audience rule see the workflow’s control paywall.
Key Rules
- Audience names are unique per organization (case-insensitive).
- Rules use AND/OR logic with system variables and custom user traits.
- The “All Users” audience is a system audience — it’s created automatically and hidden from the standard list.
- Audiences cannot be deleted while referenced by a workflow.
- Metrics are computed in real-time from ClickHouse (7-day window).
- Changes to audience rules take effect immediately across all workflows and experiments using that audience.
- Audiences can be AI-generated from natural language descriptions.