Ad industry is losing over $44 billion to ad fraud every year. And the numbers are rising as you are reading this.

Complex demand and supply chain indeed increase profits. However, it (for most parts) fails to steer clear of sharp practices in adtech. These sharp practices include but are not limited to:

  • Impersonating established sites and fabricating inventory A.K.A. domain spoofing
  • Faking mouse movements and social network logins
  • Showing fake heat map of visitors on a webpage

Domain Spoofing has caused much harm to the businesses involved in the advertising spectrum. IAB Tech Lab took the initiative of introducing ads.txt to solve the problem of domain spoofing.

What is Ads.txt?

Authorized Digital Seller (abbreviated as Ads.txt) is a list of all partners (including the publisher himself) authorized to sell digital inventory. This list is saved as a text file and uploaded to the root domain with all the authorized sellers.

In May 2017, IAB released this feature to sort out the supply chain and make it harder for fraudsters to claim inventory that doesn’t belong to them.

With the help of Ads.txt, buyers can verify the seller(s) assigned to trade inventory. This file goes directly into the root domain. And without proper access, nobody can alter a website’s back-end settings, making it safe to trust.

ads.txt working model

Source: IAB tech lab

It doesn’t require any specific technical skills to create and implement ads.txt. And if you use WordPress, then the process is as easy as installing a plugin (which we will discuss below).

How Does it Work?

The ads.txt file contains a list of all the companies authorized to sell a publisher’s inventory. Programmatic platforms keep another copy of ads.txt that lists the publishers they are allowed to represent in ad sales. This way, buyers have a standardized way of authenticating the inventory that they are bidding on.

How Can Buyers Verify Inventory?

There are a few ways to do this. If both the publisher and exchange have adopted ads.txt, buyers can check the ad tags to ensure they have a legitimate connection. Buyers can also go to the publisher’s website, pull the ads.txt file and manually check if the exchange that they are working with is listed.

IAB has also launched a crawler that can quickly query publisher websites for the text file; this is great for buyers who need to verify multiple publishers.

Benefits of Ads.txt

When the ad industry was losing billions due to ad fraud, ads.txt by IAB provided the most required safety. The reports suggest it can also help track the flow of money in the supply chain. Here are the benefits of using it:

benefits of ads.txt

Easy to Create

Ads.txt file is easy to create (discussed below). Furthermore, it takes only a few minutes to upload the file to your website. Simply place the file in your HTML root domain, and you have secured your ad inventory.

Easy to Update

Ads.txt file can easily be edited and updated with proper access to the root domain. For that, create a new .txt extension file with updated details. Remove the old .txt file and upload the new one in the place of that. Make sure the bots quickly crawl the files.

Private and Secure

Only the website owner can upload the ads.txt file on the website, making it secure from external corruption. There’s no way a fraudster can edit the file unless having the correct credentials to access the website.

Avoid the Crawling Issues with Ads.txt

Ads.txt file is placed in the website’s root domain to ensure it is easily crawled by search engines (such as Google). Avoid these issues with your file to overcome crawling errors:

  • Make sure the file is always available, even at the time of re-crawling.
  • Place it in the root domain for bots to scan it; example:
  • Your server / CDN should never return an invalid response to Google Crawler.
  • Ads.txt file should be accessible by both HTTP and HTTPS.
  • Robot.txt of the website should allow crawling your website.

Use the services of Google Webmaster to check your ads.txt file is crawled correctly. Robot.txt file has details of files and pages available to be crawled by Google and Bing bots.

How to Create and Upload Ads.txt

As discussed, ads.txt is a simple text file that can be created using a text editor. Enter the details of sellers and save them. Here is the required information:

Domain NameRequiredName or domain of the seller/reseller authorized to sell publisher’s inventory – to establish the ownership of the domain for the advertiser’s knowledge.
Publisher ID/Seller IDRequiredA unique identification number of the seller or the reseller. You can ask for seller IDs from your respective sellers and ad networks. Also, Google Adsense can help you get your publisher ID.
Example: pub-0000000000000000
Type of RelationshipRequiredDirect seller: communicates directly with the publishers to sell a part of inventory such as AdSense.Reseller: vendors authorized by another company (like ad exchange or SSP) to sell space on the domain; for example AppNexus.
Example: DIRECT
Certification Authority IDOptionalA unique identification code of the advertising system is certified by TAG (Trustworthy Accountability Group). Also known as TAG ID.
Example: f08c47fec0942fa0

