amphtml: IAB ads.txt specification appears to be incompatible with AMP

The IAB has released the final ads.txt specificatrion https://iabtechlab.com/wp-content/uploads/2016/07/IABOpenRTBAds.txtSpecification_Version1_Final.pdf

The relevant parts are [emphasis added]

3.1 ACCESS METHOD … If the server response indicates the resource does not exist (HTTP Status Code 404), the advertising system can assume no declarations exist and that no advertising system is unauthorized to buy and sell ads on the website.

and

5.5 SUBDOMAINS Subdomains are currently not supported. This is an open item that will be discussed in future iterations of the spec. When writing spiders, implementers should request the /ads.txt from the domains that are driving significant requests for advertising. Publishers should post the /ads.txt file on their root domain and not on subdomains. The crawler should strip the subdomains when creating the crawler’s URL list. The public suffix list [12] should be utilized in implementing subdomain stripping.

This implies that a page served from example-com.cdn.ampproject.org will use the ads.txt file for theampproject.orgroot domain.

As written there is no way for a publisher to control who can sell ads on their amp pages when served on a CDN.

About this issue

  • Original URL
  • State: closed
  • Created 7 years ago
  • Comments: 15 (10 by maintainers)

Most upvoted comments

@jasti @jpettitt I can see that this older post was closed in 2017, anyhow we believe the issue still exists: Depending on the DSP, the check of the ads.txt file will depend on the (sub-)domain that is transmitted from SSP to DSP. In most cases a SSP will read something like www-mydomain-com.cdn.ampproject.org and send it to the DSP. The DSP will then try to fetch www-mydomain-com.cdn.ampproject.org/ads.txt and will fail. As basically all major DSP now require an ads.txt file to be present and correct, this current behavior of the CDN leads to issues when selling the traffic.

Therefore we recommend, that the CDN should also fetch www.mydomain.com/ads.txt and save it under www-mydomain-com.cdn.ampproject.org/ads.txt.

There is no problem at all with ads.txt and AMP and the CDN.

When an AMP page issues an ad request, the auction that results is selling space on some publisher-domain URL. (In the adsense and doubleclick case we use the canonicalURL; some other ad companies might use the sourceURL.)

Advertisers looking to buy in that auction will therefore compare the ads.txt file from the publisher domain with the ad network claiming to offer the space for sale, exactly as if the page had been served directly by the publisher. The CDN never gets mentioned.