Campaigns and creatives
A campaign contains targeting rules, budget settings, and one or more creatives. Each creative is a combination of creative content and a validated public HTTPS destination URL. All creatives pass through moderation before they can serve.Approval and moderation
Creatives must be approved before they enter the auction. The moderation system records warnings, account bans, or bans for known installation hashes. Product enforcement calls the moderationcheck operation. Revocation timestamps a whole moderation batch while preserving its history.
Schedule and budgets
Campaigns support schedule dates, daily budgets, and total budgets. The database and Edge Function enforce budget limits authoritatively; frontend calculations are display-only.Targeting options
Country, device, and placement
Country, device, and placement
Target users by country, device type, and placement context. These filters run inside
select_ad before ranking eligible creatives.Segment targeting
Segment targeting
Segment-targeted campaigns require personalized-ad consent and a qualifying non-sensitive interest score. Segments must meet the minimum size threshold.
Contextual targeting
Contextual targeting
Contextual campaigns with no segment targets may use non-personalized consent. These match based on placement context rather than user profiles.
Frequency caps
Frequency caps limit how often a user sees an ad:- Daily cap: maximum impressions per user per day
- Weekly cap: maximum impressions per user per week
select_ad during the auction phase.
Minimum-size segments
Segments must meet a minimum size threshold before they can be used for targeting. This prevents advertisers from targeting very small groups that could identify individuals.Sensitive categories
The following categories can never be targeted, regardless of consent:- Health and medical conditions
- Religion
- Politics
- Legal issues
- Race or ethnicity
- Sexual orientation
- Precise location
- Sensitive traits
- Payment data
Users can inspect broad interests, reset them, or delete their advertising profile from
/settings/privacy.