Two-Phase Workflow
AXE operates in two distinct phases: offline campaign setup and real-time ad serving.Phase 1: Offline Setup
Before ads serve, campaigns are configured and segment data is synchronized: What happens:- Buyer Agent creates campaigns with targeting and budgets via AdCP
- Signal Agents attach contextual data (audiences, brand suitability rules, weather triggers)
- Orchestrator maps campaigns to AXE segments and syncs data to the real-time module
- Sales Agent creates ad server line items targeting AXE segment key-values
Phase 2: Real-Time Serving
When an ad request arrives, AXE evaluates it in real-time and returns segment decisions: What happens:- User visits page, triggering ad request
- Ad server initiates request to Prebid (or similar)
- Prebid sends OpenRTB bid request to AXE
- AXE evaluates user/context and returns segment values
- Ad server matches segments to line items and serves appropriate ad
AXE Segment Types
AXE returns three types of segment values to the ad server:| Segment | Key | Purpose | Example |
|---|---|---|---|
| Include | axei | Audience targeting - user belongs to this segment | "seg_auto_intenders" |
| Exclude | axex | Brand suitability/suppression - block this impression | "unsafe_content" |
| Macro | axem | Creative personalization data | "eyJjb250ZXh0IjoiLi4uIn0=" |
How Segments Flow to Creatives
axeiis checked againstaxe_include_segment→ must match to serveaxexis checked againstaxe_exclude_segment→ must NOT match to serveaxemis passed to creative via the{AXEM}macro
Data Flow Example
Here’s a concrete example of AXE in action for a customer acquisition campaign:Setup (Offline)
1. Buyer uploads suppression list:Serving (Real-Time)
4. User visits publisher site:Core Capabilities
1. Dynamic Audience Targeting
Bring your own DMP/CDP segments to publisher inventory:- Upload audience data (hashed emails, device IDs, etc.)
- Receive segment IDs from your orchestrator
- Reference segment IDs in
axe_include_segment - AXE matches users at impression time
2. Brand Suitability
Real-time content evaluation at impression time:- Content classification - News, entertainment, sports, etc.
- Sentiment analysis - Positive/negative content detection
- Keyword blocking - Brand-specific term avoidance
- Adjacency rules - What other ads are on the page
3. Cross-Publisher Frequency Management
Unlike publisher-side caps, AXE tracks exposure across:- Multiple publishers
- Multiple campaigns
- Multiple devices (with identity resolution)
How Cross-Publisher Frequency Capping Works
Cross-publisher frequency capping is now handled by the Trusted Match Protocol (TMP), which uses structurally separated Context Match and Identity Match operations. The AXE segment model maps to TMP’s offers and eligibility responses.
4. First-Party Data Activation
Activate your customer data without sharing PII:- Hash customer identifiers (emails, phone numbers)
- Upload to orchestrator (data stays with orchestrator)
- Reference via segment ID in campaigns
- AXE matches at impression time
- Publisher never sees raw customer data
Privacy by Design: Opaque Segment IDs
A key AXE design principle is that segment IDs are intentionally opaque. The ad server only sees that segmentABCD passed or failed—it doesn’t know what type of targeting the segment represents.
This could mean:
- User exceeded frequency cap
- Page failed brand suitability check
- User is in a first-party suppression list
- User matches an audience segment
- Which users are in buyer CRM lists
- Frequency cap thresholds
- Brand suitability rules
- Audience segment definitions
Integration Points
For Buyers
| Step | Action | Result |
|---|---|---|
| 1 | Upload audience to orchestrator | Receive segment ID |
| 2 | Include segment ID in create_media_buy | Campaign created with AXE targeting |
| 3 | Monitor delivery reports | Track segment match rates |
For Publishers
Publishers don’t implement AXE directly — the orchestrator handles integration (see How AXE Reaches the Page). Publisher responsibilities:- Enable the orchestrator’s integration - Add RTD module (Prebid) or enable platform integration
- Accept key-value targeting - Pass
axei,axexvalues to ad server - Configure line items - Target on AXE segment key-values
- Declare support - Indicate AXE compatibility in
adagents.json
For Orchestrators
Orchestrators operate the AXE layer:- Segment ingestion - Accept audience data from buyers
- Real-time lookups - Sub-10ms segment membership checks
- Signal integration - Apply brand suitability and contextual signals
- Frequency state - Maintain cross-campaign exposure tracking
- Ad platform integration - Expose segments via Prebid RTD module, platform container, or server-side endpoint
How AXE Reaches the Page
AXE is a protocol-level concept. Orchestrators implement AXE and integrate it into ad serving environments. The integration path depends on the ad platform:| Integration Path | How It Works | Example |
|---|---|---|
| Prebid RTD module | Orchestrator distributes a Prebid module that calls the AXE endpoint during auction | Scope3’s scope3RtdProvider |
| Proprietary ad platform | AXE runs as a container or secure enclave within the platform’s infrastructure | Platform-native integration |
| Server-side | AXE endpoint called server-to-server by the ad platform before decisioning | Custom ad server integration |
axei/axex/axem decisions that the ad platform uses for targeting. For cross-publisher frequency capping, those impression-time calls are what let the buyer apply shared exposure rules across sellers instead of relying on one publisher’s local ad server counter.
The Chain: Orchestrator → AXE Endpoint → Segment Targeting
axe_integrations URL in a seller’s get_adcp_capabilities response tells buyers which orchestrator’s AXE endpoint the seller connects to:
Prebid Integration (Web)
For web publishers using Prebid, AXE integrates via the orchestrator’s RTD module. The module name in Prebid matches the orchestrator, not “AXE”:test=false
- Intercepts the auction before bids are requested
- Sends an OpenRTB-style request to the AXE endpoint
- Receives segment decisions (axei/axex/axem)
- Sets targeting key-values on the ad server request
Proprietary Platform Integration
AXE can also run within proprietary ad platforms as a container or secure enclave. In this model:- The orchestrator deploys AXE logic into the platform’s infrastructure
- Segment evaluation happens within the platform’s decisioning pipeline
- No external network call is needed at impression time — reducing latency
- The platform calls AXE as part of its native ad selection process
Identifying AXE Support
The definitive check is the seller’sget_adcp_capabilities response. For Prebid-based integrations, you can also inspect the page directly. Using Scope3 as an example:
| What to look for | Where | Meaning |
|---|---|---|
axe_integrations in capabilities | get_adcp_capabilities response | Seller supports AXE |
axei/axex/axem key-values | Ad server request (network tab) | AXE segments flowing to ad server |
scope3RtdProvider in Prebid build | Page source or pbjs.installedModules | Scope3 AXE via Prebid |
name: 'scope3' in realTimeData.dataProviders | pbjs.getConfig('realTimeData') | Scope3 AXE is active |
Universal Macro:
Creatives can receive AXE context data for dynamic rendering:{AXEM} macro contains base64-encoded contextual metadata:
- Weather conditions
- Content category
- User segment attributes (anonymized)
- Custom orchestrator data
When to Use AXE
| Scenario | Use AXE? | Alternative |
|---|---|---|
| Target users in my CRM | ✅ Yes | — |
| Suppress existing customers | ✅ Yes | — |
| Cross-publisher frequency cap | ✅ Yes | — |
| Real-time brand suitability | ✅ Yes | — |
| Target “millennials in California” | ❌ No | Express in brief |
| Geographic restrictions | ❌ No | Use geo_countries |
| Publisher’s audience segments | ❌ No | Express in brief |
| Single-publisher frequency cap | ❌ No | Publisher ad server handles this |
Performance
AXE is designed for ad serving latency requirements:| Operation | Target Latency |
|---|---|
| Segment membership lookup | < 10ms |
| Brand suitability evaluation | < 20ms |
| Frequency check | < 5ms |
| Combined AXE decision | < 50ms |
Related Documentation
- Targeting - Brief-based targeting and geographic overlays
- Signals Protocol - Signal discovery and activation
- Universal Macros - Creative-level AXE integration
- Orchestrator Design - Building orchestration platforms