Forecasting Usage Notes and Tips

Prev Next

Also see:

When planning your direct sales, you need to know how much inventory you have available for each targeting set so you do not over-promise while still monetizing your inventory to the fullest. Digital ad inventory is very volatile as it is often sold on a first-come/first-server basis, so you need real-time and accurate data. The usage notes and tips in this topic should help you get the most out of TAP Forecasting.

Forecasting Processing and Timing

When you submit a forecasting query, the query is processed on the data as it exists at that moment. However, the data inputs to the forecasting database are always changing, as traffickers:

  • Add or edit flights;

  • Change IAB separation rules;

  • Add or edit ad quality rules/exclusivity rules.

The data is processed three times per day (see schedule below), and a processing session can take up to three hours to complete. For this reason, a forecast might not have considered any recent flight or separation/quality rules that you have made within the past few hours.

Processing Schedule:
10:00 am UTC
3:00 pm UTC
8:00 pm UTC

Forecasting and User Access

Users with limited content access cannot get avails for stations or podcasts they do not have access to. For this reason, two people running the same query might get different results if one person has all content access and the other person has limited content access.

Forecasting for a Specific Flight

In general, including an IAB Category filter in your forecasting query is a good idea when trafficking flights, as it ensures that industry separation is considered in your forecasting. While unfiltered avails are useful for purposes such as yield management and to get an overall view of inventory capacity, forecasting for specific flights is much more reliable when the IAB Category filter is used.

This idea is particularly important when checking avails for a specific advertiser, such as when working on a proposal from a client, always use the IAB category filter, with that advertiser's IAB categories selected, to ensure industry separation is accounted for. Alternatively, if the advertiser already exists in TAP you can filter on the advertiser, which will automatically include their IAB categories (assuming their IAB categories are defined in their advertiser profile).

Ad Quality Rules and Forecasting

Ad quality rules are used to block ads of specified IAB categories from appearing in your ad breaks for the stations or podcasts for which those rules apply. However, you need to specify the relevant IAB categories in your forecasting query in order to see the results of the ad quality rules.

To verify that an avails report does not include avails for the IAB categories specified in your ad quality rules, use the IAB category filter with those categories selected. You should see zero avails for the stations to which the rules apply.  

For example, if you have an ad quality rule that forbids alcohol-related ads (IAB-5, IAB-18, and IAB-23) on your "Dance Party" podcast, which targets adolescents, run a query that includes the IAB Category filter and select those IAB categories. The resulting report should show avails for other stations/podcasts, but zero avails for the "Dance Party" podcast.

The Ad Quality section of the report shows which ad quality rules affect the results of your forecasting request.

Exclusivity Rules and Forecasting

IAB category exclusivity rules are accounted for in forecasting. All metrics factor in whether the flights can deliver, based on the IAB categories and advertiser specified in your exclusivity rules and the targeting options selected.

As exclusivity rules reserve inventory in one or more IAB categories for a specific advertiser for a station/market/sub-publisher, you should specify the IAB category and advertiser as a filter in your forecasting query in order to see if your impressions can deliver. (This works the same way as described above under "Ad Quality Rules and Forecasting.") 

The Exclusivity section of the report shows which exclusivity rules affect the results of your forecasting request.

Forecasting on New Stations/Podcasts

Stations and podcasts must be live and accessible by Triton forecasting system for 28 days before the algorithm can reliably forecast available impressions. However, if you have a new station or podcast with not enough historical data and you still want to forecast, the workaround described below should work well enough in the short term while waiting for your first 28 days to pass. Note that this only works if you have an existing station or podcast with a similar audience and ad marker setup.

To estimate forecasting on a new station/podcast:

  1. Run a query with the new station/podcast to extract its contending flights.

  2. Run a query on a similar station/podcast (in terms of audience and ad markers) to get an estimate of total inventory. (Use the same filters you would use on the new station/podcast.)

  3. Deduct the sum of contending impressions from the first query from the total inventory of the second query.

Ad Duration Usage Notes

Ad duration in forecasting is only relevant for live-stream mid-rolls, and is primarily used for gaining more insight from historical data on live-stream delivery.

Forecasting query results do not take ad duration into account if either pre-roll or post-roll is selected in the position filter. Also, ad duration is not very useful for on-demand delivery forecasting due to differences in how missed opportunities data is captured for that delivery method. The notes below apply to live-stream mid-rolls forecasting.


Forecasting is based on impressions, not spots, even when Spots (CPS) is selected as the pricing model.

Ad Duration and Missed Opportunities

Forecasting is based on historical data, so Missed Opportunties are logged as one impression plus the time left to the end of the live-stream mid-roll break. Specifically, when the first unfulfilled ad request comes in, duration from that time to the end of the break recorded and converted into one missed opportunity with that duration.

But if you apply an Ad Duration filter in your forecasting query, the system divides the amount of time remaining in the mid-roll break by the ad duration that you enter. In this respect, Ad Duration is not really a filter; it is a recalculation of avails based on the selected ad duration.

