|
|
|
Ad Tag Tester
Check CPU/RAM usage, Dimensions, Initial Load, SSL and much more!

Ad tag validator for third party ads
Want to test a tag and get a quick preview of your ad tag? Just copy/paste the HTML or JavaScript code in the ad tag tester and get a detailed QA report.
Analyze more than 25 data points in a couple of seconds — much faster than you could ever have done manually.

Customizable Ad Specifications
Not every publisher adheres to the IAB guidelines. Customize when a test should pass or fail.
For example, when a creative is > 300KB or the load time is >1 second. Create different ad specs if you have multiple media channels.



Visualize Data Flows
Depending on local laws, publishers may be required to store data on servers in Europe.
Visualize to which geographical locations data is sent. Get an alert when data leaves the European Union.

Auto-fix Issues
No need to get back to media agencies to fix common issues with HTML5 banners.
Auto-fix issues like initial load or CSS/JS minification, and use the optimized version during the creative's flight.



Todo-list to keep you organized
Did you have to reject a campaign due to assets not complying with your ad specs?
Add a todo-list to the creative with issues that have to be solved before it can go live. Collaborate with your team members.

Discuss QA issues in one single place
Discuss issues with team members in one place. No more troubleshooting screenshots by email!
Let a responsible team member approve the ad before it goes live.


Powerful REST API
Do you have hundreds of creatives to scan every day? Send ads to the API and get a detailed QA report in JSON format.
Great if your company uses proprietary ad server software. Simply reject creatives from being served if they don't comply with your ad specs.

Ad Validation Checks
Load Size: TotalThe total load size of all network responses after loading the creative. Keeping the load size at a minimum improves the user-experience and reduces page load time. |
Load Size: InitialThe total load size of all network responses before the DOMContentLoaded event. Keeping the load size at a minimum before the publisher's page has loaded improves the user-experience. |
Load Size: SubloadThe total load size of all network responses after the DOMContentLoaded event. Keeping the load size at a minimum improved the user-experience, thought the subload is of less importance. |
Network RequestsThe total number of network requests after loading the creative. Keeping the number of HTTP requests at a minimum improves page load. |
CPU UsageThe total CPU time devoted to loading the ad. Heavy ads are one of the reasons why people are using ad blockers. CPU cycles drain batteries on mobile phones. |
DOMContentLoadedThe time it took for the DOMContentLoaded event to fire. Ads that fire the DOMContentLoaded event late stay in a 'loading' state. |
DimensionsThe detected with and height of the creative. You want to make sure the dimensions match standard size ad units. |
Has VideoWhether or not the creative plays video (even muted). Videos are generally heavy assets. You may want to be aware of it. |
Memory UsageThe amount of RAM the ad claimed when fully loaded. Ads are displayed in iframes, which essentially is a tiny web page. Excessive memory usage may have a negative user experience, especially on mobile phones. |
SSL-CompatibilityWhether or not all requests were made over TLS We're in 2022, and secure connections are everywhere. If the ad uses unsecure connections (http://), it can't be loaded on a secure page. |
Iframe CountThe number of iframes created by the ad. Iframes are essentially tiny web pages. Some ad tech vendors use iframes to send measurement pixels, as it allows to run JavaScript to gather extra information about the user. Each iframe however requires some extra RAM. |
Cookies DroppedThe number of cookies dropped by the ad. Third party cookies are on the brink of becoming extinct. And dropping cookies without user-consent in the EU may not be a great idea. |
Heavy Ad InterventionThis test tells you if the ad will be removed in Google Chrome browsers due to its Heavy Ad Intervention (HAI). Chrome has a built-in mechanism to remove ads that consume too much resources (RAM and CPU). Ads that are removed after a couple of seconds still count as an impression, but the CTR would be near zero. |
Console ErrorsJavaScript errors thrown while loading the ad. Errors may prevent the ad from being displayed at all. |
Console WarningsConsole warnings thrown while loading the ad. Although warnings may not be that severe, it's best to be aware of them in order to avoid potential issues. |
Mobile FriendlyThis test determines if the creative displays well on a mobile device. If it's responsive or if the width is less than 300px, the creative is considered mobile friendly. Ads that are too large on a mobile page may disrupt the layout. It doesn't improve the UX either. |
Creative RenderedThis test will pass if the ad was successfully loaded. Blank ads are usually an indication the campaign was (geo)targeted. Or disabled. Or the ad failed to load due to errors or missing assets. |
Blocked by AdBlockDetermines if the ad will be blocked by most common ad blockers. Ad blockers not only lead to a missed opportunity, it also fuels discrepancies between ad systems. |
Uses document.write()Detect usage of document.write() JavaScript calls. It's a synchronous function that blocks page render. Nothing else can be done in parallel, and consequently the impact on user-experience can be considerable. |
Creative BorderDetects if the creative has a high-contrasting border. Imagine the publisher's page background is blue, and the creative is blue as well. Then where does the ad start and end? It should be unambigous for the user that the image is an ad. |
3PAS VendorWe'll detect the ad server vendor of the ad tag where possible. This test is just for your information - nice to know. |
Missing AssetsThis test logs all requests to non-existing assets, resulting in 404s. Missing assets are usually not intentional. It can prevent the ad from being displayed correctly. |
Dialogs and ModalsDetects if the creative uses JavaScript's confirm() and alert() functions. Some bad ads may throw modals that users have to click away. You certainly don't want those on your page. |
Measurement PixelsAll measurement pixels sent using IMG, XHR and sendBeacon. Each pixel may transfer user information to a third party server. They also increase the total number of HTTP requests. |
Local StorageAll items set in window.localStorage after loading the ad The localStorage API let developers store information in the user's browser. It can be anything, from user identifiers to personally identifiable information (PII). Something you may want to be aware of. |
Syntax ErrorsThis test checks if the HTML code contains syntax errors. Syntax errors may lead to non-working ads. |
Landing Page WorkingThis test checks if the landing page works on click-through. If users click on the ad but won't be redirected to the advertiser's landing page, this may be due to an error. |