What are ads.txt, app-ads.txt and sellers.json, and why do buyers check them?

Reviewed by Visprisca Ad Tech Engineering Team•Last updated: October 2026
Direct Answer

ads.txt and app-ads.txt are public text files hosted on publisher websites listing authorized sellers of their ad inventory. sellers.json is an SSP file listing all publisher and reseller partners. Programmatic buyers cross-reference these files to verify authorized supply paths and prevent domain spoofing and ad fraud.

Detailed Explanation

In the early days of programmatic advertising, fraudulent entities routinely engaged in 'domain spoofing'—pretending to sell ad impressions from premium news sites or top apps when they were actually serving ads on pirate sites or bot-driven traffic.

To stop this, the IAB Tech Lab introduced ads.txt (Authorized Digital Sellers) for websites and app-ads.txt for mobile apps. The publisher places a public text file at `example.com/app-ads.txt` declaring: 'Only Exchange X with Publisher ID 12345 is allowed to sell my inventory as DIRECT.'

Concurrently, exchanges publish `sellers.json`, listing who owns each Publisher ID. DSP crawlers verify that the SSP and Publisher ID in an incoming bid request match both files. If a match is missing, legitimate DSPs drop the bid immediately.

Technical Definition: Domain Spoofing

A form of programmatic ad fraud where an illegitimate publisher or exchange falsely labels an ad slot with the domain or app bundle of a premium media property.

Illustrative Worked Example*Clearly labeled illustrative per Accuracy Rule

Verifying an app-ads.txt Record

A publisher of 'GameApp' registers developer website `gamepublisher.com` on the App Store.

›1. Publisher hosts file at: https://gamepublisher.com/app-ads.txt
›2. Record Entry: google.com, pub-1029384756, DIRECT, f08c47fec0942fa0
›3. Incoming Bid Request: DSP receives request claiming to be 'GameApp' from exchange 'google.com' with publisher ID 'pub-1029384756'.
›4. Validation Check: DSP crawler finds exact match marked DIRECT -> Auction authorized. If publisher ID was unlisted -> Bid request dropped.

Maintaining updated records is mandatory to prevent revenue loss from buyer crawler filtering.

What to Do Next

  • 1Verify your website root has a valid ads.txt or app-ads.txt file accessible without HTTP redirects.
  • 2Ensure your app store developer URL exactly matches the domain hosting your app-ads.txt file.
  • 3Check that your supply partners are correctly marked as DIRECT rather than RESELLER where applicable.
No Empty Hands AssetDirect Utility

DSP Evaluation Checklist

Verify anti-fraud and ads.txt compliance criteria for bidding platforms.