Once you have these details in place, simply put them one after another in a text file, separated by a comma (,).

<Field #1>, <Field #2>, <Field #3>, <Field #4> 

OR, pub-0000000000000000, DIRECT, f08c47fec0942fa0

Save the file with the ‘txt’ file extension. Lastly, upload it to a website – just like a new page.

Here’s how it should look:

ads.txt example

Ads.txt and WordPress

Things get easier when using WordPress. Right? Every customization in WordPress starts with the installation of a plugin. There are various free plugins available offering easy management for ads.txt.

Here’s how it works for WordPress users:

  • Install ads.txt plugin on your WordPress-managed website.
  • On the left panel, click on Settings > Ads.txt to customize the settings.
  • Place your Ads.txt details and Save the settings.

As most publishers are using WordPress to manage their websites, you will find several plugins to create and implement Ads.txt. Choose the one that you find easy to use and reliable for you.

If you don’t want to use a plugin:

  • From the left navigation panel of WordPress Dashboard, click Media.
  • Click on the Add New button.
  • Upload the ads.txt file.
  • Wait for search engine bots to crawl it.

Note: Avoid uploading more than one file. If you wish to update, create a new file, delete the old one from the database and upload the new one.

Ads.txt and Google AdSense

It is not mandatory to use ads.txt for AdSense publishers. However, AdSense highly recommends it.

We strongly recommend that you use an ads.txt file. It can help buyers identify counterfeit inventory and help you receive more advertiser spend that might have otherwise gone toward that counterfeit inventory.

For publishers not using this on their AdSense, they can see an error message. Also, for publishers who have uploaded ads.txt with any error, AdSense will show an issue.

In both cases, it is advisable to resolve the error as soon as possible to avoid significant damage to your earnings.

Dealing With Ads.txt Issue in AdSense

To avoid this error, simply edit your file and include AdSense in the list of sellers. Then re-upload the updated text file to your website.

It can take a few days for changes to reflect. If your site is new with fewer page views, then it can take up to a month.

Ads.txt and Google Ad Manager

Just like with AdSense, Google recommends publishers to use ads.txt for their networks on Ad Manager. Here is how web publishers can add ads.txt for their GAM networks:

  • Create ads.txt in Google Ad Manager:
  • Sign in to ad manager and go to Admin > Ads.txt management. Make sure you have at least one AdX relationship and have user access to make changes to ads.txt. 
  • Now click the Web ads.txt > Create an ads.txt file.
  • Ad Manager will generate ads.txt details. You can remove the networks that you don’t wish to work within the future.
  • Publish ads.txt to root domain: Copy the ads.txt generated by GAM and paste it into your ads.txt file. OR download the file and upload it to your root directory.
  • Wait till search engines crawl your file. You can check the status on your GAM’s admin panel. 

What Will Ads.txt Accomplish?

Domain spoofing can significantly curb if ads.txt gains widespread adoption. No matter how advanced domain spoofing hacks become, the only way for this fraud to work is to hack into the publisher’s server and manually alter the text file — which is another whole operation.

According to AdOps Insider’s Ben Kneen, the practice is largely frowned upon and prohibited on exchanges like AppNexus, since it’s against APN policy to allow networks to source supply from other networks.

Challenges with Ads.txt:

The implementation of this text file is simple — it doesn’t need any special technical skills. After the initial setup, the only maintenance work required is periodically updating the list with the addition or removal of authorized ad networks and exchanges.

The challenge that this text file faces at the moment is market adoption.

According to a report on AdOpsInsider, the current adoption of ads.txt among publishers is 12.8%. In contrast, an analysis by MarTech Today reported that of the 500 most trafficked sites in the U.S., only 34 use it.

While those may not be big numbers, the push for this text file is still underway, and adoption may pick up as more publishers, networks, and exchanges become aware of the solution and join the bandwagon.

