An ads.txt checker that finds the exact broken line
Your ads.txt file is what authorises ad networks to sell your inventory — and a single formatting typo in it can make an ad network reject the whole file and pause your revenue. This ads txt checker fetches your live file and validates every line against the IAB specification, telling you exactly which line number has a problem and what's wrong with it. Instead of an ad network's vague "your ads.txt has errors" warning, you get the specific fix — a fast way to validate an ads txt file before it costs you earnings.
Fix the Google AdSense ads.txt error fast
If AdSense is showing you an "Earnings at risk — you need to fix ads.txt file issues" warning, the cause is almost always the google.com line. Google needs a line in exactly this shape: google.com, pub-XXXXXXXXXXXXXXXX, DIRECT, f08c47fec0942fa0. This checker looks specifically for that line, confirms your publisher ID has the right format, checks that it's marked DIRECT (not RESELLER), and verifies Google's certification ID is present. If any part is off, you'll see it called out so you can fix the Google AdSense ads txt error and get your ads serving again.
What a valid record looks like
Each line in ads.txt is a comma-separated record with at least three fields: the advertising system's domain (like google.com or rubiconproject.com), your publisher account ID on that system, and the relationship — DIRECT if you have a direct contract with them, or RESELLER if they resell on your behalf. An optional fourth field is the certification authority ID. The most common errors we catch are lines with too few fields, a relationship field that isn't exactly DIRECT or RESELLER, and empty required fields. Variable lines like CONTACT= and SUBDOMAIN= and comment lines starting with # are valid and we don't flag them.
app-ads.txt for mobile apps
If you monetise a mobile app, the equivalent file is app-ads.txt, served from the same root as ads.txt and using the identical format. This tool validates both automatically, so app publishers get the same line-by-line check. One honest note on scope: this validates the format of your file — that it's well-formed and AdSense-compatible. It doesn't cross-check each seller line against the exchange's sellers.json to confirm the relationship is genuine; that's a separate, deeper audit. For the question most publishers are actually asking — "why is my ads.txt broken?" — the format check is the fast answer.