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:

  1. First, we try to fill with your host-read ads (dynamic ads)
  2. If there's still room and programmatic is enabled, we fill remaining space with VAST ads
  3. 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

Was this article helpful?

Share your feedback

Cancel

Thank you!