Ad Decisioning Explainer
What You Can Control
Campaign Settings
- Flight Dates – Set when your campaign starts and ends
- Download Goals – Set a target number of impressions; the campaign automatically stops when it hits the goal
- Priority – Higher priority campaigns get placed first when there's competition for ad slots
Targeting Options
Geographic:
- Target by country, city, or postal/zip code
- Can target multiple locations (e.g., "US and Canada" or "New York and Los Angeles")
Content:
- Run across your entire podcast network, or
- Target specific shows only
- Exclude specific episodes if needed
Ad-Level Overrides:
- Individual ads within a campaign can have their own targeting rules
- Useful when one ad creative is region-specific but the campaign is broader
Ad Slot Types
- Pre-roll – Plays before the episode content
- Mid-roll – Plays at a specific timestamp during the episode
- Post-roll – Plays after the episode ends
Each slot can hold multiple ads, and you control whether each slot accepts your host-read ads, programmatic (VAST) ads, or both.
How We Decide Which Ads Play
When a listener requests an episode, here's what happens:
1. We Check What's Eligible
- Is the campaign active and within its flight dates?
- Has the campaign already hit its download goal?
- Is the campaign on track with pacing, or running too hot?
2. We Apply Targeting
- Does this campaign target this specific podcast?
- Is this episode excluded from the campaign?
- Does the listener's location match the geographic targeting?
3. We Prioritize
- Campaigns are ranked by priority level
- Campaigns that are behind on pacing get a boost to help them catch up
- Campaigns that are ahead of pace get temporarily deprioritized to spread delivery evenly over time
- When campaigns have equal priority, we randomize to ensure fair distribution
4. We Fill the Slots
For each ad slot in the episode:
- First, we try to fill with your host-read ads (dynamic ads)
- If there's still room and programmatic is enabled, we fill remaining space with VAST ads
- If nothing's available, the slot stays empty (no awkward silence – we just don't insert anything)
Custom VAST Support
You can bring your own programmatic ad provider by setting custom VAST URLs for each slot position (pre-roll, mid-roll, post-roll). We support template variables so your provider gets the right context:
- Podcast and episode identifiers
- RSS feed URL
- Media file URL
- Cache-busting parameters
If you don't set a custom provider, we use our default programmatic partner.
You can reach out to us to setup custom VAST tags per podcast.
Tracking & Measurement
We follow IAB Podcast Measurement 2.2 standards:
- Downloads only count when enough of the episode is actually downloaded (60+ seconds worth)
- We filter out bots, crawlers, and duplicate requests
- Each unique listener is only counted once per episode within a 24-hour window
- Ad impressions are tracked with pixel firing and VAST event callbacks
NOTE: We are not yet IAB-Certified, but we do follow the specification.
When Ads Don't Play
Campaign Reasons
- Campaign is paused or still in draft mode
- Outside the flight dates
- Already hit the download goal
- Running ahead of pace (we'll serve it again soon, just spreading it out)
- Targeting doesn't match this podcast, episode, or listener location
Slot Configuration
- No ad slots configured on the episode
- The slot doesn't allow the type of ad you're trying to serve
- The slot is already full from higher-priority campaigns
No Available Ads
- All eligible campaigns were filtered out by targeting
- VAST provider returned no ads (common during low-demand periods)
Updated on: 27/11/2025
Thank you!