Increasing Transparency in Programmatic Advertising: IAB Tech Lab Standards

March 18, 2022

·

6 min read

Some people or communities aiming to get an unfair share of the revenues in the programmatic advertising industry defraud programmatic advertising platforms by using various methods such as click farm, bots and domain name fraud. These fraudulent activities, called digital ad fraud, cost advertisers and publishers millions of dollars each year. IAB Tech Lab aims to develop the industry by increasing the transparency of programmatic advertising platforms and preventing fraudulent activities with solutions such as ads.txt, app-ads.txt, sellers.json, buyers.json.

What is Ads.txt?

Ads.txt (Authorized Digital Sellers) is a simple and reliable IAB Tech Lab standard that allows publishers to announce the companies they authorize to sell their ad inventory and their affiliation with those companies. Publicly posting the Authorized Digital Sellers’ registration on the website increases transparency in programmatic advertising, as well as reduces the likelihood of digital ad fraudulent activities adversely affecting the value of the website, alongside the possibility of unauthorized advertising inventory being served to advertisers. Platforms are not required to use Ads-txt, but the use of ads.txt is strongly recommended.

What is app-ads.txt?

As an extension of the ads.txt initiative, app-ads.txt is created to meet the needs of applications with ad inventory distributed through different distribution channels such as mobile and television app stores. In this way, application owners in different channels can list the authorized dealers of the ad inventory in their applications and significantly reduce the profits of the fraudsters in the ecosystem selling fake inventory.

How do ads.txt and app-ads.txt work?

The objects in the ads.txt and app-ads.txt files have 4 values. These values are listed in the files in the following format:

After the ads.txt file is prepared, publishers should publish the “/ads.txt” file in the root domains of their websites. Anyone who wants to see the authorized digital sellers of examplesite.com should visit the address “http://examplesite.com/ads.txt". With this extension, authorized digital resellers are listed as follows.

adexchange1.com, 1234, DIRECT, AEC242 adexchange2.com, 5678, DIRECT ssp1.com, 9012, RESELLER

Thus, an advertiser who receives an offer request claiming to be from examplesite.com can check if the publisher ID matches the authorized vendors listed in the examplesite.com/ads.txt file. This will indicate whether the company making the offer is authorized to sell inventory on the specified website.

The working principle of app-ads.txt and ads.txt files is the same. The developer’s website must be accessible in the app store. After preparing the app-ads.txt file, publishers should publish the “/app-ads.txt” file on the root domain of the developer website.

The /app-ads.txt of the developer site, which is given as “http://exampledeveloper.com/game1" in the application store, is displayed as follows.

adexchange3.com, 987, DIRECT, a1b2c3 adexchange4.com, 654, DIRECT ssp2.com, 321, RESELLER, d4e5f6

This allows advertisers to view authorized inventory vendors simply and securely by accessing the developer’s website via the app store.

What is Sellers.json?

Ads.txt and app-ads.txt have been quite successful enabling publishers to define who is authorized to sell their inventory. However, ads.txt and app-ads.txt do not include publisher account IDs on ad platforms (SSP, ad exchange). The Sellers.json file allows one to find the identity of the end seller of a bid request in programmatic advertising, as well as identifying all agents participating in a bid request. In other words, it is the identity card of all parties involved in the sales process.

How does Sellers.json work?

Sellers.json object: Identifier

The name/value pair is used to convey common values such as identifier, job identifier, certificate ID. Values that can be used in the identifier list are TAG-ID (Trustworthy Accountability Group ID) and DUNS (Data Universal Numbering System).

  • name: Description of the identifier
  • value: The value of the identifier

Sellers.json object: Seller