For example, imagine that part way through a mid-roll break an ad request goes unfulfilled. There are 120 seconds remaining in the ad break. When you later run a forecasting query that uses this historical event as part of its calculation, your query results will be affected as follows:

  • No Ad Duration filter applied: the system will see this event as a single missed opportunity of one impression

  • Ad Duration filter of 30 seconds applied: the system will see this event as a single missed opportunity of four impressions (120 seconds divided by 30 seconds = 4). 

  • Ad Duration filter of 15 seconds applied: the system will see this event as a single missed opportunity of eight impressions (120 seconds divided by 15 seconds = 8).

The image below shows the overall effect of ad duration in forecasting. The image shows an exported forecast report based on the past 28 days where ad duration is not considered, and then rows are added which calculate the same results but with ad duration of 30 seconds and ad duration of 15 seconds.

  1. Historical data.

  2. No ad duration applied: 172 missed opportunities plus 1500 impressions delivered, resulting in a forecast of 1672 impressions.

  3. Missed opportunities duration divided by 30 (equivalent to using Ad Duration filter of 30 seconds). Result: 332 impressions worth of missed opportunities plus 1183 delivered impressions with 30 seconds duration, resulting in a forecast of 1515 impressions.

  4. Missed opportunities duration divided by 15 (equivalent to using Ad Duration filter of 15 seconds). Result: 663 impressions worth of missed opportunities plus 2367 delivered impressions with 15 seconds duration, resulting in a forecast of 3030 impressions.

A more detailed example:

The following example shows how forecasted impressions based on past delivery are affected by selecting an ad duration in the forecasting query. For simplicity, the example forecasts are based a very short delivery history. Real-life forecasting is based on a much longer history of ad delivery.

  • Ad delivery history: one 120-second break delivers five impressions (four 15-second ads and one sixty second ad) and another 120-second break delivers two impressions (60 seconds each).

    • An impressions forecast based on this history and with no ad duration forecasts seven impressions (240 seconds = 7 impressions).

    • An impressions forecast with an ad duration of 15 seconds forecasts 16 impressions (240 seconds = 16 impressions).

    • An impressions forecast with an ad duration of 30 seconds forecasts 8 impressions (240 seconds = 8 impressions).

Frequency Capping Usage Notes

The Frequency Capping filter is based on a per-break or per-download (podcast only) model. 

Frequency capping is a threshold (e.g., do not serve an ad from this flight more than twice in a break to a unique listener). It will not override ad separation settings, if a flight is set at frequency capping of 2 ads per break and settings for ad separations were left at defaults (1 ad of same industry per break), the flight will not be eligible more than once per ad break.

Calculation of inventory when using the per-break/download frequency cap filter includes the following factors:

  • The total number of breaks/downloads in the forecasting period (the selected date range).

  • The average number of ads per break/download for the selected forecasting period. (This provides the maximum number of impressions per break/download.)

  • The frequency cap you enter into the filter (as impressions per break/download).

The resulting forecast presents the available impressions as the lesser of the total inventory and available inventory, unless either value without capping is the lesser value.

The image below shows the results of an example forecasting query under several different frequency capping per break filter settings. (The same principles apply to per download.) You can see how changing the setting affects both total and available inventory. (Note that these results use the Frequency capping filter only; applying additional filters might change the way inventory is calculated.)

  1. No Frequency capping filter used. Resulting Total and Available inventories are unfiltered.

  2. Frequency capping filter is 1 impression per break. This is the highest level of capping, and it affects total and available inventory. In this case, 100% of filtered total inventory is available.

  3. Frequency capping filter is 2 impressions per break.  Total inventory is higher than above due to reduced capping, and available inventory has also increased a bit. In this case, 53.15% of filtered total inventory is available.

  4. Frequency capping filter is 4 impressions per break. Total inventory is higher than above due to reduced capping, but available inventory is the same. In this case, 26.57% of filtered total inventory is available.

  5. When the frequency capping filter matches or exceeds the average number of ads per break (5 and 7 as shown here), the calculation of inventories is based on the maximum impressions per break.

Ad Separation Notes

These notes apply to both the Advertiser and IAB Category filters, unless otherwise noted.

  • The Total row in the report is not displayed when using these filters because the forecasting algorithm estimates the number of unique breaks, which can affect the total values depending on which splits (dimensions) are selected.  

  • If there is no Advertiser ad separation interval configured in TAP Settings, the default of one ad per break is used. Similarly, if there is no Industry ad separation interval configured in TAP Settings, the default of one ad per break is used. For more information, see Ad Separation.

  • In the Contending section, all flightsare returned even if the Advertiser and/or IAB Category filter is used.

    • All flights of the standard inventory are contending. However, flights with the same advertiser or IAB  Category will have a greater impact by contending on a more restrictive set of available inventory.

  • If the standard available inventory is lower than the ad separation-based available inventory, the standard available  inventory is retained for the report.

  • If the ad separation-based available inventory is lower than the standard available inventory, the ad separation-based available inventory is retained for the report.

  • If:

    • there are no flights contending with the specified ad separation, and...

    • the total inventory with ad separation is lowerthan the standard available inventory...

      • ...the report displays ad separation-based total inventory and the available inventory will be the same as the total.

  • If the Ad separation settings exceeds the number of ads in a break (e.g., Advertiser ad separation is set with ad interval of 4 in a break, but a break only has 3 ads) the Ad separation settings will not be considered in forecasting.