app-ads.txt is a public list of the accounts allowed to sell ads in your app. You put this small text file on your website. Ad platforms read it to check who you have approved.
What problem does it solve?
An ad slot is a place where a banner or video can appear. Several companies can take part in selling that space. The buyer needs a way to check the seller's claim: does this account have the app owner's permission to sell that space?
Your file gives them a list they can check. Each record names an ad system and a seller account within it. The IAB Tech Lab standard connects that list to your app through its store page.
The file helps combat fake claims about who may sell your app's ad space, as the IAB's publisher advisory explains. Your ad SDK still handles requests and shows ads. The file supplies the seller list used to check those sales.
What does an app-ads.txt file look like?
A file can contain several lines, one for each seller account. An AdMob example looks like this:
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0
The zero-filled publisher ID is a placeholder. Copy your own full record from AdMob when you set up the file.
google.com: the ad system. This names the platform through which the ads are sold. It is the ad system's domain.pub-0000000000000000: the seller account. For AdMob, this is your publisher ID. You can find it under Settings, then Account.DIRECT: who controls that account. DIRECT means you control the account with the ad system. RESELLER means you let another company control the named account and resell your ad space.f08c47fec0942fa0: the ad system's certification ID. This identifies the ad system through a certification authority. The standard makes this fourth field optional. Keep the record your ad partner provides.
These fields follow the ads.txt record format. A file called ads.txt covers website ad space; app-ads.txt covers app ad space.
How does the file connect to your app?
Your app's public store page provides a link to your developer website. Ad platforms use that link to locate the file:
Find the app in its store.
Read the developer website from the listing.
Fetch app-ads.txt from that website and check the seller account.
This link matters because a text file on an unrelated domain says nothing about your app. Apps using the same developer domain can share a file. Its seller list applies across those apps; the format has no per-app seller switch.
Where do you put app-ads.txt?
Publish it at the root of the developer website. For example, a store listing might link to this app page:
https://example.com/my-app
The file belongs at:
https://example.com/app-ads.txt
For AdMob, set the website in Store listing contact details in Google Play Console. For the Apple App Store, use the Marketing URL. Check the public listing for its Developer Website link. Google's setup guide describes both fields.
AdMob has extra rules for subdomains, including www and m. If those are involved, check the address AdMob reports for your app. A redirect to a hosted file can be valid.
When do you need it?
This concerns apps that sell advertising. A subscriptions-only app has no ad inventory to authorize through this file. Your ad partners tell you which records to publish.
AdMob requires app-ads.txt verification for new apps linked to Google Play or Apple's App Store. It also runs an app readiness review before fully serving ads. Its app verification guide covers both steps.
Use a plain text file with the records supplied by those partners. Upload it to your website, then open the file's URL. You should see the text. Your web server should send a successful response and serve the file as plain text.
What if AdMob says "Not Found"?
Start with the app's details under Apps > View all apps > app-ads.txt. Expand its row. The status details show the file address or associated domain and the last crawl.
Check that address, the website linked from the store, and your file's contents. A successful web page can still contain your site's HTML instead of the text file. Google's crawl guide also covers server errors and robots.txt rules.
Allow at least 24 hours for a status update. Store-listing changes can take longer. Google's FAQ advises waiting a week before seeking further help after a recent developer-website change. A file that is found but lacks your publisher ID needs a record fix rather than a new upload location.