In other words, the idea of creating a more transparent exchange environment in adtech is still a dream. This text file helps by openly declaring the seller, but it is not without drawbacks.

  • Manual insertion of data: To create, update, and implement an ads.txt file, the publisher needs to make a manual effort- which takes time and increases the chances of human error.
  • Dealing with multiple demand partners: Most medium to premium publishers have multiple demand partners (including sellers and resellers). Publishers need to periodically make changes (add and remove) sellers from the list, which can be tiresome.
  • No way to report invalid use: Sometimes, details added to the ads.txt file can be entered wrong. In such a case, there is no way a demand partner can report this error to the publisher. Neither is there an automated process to check whether the entered details are correct.

Solution: To avoid human error while creating an ads.txt file, you can take the help of a free tool like Manage Ads.txt that lets you create, manage, and update the file for multiple domains.

But fraudulent activities are rising, and Ads.txt can help combat it, then why publishers are not opting for it.

The answer can sound a bit strange, but vendors are not comfortable with being ‘resellers’ of the inventory. Most of the time, publishers do not sell inventory directly. This is when vendors come into the picture. From the buyer’s point of view, a reseller doesn’t have complete inventory control and fewer variations.

Next, this text file doesn’t eliminate all ad fraud, just domain spoofing up to a certain extent. 

But things are changing now; advertisers seek inventories that support ads.txt. Even the demand-side has started updating the technology to look for only ads.txt inventory. Similarly, AdSense, claiming most digital publishers, asks publishers to upload ads.txt files for better monetization.

What Ads.Txt Implementation Means for Publishers

With mass ads.txt adoption finally around the corner, the jig is up for companies that exist solely through inventory arbitrage. Since its release in May 2017, many top publishers have adopted the ads.txt project, including Business Insider, CNN, The New York Times, The Washington Post, ESPN, and Forbes. 

Here are some figures that highlight ads.txt adoption rates:

  1. 12.8% of publishers have an ads.txt file under their domain.
  2. Only 1.3% of domains on its available inventory used ads.txt. 
  3. Only 34 out of the top 500 most trafficked sites had adopted ads.txt. 

Number of Authorised partners:

Ads.txt itself takes no stance on how many partners (Direct or Reseller) publishers can add to their list. There are “extreme ads.txt files” out there with a hundred or more partners in them.

Extreme (source: AdOpsInsider)

The length can be partly attributed to exchange integrations. A Direct platform sells impressions (not sold to its primary DSP connections) to Resellers. These connections have remained in the dark and reselling mainly happened without the publisher’s knowledge. 

This stands to change as more DSPs begin enforcing the authorized-sellers-only rule.

To provide promised fill rates and monetization to publishers, a Direct partner will have to get its backfill exchanges authorized by the publishers. 

Not all platforms do this for all integrations, though. In header bidding integrations, partners like Sovrn, Conversant, and real-time typically share their reseller-partners and provide separate pub IDs corresponding to those accounts; AppNexus, AOL, and Sonobi don’t.

From the yield perspective, it makes sense to publishers to authorize as many partners as possible—regardless of Direct or Reseller affiliation—to ensure that the bid request reaches as many platforms as possible.

Header bidding limits the need to add the whole reseller chain to some extent. Vendors with more resellers (than primary demand) will tend to win fewer impressions in a unified auction with net bid requests.

But there’s a case to be made for more minimalistic ads.txt files as well.

Rethinking Vendor Value

There are no clear-cut best practices on ads.txt implementation. But it does present an opportunity to publishers to reassess what any given vendor brings to the table. A partner, Direct or Reseller, is legitimately helpful if:

  • They add bid density which gets reflected in win rate and yield
  • They sell on your behalf to more significant exchanges that you can’t partner with Directly due to volume constraints
  • The platform receives different impressions/audiences with each separate Reseller/Direct IDs you add in ads.txt

It’s also about trust. A vendor responsible for sending in malicious creatives or loading video players (and ads) in the display slot could damage the UX. The long-term consequences of authorizing such partners far outweigh any perceived short-term benefits to yield.

Impact on Publishers Working With Multiple Networks/SSPs:

