Generate a valid ads.txt file in under 30 seconds
Pick your ad network, drop in your publisher ID, and get a properly formatted ads.txt line you can copy or download right away. Built for AdSense, Ad Manager, and the other networks most site owners actually use.
Fill in the form and select “Add to ads.txt” to see your file build up here, line by line.
Entries you generate are saved here in your browser so you can reuse them later.
Built to get the format right the first time
Most mistakes in an ads.txt file come from small formatting slips. This tool handles the syntax so you can focus on getting the right IDs from your ad networks.
Generates a valid line instantly
Every entry follows the IAB ads.txt syntax automatically, so you don’t have to remember comma placement or field order.
Supports eight ad networks
AdSense, Ad Manager, Media.net, Monetag, PubMatic, OpenX, Magnite, and Sovrn, with domains and certification IDs filled in where they’re published.
Copy with one click
The Clipboard API copies your whole file in one action, with a confirmation so you know it worked.
Download a ready-to-upload file
Get a plain-text ads.txt file built in your browser, formatted exactly the way ad networks expect it.
Works well on mobile
The layout adapts down to a single column, so you can put together your file from your phone if you’re away from your desk.
Nothing leaves your browser
Every field you type and every line you generate stays on your device. There’s no server call, account, or tracking involved.
Four steps, start to finish
You’ll repeat step one for each ad network you work with, then download once at the end.
Enter your advertising details
Choose your ad network and enter the publisher ID and relationship type it gave you.
Generate your ads.txt
Select “Add to ads.txt” to turn those details into a correctly formatted line in the preview.
Download or copy
Once every network is added, copy the file or download it as a plain ads.txt file.
Upload to your website root
Place the file at the root of your domain so it’s reachable at yoursite.com/ads.txt.
Ads.txt, explained
Answers to what people usually ask the first time they set this up.
Ads.txt stands for Authorized Digital Sellers. It’s a plain text file you place on your website that lists every company allowed to sell your ad space. Advertisers and ad exchanges check this file before they bid on your inventory, so they can confirm they’re buying from someone you actually authorized rather than a site that’s pretending to be yours.
Technically, no ad network will stop your site from loading if you skip it. In practice, it’s close to required if you care about your ad revenue. Most exchanges now refuse to bid on inventory that isn’t listed in an ads.txt file, since that’s exactly the kind of unauthorized traffic the standard was built to filter out.
It needs to sit at the root of your domain, not inside a subfolder. If your site is example.com, the file must load at example.com/ads.txt. Placing it at example.com/blog/ads.txt or anywhere else won’t be recognized, no matter how you access it in a browser.
For AdSense, sign in and go to Account, then Settings, then Account information; your ID starts with pub- followed by 16 digits. For Ad Manager, go to Admin, then Global settings. For every other network, your account manager or onboarding email will have sent it to you, since there’s no single place these IDs are listed publicly.
Yes, and most sites do. Each network gets its own line in the same file, one record per line. That’s exactly what this generator is set up for: add an entry for each network you work with, and they’ll all stack up in the same preview and download.
Your site will keep running fine, but many buyers and ad exchanges will quietly treat your inventory as unverified and bid less on it, or skip it altogether. You won’t get an error message, you’ll just see lower fill rates and lower CPMs than a comparable site that has the file in place.
Absolutely, and you’ll need to whenever you add or drop an ad network. Come back to this tool, rebuild the list of entries you need, download the updated file, and replace the old one on your server. There’s no limit on how often you can update it.
No data is sent anywhere. The lines you generate are kept only in your own browser’s local storage, purely so your recent history is still there if you refresh the page. Nothing is transmitted to a server, and clearing your browser data removes it completely.
Google doesn’t force it the way some exchanges do, but AdSense will show an “Earnings at risk” alert in your account if your site doesn’t have a correct entry, and it strongly recommends adding one. If AdSense flags your ads.txt status as anything other than authorized, that’s worth fixing before it affects delivery.
Yes. This is common if you run more than one account with the same network, for example separate AdSense accounts for different sites you manage. Just add a separate DIRECT line for each publisher ID, all pointing to the same network domain.
Yes, that’s normal for most sites. You might sell some inventory yourself directly through AdSense, marked DIRECT, while also letting an ad network resell inventory on your behalf, marked RESELLER. The two relationship types live in the same file without any conflict.
Google’s crawler typically re-checks a site’s ads.txt file within about a day, though it can take a bit longer. If you’re in a hurry, AdSense has a “Check for updates” option under Sites in your account, which triggers a fresh check instead of waiting for the next scheduled crawl.
They use the exact same format and the same idea, just for different inventory. Ads.txt covers a website’s ad space. App-ads.txt covers a mobile app’s ad space, and it’s hosted on the developer’s website, since apps have no root domain of their own to host a file on.
It means the crawler couldn’t locate a file at yoursite.com/ads.txt at all, as opposed to finding one with an error in it. Double-check that you uploaded to the root directory and not a subfolder, that the filename is exactly “ads.txt” in lowercase, and that your server serves it as plain text rather than forcing a download or redirect.
How to actually put this file to use
If you’ve never touched ads.txt before, this covers what the file does, where it goes, and the mistakes that trip people up most.
Where ads.txt should be uploaded
The file has to sit in your site’s root directory, the same folder-level as your homepage. It must be reachable at this exact path:
https://example.com/ads.txtIn WordPress, that usually means uploading it via FTP or your hosting file manager to the main directory your site is installed in, or using a plugin that writes it there for you. A file placed inside wp-content, wp-admin, or any subfolder will not work.
How to verify it worked
Type your domain followed by /ads.txt directly into a browser address bar. You should see plain text, not a download prompt and not a 404 page. Then check your AdSense account under Sites, where Google shows a live status for each domain: Authorized, Not found, or a specific error.
Common mistakes to avoid
- Overwriting instead of appending. If a network sends you a new line, add it to the existing file, don’t replace the whole thing and lose your other entries.
- Leaving the ca- prefix in a Publisher ID. AdSense ad unit codes start with ca-pub-, but ads.txt only wants the pub- part with the ca- removed.
- Uploading to a subfolder or subdomain. Crawlers only look at the root of the exact domain, not www vs non-www variants or any nested path.
- Typos in the network’s domain name. A single misspelled character means the crawler won’t match that entry to anything it recognizes.
What DIRECT and RESELLER actually mean
You, the publisher, own and control this account with the ad network yourself. There’s no intermediary between you and the network selling your inventory.
You’ve authorized a third party, like an ad network or agency, to control this account and sell your inventory through it on your behalf.
Why the certification authority ID matters
This fourth field is an ID issued by an independent certification body, currently the Trustworthy Accountability Group, that confirms the network in field one is who it says it is. It’s optional, but including it when your network provides one makes your file harder to spoof, since it ties the entry to a verified identity rather than just a domain name anyone could type.
Built for site owners who’d rather spend their time on content than syntax. No data collected, nothing stored outside your browser.