How to Troubleshoot & Fix Unfilled Ad Impressions

How to Troubleshoot & Fix Unfilled Ad Impressions

Unfilled impressions mean money left on the table. Lost opportunities mean you just earned nothing for something you worked hard for. This is one of the biggest issues the publishers are facing. Not a lot of online references out there can precisely pinpoint the best solution as publisher situations differ.

Based on our extensive ad optimization experience, here’s a guide that will help you troubleshoot, identify the cause of unfilled impression and put an end to this revenue-killer.

How to check unfilled impression volume?

Step 1: Log into Google DFP

Step 2: Click on Reports

Step 3: Click on Yield Report

impressions not filled screenshot

Yield types are listed with the corresponding percentage of traffic. Our goal is to keep unfilled impressions to a minimum. Google’s advice as of their latest webinar is to try to keep it at 5% or less.

Step 4: Click the link to see which ad units are getting unfilled impressions

Step 5: This gives you a clue as to where to start

unfilled impressions report

Step 6: Check your average ads per page (total ad impressions/total page views). If the result is small, that may also signal unfilled impressions.

Troubleshooting and resolving possible reasons for unfilled impressions

DIV ID’s don’t match in the source code

Step 1: Audit Div IDs/Slot IDs in the source code (Open the website > Right click > View Page Source)

site screenshot

Step 2: CTRL+F “defineslot” to locate the header tags


Step 3: Hit CTRL+F and then paste the div ID/slot ID

Step 4: If you see in your results that you have three matches (one on the header and two in the body) then that means that the div id is set up correctly.

code source

Step 5: If it is missing on the page be sure to verify if the ad unit should be part of the ad map. If not, remove it from the header. If yes, add the corresponding body code/div on the page.

DFP Ad Unit code doesn’t match the source code

Step 1: Log into DFP

Step 2: Go to Inventory

Step 3: Go to Ad Units

Step 4: Audit each of your active ad units to make sure the Ad Unit Code matches what’s in the source code.

desktop ad unit

view source of site

Missing House line item

House Line item is your safety net. It’s the lowest priority line item that would catch all remaining impressions if none of the higher priority line items monetized it.

Step 1: Log into DFP

Step 2: Identify which ad network you would use as House. This is ideally an ad network that can fill 100% of worldwide traffic. You may also separate your House per group of geographical locations.

Step 3: Click on Delivery tab

Step 4: Create an order or just create a line item under a pre-existing order. If you choose the latter, it only makes sense to create it under the same ad network you’ll use as the house network.

Step 5: For line item type choose: House, Goal: 100%


Step 6: You may set the rate at $0, or adjust it according to its actual CPM performance. Doing the latter would be beneficial when generating DFP reports to get accurate stats.

Step 7: Upload as many creatives based on the number of ad units targeted. For example, if the line item targets three ad units (300×250), you should also upload three 300×250 creatives. You may upload one, then select it and copy.


Not enough creatives uploaded for line items targeting multiple ad units

DFP has a limitation that when a line item targets multiple ad units and it’s not backed by a sufficient number of creatives to serve, it could result in unfilled ad impressions.

Step 1: Review each of your active line items. If you have any line items that target multiple ad units, make sure you match it with the same amount of creatives.

Step 2: For example, if you have five 728×90 ad units targeted, and three 300×250’s, you need to upload one creative for each size and just create a copy.

copying creatives

Step 3: Keep creating copies until you have the right number of creatives

creative copy

Missing passback behind non-100% fill ad network

You have a non-100% fill ad network that has a particular CPM floor set? You need to make sure you set up a passback tag behind it. Ideally, you would setup an ad network that can fill the unmonetized impressions. If you have the tag, set it up in the user interface or have your ad rep do it for you.

You might also consider using DFP as passback.

Step 1: Create a passback ad unit

Step 2: Generate the code (Inventory > Generate Tags)

Step 3: Select ‘Create a Passback Tag’ in the Tag Options

select tag options

Step 4: Implement this tag behind the non-100% fill ad network

tag results

Step 5: Create Orders/Line items that will target the passback ad unit.

Too high CPM floors

Every Time you deploy a CPM floor it impacts advertiser behavior. You are restricting the demand because you’re not accepting buyers that would pay lower than the amount you specify. If extremely necessary, just ensure you have enough demand to cover the impressions that won’t be monetized.

Adjust floors when deemed necessary.

Not enough demand to monetize impressions

This often happens for non-English geographical location traffic. It’s not easy looking for demand partners that can buy international traffic at a 100% fill rate. If you have AdSense and Ad Exchange, then your problem is solved!

Slow page load performance

A slow website is not only annoying to users but also to advertisers. Come to think of it – your site is slow which means some ads won’t even load in a given session. You should also consider minimizing video ads on the page.

The following tools may help you identify the reasons for slow page performance:

Page Speed Insight by Google


Monitor blank ads and discrepancies

Do a regular ad quality monitoring. You may use Google Publisher Toolbar to identify the culprit. These ad networks may also have huge reporting discrepancies, so keep an eye out for that. Compare your DFP report vs. UI. This will require you to adjust CPM rates according to true CPMs so DFP can produce accurate reports.

Reach out to your ad rep to investigate if necessary.

In closing

Now that you know how to troubleshoot and fix unfilled ad impression on your websites be sure to follow our instructions and implement fixes ASAP. You don’t want to be leaving money on the table! If you require assistance or have any questions regarding the techniques mentioned, be sure to reach out to our support staff or sign up for a Professional account at MonetizeMore today!

Kean Graham

CEO and Founder at MonetizeMore

Kean has been a pioneer in the AdTech world since 2010 who believes in the supremacy of direct publisher deals, programmatic advertising, and building ad technology as keys to scaling ad revenue. Here, he provides publisher resources and guides covering areas like website monetization, AdSense optimization, Google Ad Manager, Ad Exchanges, and much more.

Get our latest ad optimization tips delivered to your inbox

Fill out my online form.

Submit a Comment

Your email address will not be published.