If you are anything like a typical publisher, trying and testing new ad networks and platforms are part of your routine.

However, managing ads.txt every time you add a new partner can be cumbersome. Whether you use AdSense or Ad Manager, you will have to edit the ads.txt file and re-upload for new buyers as a publisher. Not to forget that constant updates can lead to manual errors.

If this sounds like an issue, you can try a free ads.txt management tool.


  • Save time: You will save an endless number of hours that you would’ve otherwise spent manually managing ads.txt files for all your websites.
  • Stay secure: Auto validation and de-duplication check ensure that your ads.txt files are compliant with the standards laid by IAB.
  • Protect revenue: Having a secure text file setup means that your website is better protected against fraudsters trying to sell your inventory.

The Bottom Line

The entire advertising ecosystem needs to fight against the common enemy, i.e., ad fraud. More than that, there is a requirement of transparency in the ad industry to eliminate all the questionable activities.

IAB is constantly working on updating ads.txt and bringing similar tech to curb fraud. We now have:

  • Ads.cert: A side-kick to ads.txt, it validates the inventory by using cryptographically signed bid requests.
  • App-ads.txt: An app version to counterfeit the app fraud similar to what ads.txt does for websites running ads.
  • OpenRTB 3.0: A framework by IAB designed to bring security and transparency that supports the implementation of ads.txt and ads.cert.
  • Sellers.json: Sellers.json is managed by SSPs / ad networks where they are asked to share a list of all inventory providers (programmatic publishers and resellers) – to improve further transparency where buyers can see the final seller of the bid.
  • Pubvendors.json: IAB introduced pubvendors.json in support of the GDPR consent framework. It is intended to help publishers by sharing a list of vendors for their inventory. It includes basic details of vendors and their rights to use audience data generated by the publisher’s website.

Ads.txt is a simple and effective way to bring transparency; however, it is not perfect, just like any other technology. Hence, we see a slow adoption rate.

Ultimately, it becomes the responsibility of both the sell- and buy-side to make most of these security features bring back the true meaning to their business.

Frequently Asked Questions

Q1. What does ads.txt stand for?

Ads.txt stands for Authorized Digital Seller. It contains a list of all partners authorized to sell/resell a publisher’s inventory.

Q2. Is ads.txt mandatory?

Use of this text file is not mandatory but highly recommended. It also depends on your partners and advertisers. Some may specifically ask for ads.txt before getting into a partnership with you. For instance, Google AdSense highly recommends using this text file; otherwise, publishers might miss out on revenue.

Q3. Where do I place ads.txt?

Ads.txt resides like a page on your domain. Only one ads.txt file is needed, even if you have a multisite. It needs to be hosted on the top-level domain and not in a subdirectory or subdomain.

For example, your website is, then ads.txt should be accessible via

Q4. How does app-ads.txt work?

App-ads.txt aims to do for mobile app publishers what ads.txt did for web publishers—reduce ad fraud-related revenue loss and build trust with buyers. app-ads.txt (Authorized Sellers for Apps) is an IAB initiative through which mobile app publishers can declare vendors they have authorized to re-sell their inventories.

Q5. Where do I put ads.txt in WordPress?

For a WordPress website, you can either upload an text file directly to your domain or use a plugin to update it. We recommend using a plugin as it is more user-friendly and customizable. You can check this article on how to install a wordpress plugin.


Shubham is a digital marketer with rich experience working in the advertisement technology industry. He has vast experience in the programmatic industry, driving business strategy and scaling functions including but not limited to growth and marketing, Operations, process optimization, and Sales.


    • Rashmita Behera Reply

      Hey Jeremiah,

      If you don’t want to use a plugin, then you try this:
      On your WordPress Dashboard, click Media>>Add New. Upload the ads.txt file here. Wait for bots to crawl your site.
      Visit **/ads.txt to check the status.


  1. I am using godaddy online store
    Thats a templete which dont allow to add ada.txt file
    How it can be done

    • Rashmita Behera Reply

      Hey Girish,
      It’d be great if you contact godaddy support and raise this question.
      Also, you can try Manage Ads.txt to add Authorized seller file to your domain.


Write A Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Recent Posts