Skip to content
Stoqlab

Basics

app-ads.txt vs ads.txt: what differs and what does not

By Stoqlab Research · Updated · 4 min read

app-ads.txt and ads.txt are the same idea with the same syntax. The IAB Tech Lab defines app-ads.txt as an extension of ads.txt, and says the only differences are how the file is found and the handling of subdomains. In practice that one difference causes most of the confusion.

Side by side

ads.txtapp-ads.txt
CoversInventory on a websiteInventory in apps distributed through app stores (mobile and CTV)
Lives at/ads.txt on the site that shows the ads/app-ads.txt on the developer website named in the store listing
How verifiers find itFrom the page's domain in the bid requestFrom the store URL in the bid request → store listing → developer website
Seller linesIdentical: domain, account ID, DIRECT or RESELLER, optional certification ID
SUBDOMAINSupportedUnused, ignored
Subdomain lookupThe file of the domain being soldOne subdomain level is tried first, then the parent domain; www. and m. are dropped
Other variablesCONTACT, OWNERDOMAIN, MANAGERDOMAIN, INVENTORYPARTNERDOMAIN in both

The separate file name is deliberate: the specification keeps app and web authorisations apart so that changing one cannot break the other.

When you need both files

If your company sells inventory on its website and in its apps, and the website is also the developer website in your store listings, you publish both files on the same domain: /ads.txt for the site, /app-ads.txt for the apps. Copying all lines into both is common and harmless as long as each file is complete for what it covers. What does not work is putting app sellers only in ads.txt: app verifiers never read it.

Mistakes that come from mixing them up

  • The file is on the marketing site, but the listing points elsewhere. Verifiers follow the listing. If the App Store or Google Play listing names a different domain (an old one, a parent company, a link page), the file must be there.
  • The developer website cannot host a root file. A social profile, a GitHub page or a link-in-bio service does not let you publish /app-ads.txt at the root. Use a domain you control.
  • The file is only on www. For https://www.example.com in the listing, verifiers request https://example.com/app-ads.txt. Serve it on the bare domain, or redirect from it.
  • An INVENTORYPARTNERDOMAIN that points to an app-ads.txt. The variable is followed to the partner's ads.txt only, one hop.

The app-ads.txt checker fetches a domain the way app verifiers do and shows which host and file it ended up reading. More on the format in What is app-ads.txt.