The identity of the party paid for the inventory sold.

  • seller_id: The same ID displayed in the ads.txt file.
  • is_confidential: Indicates whether the vendor ID is hidden. 0=not hidden; 1= hidden.
  • seller_type: It can take the values “PUBLISHER”, “INTERMEDIARY” or “BOTH”. The value “PUBLISHER” indicates that the inventory sold through the account is on a site or app owned by the specified vendor and the advertising system is paying directly. The value of “INTERMEDIARY” indicates that the inventory sold does not belong to the named seller and the advertising system does not pay directly. The “BOTH” value indicates that both types of inventory are traded by the seller.
  • is_passthrough: It can take the values “1” or “0”. A value of “1” indicates that the seller has an account control relationship with an advertising system. A value of “0” indicates that the seller has no account control relationship with an advertising system.
  • name: The name of the company that is paid for inventory traded under the specified vendor ID.
  • domain: The domain of the company that pays for inventory traded under the specified vendor ID. It should be in the form of a root domain, not a URL. (True: example.com, Wrong: https://example.com/)
  • comment: Any helpful comment for the inventory.
  • ext: Placeholder for ad system-specific extensions.

The sellers.json extension of an ad system is displayed as follows.

{ "contact_email": "örnek@mail.com", "contact_address": "örnek adres", "version": "1.0", "identifiers": [ { "name": "TAG-ID", "value": "123abc" } ], "sellers": [ { "seller_id": "1234", "name": "Yayıncı1", "domain": "Yayıncı1.com", "seller_type": "PUBLISHER" }, { "seller_id": "5678", "name": "Exchange1", "domain": "exchange1.com", "seller_type": "INTERMEDIARY" }, { "seller_id": "9123", "name": "KarışıkYayıncı1", "domain": "KarışıkYayıncı1", "seller_type": "BOTH", "comment": "Hem kendi envanterini hem de başka yayıncıların envanterin satar." } ] }

Thus, advertising systems report to advertisers (buyers) on their relationship with each publisher.

What is Buyers.json?

Buyers.json is an IAB Tech Lab standard that allows programmatic advertising platforms and other intermediaries between the paying party and the publisher to publicly announce the buyers they represent. In this way, publishers and Supply Side Platforms can identify problematic buyers in-demand sources, easily understand advertising attacks, and take measures to protect their users. All platforms between publisher and advertiser should prepare the buyers.json file and publish it in the /buyers.json extension of their website root domain.

How does Buyers.json work?

Buyers.json object: Identifier

The name/value pair is used to convey common values such as identifier, job identifier, certificate ID. Values that can be used in the identifier list are TAG-ID (Trustworthy Accountability Group ID) and DUNS (Data Universal Numbering System).

  • name: Description of the identifier
  • value: The value of the identifier

Buyers.json object: Buyer

The identity of the party that pays for the inventory sold.

  • buyer_id: The buyer’s ID. If available, it must be the same as the ID that appears in the bidresponse.seatbid[].seat property.
  • is_confidential: Indicates whether the recipient ID is confidential. 0=not hidden; 1= hidden.
  • seller_type: It can take the values “ADVERTISER”, “INTERMEDIARY” or “BOTH”. A value of “ADVERTISER” indicates that the account is managed by the advertiser who purchased the inventory. A value of “INTERMEDIARY” indicates that the account is managed by an agent on behalf of the advertiser. The value “BOTH” indicates that the account is managed by both ADVERTISER and INTERMEDIARY.
  • name: The name of the company that pays for the inventory traded under the specified buyer ID.
  • domain: The domain of the company paying for inventory traded under the specified buyer ID. It should be in the form of a root domain, not a URL. (True: example.com, Wrong: https://example.com/)
  • comment: Any helpful comment for the inventory.
  • created_on: The date the buyer was created.
  • ext: Placeholder for ad system-specific extensions.

The buyers.json extension of an ad system is displayed as follows.

{ "contact_email": "adquality@advertisingsystem.example", "contact_address": "Advertising System Inc., 101 Main Street, New York, NY 10101", "version": "1.0", "identifiers": [ { "name": "TAG-ID", "value": "29da45e9wbh0bd5g" } ], "buyers": [ { "buyer_id": "1234", "name": "Advertiser, Inc", "domain": "advertisingdomain.example", "buyer_type": "ADVERTISER", "created_on": "2020-10-01" }, { "buyer_id": "5678", "name": "Intermediate Enterprises", "domain": "platformdomain.example", "buyer_type": "INTERMEDIARY", "created_on": "2020-09-21" }, { "buyer_id": "1000023", "name": "Agency Group", "domain": "agencydomain.example", "buyer_type": "INTERMEDIARY", "comment": "Main seat for Agency Group", "created_on": "2020-09-01" }, { "buyer_id": "212402", "is_confidential": 1, "buyer_type": "INTERMEDIARY", "created_on": "2020-10-01" } ] }

Thus, the transparency provided to buyers by sellers.json is provided to publishers, and advertising systems report to publishers about their relationship with each buyer.

Conclusion

Digital ad fraud is a problem that heavily impacts the programmatic advertising ecosystem. To increase transparency in the face of this problem, programmatic advertising platforms should benefit from technologies and standards that take the necessary precautions against fraud. In this regard, buyers should target the inventory sold through authorized channels by making use of ads.txt and app-ads.txt files, SSP and Exchange platforms should publish their sellers.json files on their sites for buyers’ review, and DSP platforms should publish their buyers.json files for sellers’ review. . Ads.txt, app-ads.txt, sellers.json and buyers.json, which are IAB Tech Lab standards are here to help prevent fraudulent activities, enable parties in the advertising ecosystem to make more informed decisions and increase credibility in programmatic advertising.

Subscribe to Newsletter

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Follow Us

Other Posts

What is Privacy Sandbox?

‘’The Privacy Sandbox will lay new foundations for a safer, more sustainable, and more private web.’’ says Google

Read more

·

5 min read

Future of Advertising in a Cookieless World

It’s no longer impossible to imagine an era without cookies in online advertising. The post-cookie world is almost here thanks to consumer demand, leg

Read more

·

7 min read

What is Contextual Targeting?

The announcement from Google that it will no longer allow third-party cookies in Chrome from 2023 on has stunned many in the industry.

Read more

·

Programmatic Advertising Essentials: What Is An SSP?

SSP is the platform used by publishers or digital media owners. It plays a key role in the AdTech environment.

Read more

·

5 min read