Understanding ads.txt: A Guide to Correct Syntax and Format
In the ever-evolving landscape of digital advertising, transparency and trust play crucial roles. To combat ad fraud and ensure fair monetization for publishers, the Interactive Advertising Bureau (IAB) introduced the ads.txt (Authorized Digital Sellers) initiative and sellers.json In this article, we will delve into the world of sellers.json and ads.txt, focusing specifically on its correct syntax and format
What is Sellers.json ?
Sellers.json is a file that provides transparency and accountability in the digital advertising ecosystem. It is an initiative from IAB to improve the visibility of entities involved in selling digital advertising inventory.The sellers.json file serves as a public record that discloses information about the entities (sellers) participating in the advertising supply chain. It includes details such as seller IDs, domains, and the type of relationship they have with the inventory being sold.
By examining the sellers.json file, buyers and other stakeholders can gain insights into the entities selling the ad space, their legitimacy, and their role in the supply chain. It helps to address issues like domain spoofing, unauthorized reselling, and other fraudulent activities by providing greater transparency and enabling buyers to make informed decisions.
Google, as a major player in the digital advertising ecosystem, maintains its own sellers.json file. It includes information about the sellers associated with Google Ad Manager, AdExchange, AdMob, and other Google advertising products. The Google sellers.json file plays a crucial role in ensuring transparency and accountability for publishers, advertisers, and ad tech providers.
By accessing the sellers.json file, stakeholders can verify the legitimacy of sellers, understand the relationships between sellers and publishers, and identify any intermediaries involved in the ad transactions.
Regularly checking the sellers.json file helps maintain a secure and trusted advertising ecosystem by providing transparency and combating fraudulent practices. It allows buyers to verify the authenticity of sellers and build relationships with reputable partners.
Overall, sellers.json is an essential component of the industry’s efforts to create a transparent, accountable, and fraud-free digital advertising environment, benefiting advertisers, publishers, and ad tech platforms alike.
Correct Syntax of sellers.json:
Sellers.json is a JSON file that follows a specific format. It contains an array of objects, with each object representing a seller of ad inventory. The objects include fields such as “seller_id” (an encrypted identifier for the seller), “name” (the name of the seller), and “domain” (the domain associated with the seller).
Example of sellers.json Format:
{
"contact_email": "[email protected]",
"contact_address": "2 Pal Yam St. Haifa, Israel",
"version": "1.0",
"sellers": [
{
"seller_id": 21670403798,
"name": "RelictMedia Ltd",
"domain": "relict.media",
"seller_type": "BOTH"
}
What does PUBLISHER, INTERMEDIARY, or BOTH mean?
The seller type in Google's sellers.json file is determined based on the payment arrangement with the seller, following guidelines from the Interactive Advertising Bureau (IAB).
PUBLISHER: Sellers listed as PUBLISHER receive direct payment for the inventory they offer.
INTERMEDIARY: Sellers listed as INTERMEDIARY are paid indirectly for the inventory and do not own the website or app that contains the inventory.
BOTH: If a seller is paid directly for inventory but also monetizes a child account, they are listed as BOTH in the sellers.json file.
Example: Understanding PUBLISHER and INTERMEDIARY seller types
Let's consider Seller A and Seller B as an example:
Seller A: They have their own inventory on example.com and receive direct payment for it. Hence, Seller A is listed as PUBLISHER.
Seller B: Seller B monetizes Seller A's inventory on not-example.com through Multiple Customer Management (MCM) or Scaled Partner Management (SPM). Therefore, Seller B is listed as INTERMEDIARY.
If you come across a seller listed as PUBLISHER when they should be listed as INTERMEDIARY
Who should add the seller.json file?
All individual publisher and publisher networks should add the sellers.json file on the root domain.
Where I should add the root domain for sellers.json?
Fix issues with ads.txt and sellers.json files
In Google Ad manager, You can check the status of Sellers.json for all of the publisher, To get the sellers.json status file, Go to Ads.txt Section present in Admin
Various Status in sellers.json file from Google ad manager
Parent inventory authorization status
- SELLER_UNAUTHORIZED - You aren’t authorized, likely because you’re missing from the app-ads.txt or ads.txt file.
Add yourself to the app-ads.txt or ads.txt file. - SELLER_AUTHORIZED_WITH_WARNING - You’re authorized, but not as a reseller. Double check your publisher type in
app-ads.txt/ads.txt as a DIRECT seller. - SELLER_AUTHORIZED - You’re authorized. No issue.
Child Inventory Authorization Status
- CHILD_SELLER_ID_NOT_PROVIDED - You haven’t provided a seller ID for this child publisher. Note: This value only
shows if the app-ads.txt/ads.txt file was crawled successfully. For example, if the child seller ID is not provided
and there is an app-ads.txt/ads.txt crawling issue, this field will reflect “file not found” instead. Add a seller
ID for your child publisher. - UNAUTHORIZED - The child publisher isn’t authorized. They’re missing from the app-ads.txt/ads.txt file. Add the
child to the app-ads.txt/ads.txt file. - AUTHORIZED - The child publisher is authorized as a direct seller. No issue.
- AUTHORIZED_WITH_WARNING - The child publisher is authorized, but not as a direct seller. Double check the child's
publisher type in app-ads.txt/ads.txt.
Detailed information can be found on official documentation present on google ad manager
What is ads.txt? Correct Syntax of ads.txt:
Ads.txt is a text file placed on a publisher's website that lists the authorized sellers of their ad inventory
Correct Syntax of ads.txt:
Ads.txt follows a specific syntax to ensure proper implementation. The syntax consists of several fields, each separated by a comma. Let's break down the correct syntax for ads.txt:
Domain name:
The domain name refers to the website for which the ads.txt file is created. It should be specified as the first field in ads.txt. For example:
example.com
Publisher Account ID:
The publisher's account ID, provided by the advertising platform or exchange, is specified in the second field. It uniquely identifies the publisher within the ecosystem. For example:
pub-1234567890123456
Account Type:
The account type specifies the relationship between the publisher and the advertising system. It can be either "DIRECT" or "RESELLER." Use "DIRECT" when the publisher directly controls and sells their inventory, and "RESELLER" when the inventory is sold through authorized resellers. For example:
DIRECT
Certification Authority ID:
The certification authority ID is an optional field that allows publishers to specify their certification status with certain organizations, such as the Trustworthy Accountability Group (TAG). It helps ensure trust and transparency. For example:
tag.certified.com
Note: The above fields (domain name, publisher account ID, account type, and certification authority ID) should be combined with commas to form a complete line in ads.txt.
Example of ads.txt Format:
Let's look at an example of how the correct syntax is applied to ads.txt:
example.com, pub-1234567890123456, DIRECT, tag.certified.com
Partner | Certifcation Autority ID |
google.com | f08c47fec0942fa0 |
pubmatic.com | 5d62403b186f2ace |
rubiconproject.com | 0bfd66d529a55807 |
inmobi.com | 83e75a7ae333ca9d |
smaato.com | 07bcf65f187117b4 |
sonobi.com | d1a215d9eb5aee9e |
smartadserver.com | 060d053dcf45cbf3 |
yahoo.com | e1a5b5b6e3255540 |
adcolony.com | 1ad675c9de6b5176 |
indexexchange.com | 50b1c356f2c5c8fc |
beachfront.com | e2541279e8e2ca4d |
mintegral.com | 0aeed750c80d6423 |
loopme.com | 6c8d5f95897a5a3b |
adview.com | 1b2cc038a11ea319 |
algorix.co | 5b394c12fea27a1d |
appnexus.com | f5ab79cb980f11d1 |
contextweb.com | 89ff185a4c4e857c |
criteo.com | 9fac4a4a87c2a44f |
lemmatechnologies.com | 7829010c5bebd1fb |
openx.com | 6a698e2ec38604c6 |
opera.com | 55a0c5fd61378de3 |
pokkt.com | c45702d9311e25fd |
pubnative.net | d641df8625486a7b |
rhythmone.com | a670c89d4a324e47 |
spotx.tv | 7842df1d2fe2db34 |
spotxchange.com | 7842df1d2fe2db34 |
thebrave.io | c25b2154543746ac |
themediagrid.com | 35d5010d7789b49d |
unity.com | 96cabb5fbdde37a7 |
video.unrulymedia.com | a670c89d4a324e47 |
videoheroes.tv | 064bc410192443d8 |
xandr.com | f5ab79cb980f11d1 |
conversantmedia.com | 03113cd04947736d |
gamoshi.io | 20e30b2ae1f670f2 |
xad.com | 81cbf0a75a5e0e9a |
lijit.com | fafdf38b16bf6b2b |
triplelift.com | 6c33edb13117fd86 |
telaria.com | 1a4e959a1b50034a |
verve.com | 0c8f5958fc2d6270 |
vungle.com | c107d686becd2d77 |
tritondigital.com | 19b4454d0b87b58b |
targetspot.com | feb28ed826dcf532 |
consumable.com | aefcd3d2f45b5070 |
adtiming.com | bf66753b8f380142 |
uis.mobfox.com | 5529a3d1f59865be |
smartyads.com | fd2bde0ff2e62c5d |
se7en.es | 064bc410192443d8 |
mars.media | 8624339f102fb076 |
e-planning.net | c1ba615865ed87b2 |
tremorhub.com | 1a4e959a1b50034a |
lunamedia.io | 524ecb396915caaf |
aniview.com | 78b21b97965ec3f8 |
sharethrough.com | d53b998a7bd4ecd2 |
facebook.com | c3e20eee3f780d68 |
tapjoy.com | 29e595b1aeb5904d |
synacor.com | e108f11b2cdf7d5b |
mobfox.com | 5529a3d1f59865be |
sabio.us | 96ed93aaa9795702 |
toponad.com | 1d49fe424a1a456d |
lkqd.net | 59c49fa9598a0117 |
smartadserver.com | fd2bde0ff2e62c5d |
video.unrulymedia.com | 6f752381ad5ec0e5 |
emxdgt.com | 1e1d41537f7cad7f |
aol.com | e1a5b5b6e3255540 |
sovrn.com | fafdf38b16bf6b2b |
kubient.com | 4f12311e6ed900a3 |
gothamads.com | d9c86e5dec870222 |
max-mobi.com | 6c4d5f85197a5b3c |
chocolateplatform.com | 49a66ce31a704197 |
districtm.io | 3fd707be9c4527c3 |
groundtruth.com | 81cbf0a75a5e0e9a |
vidazoo.com | b6ada874b4d7d0b2 |
References