Ads.txt: How Does it Prevent Ad Fraud (and Why Should I Use it)?

male travel blogger taking photos on a DSLR camera on a tripod with cliffs and ocean behind him

Last month, the IAB (Interactive Advertising Bureau) announced a new standard, ads.txt, to help fight ad fraud.

As of today, Mediavine is proud to announce that we’d made it easy for our publishers to quickly adopt this standard via our Mediavine Control Panel WordPress Plugin or via our dashboard for other platforms. But first, because you asked …

What is ads.txt?

Similar to the infamous robots.txt file, it’s a “plain text” file that is hosted on your root domain, at the top level of your website, and it contains a list of authorized sellers of your advertising inventory.

You can see an example here: https://www.thehollywoodgossip.com/ads.txt

What’s the point of ads.txt?

The ads.txt initiative was started to combat ad fraud and in particular, two main types – unauthorized reselling of your ad inventory through arbitration, and more importantly, ad fraud through misrepresentation or counterfeit ad impressions.

Okay, great. What does all that mean?

It’s easiest to think of the Ad Exchanges like any other digital marketplace where you buy things, such as eBay or Amazon. However, instead of selling physical products we’re shipping out, we’re selling individual ad impressions.

Every single time someone visits your site, each ad impression from each ad unit on your page goes up for sale in a real time auction. Auctions that move as fast as the stock exchange.

The buyers are pre-trained computer algorithms deciding in real time if they’re purchasing your ad inventory in fractions of a second. They make a bid, and then the ad server determines the winner and serves that ad.

The important part for this discussion, is the accuracy of information being presented about that ad impression to the buyer, when they’re making the decision whether to bid or not.

That all is handled by something called the OpenRTB spec. To explain how this work, let’s use The Hollywood Gossip for our example and AppNexus for our ad exchange.

AppNexus, in addition to being one of top ad exchanges competing for your inventory, is a technological arbiter through which programmatic advertising bids are delegated. Top publishers and networks, including Mediavine, have “seats” at AppNexus through which we can officially represent our inventory.

When someone visits The Hollywood Gossip, we instantaneously send off that impression to AppNexus with some information such as the page the user if visiting, at which point AppNexus lists it for sale as thehollywoodgossip.com, the URL they’re visiting, and Mediavine’s seat ID, 3626, as we’re the ones listing it.

Advertisers, who have learned to trust buying on The Hollywood Gossip as a brand-safe celebrity gossip site, can now bid if they want to buy inventory there.

A person types code on a laptop.

Okay, everything sounds wonderful. Now what’s the issue?

In a pre ads.txt world, buyers didn’t know that there was only one authorized seat (Mediavine’s) that could sell thehollywoodgossip.com ad inventory. Any seat ID on AppNexus technically could sell our inventory and in fact, there are many legitimate cases when we could want this.

For example, both bRealTime and Distict M, two partners of Mediavine, have seats on AppNexus, allowing AppNexus advertisers to buy our inventory through other partners we work with, creating even greater competition for the auction.

Unfortunately, there are also many nefarious scenarios where this complicated system could be manipulated. Let’s go over the two main ones.

Unauthorized Arbitration

This is a pretty common situation that exists throughout the ad ecosystem and allows thousands and thousands of middle men to exist and thrive. Let’s say Shady Ad Network has a seat on AppNexus where they can sell ad inventory.

Like many publishers, we have our ad inventory listed for sale in multiple ad exchanges to increase competition and to make sure we’re reaching all of our buyers.

However, there are various tricks a middle man can attempt to make money by buying your inventory cheap and selling it for more money, making their profit on the difference.

So let’s say Shady Ad Network happens to find our ad inventory for cheap on Google AdExchange or another exchange we’re listed on that’s not AppNexus, and buys it.

Shady Ad Network could turn around and resell that same impression they bought for cheap, and try to sell it for a more expensive amount on AppNexus via their own seat.

Remember, this all happens in fractions of a second, via computers, so there’s programming in place to watch for these opportunities and make them happen.

What they did was technically allowed, and easy to do in the existing ecosystem. A buyer has no idea whether Shady Ad Network on Seat XXXX was authorized to sell your inventory or not. They’ll gladly buy it, since they want that impression on that site, period. They don’t care who they bought it from.

Shady may have found ways to mark up your inventory, whether that’s layering in their own custom data, using some sneaky ad refreshes to sell your inventory multiple times, or just running higher selling video ad impressions through your display ads – using what’s known as in-banner video.

Ads.txt will, in theory, let buyers know the authorized seats that a website listed on AppNexus allows its impressions to be purchased.

Unless we strike a deal with Shady Ad Network because we trust them, they won’t be listed in our ads.txt, and buyers can know to avoid buying thehollywoodgossip.com on there if they want to buy the impression directly without any games or untrue data.

Counterfeit Ad Impressions

If middle men attempting to resell your inventory wasn’t scary enough, there’s a much shadier practice out there that ads.txt is attempting to combat. That’s straight up ad fraud – people pretending to be you and selling their ad inventory as if it were yours!

This happens all the time, and especially to larger sites, like Business Insider, who actually helped lead this new standard.

Let’s go over a new example. Let’s say there’s a Evil Ad Network operating out of some other country and they also happen to have a seat on AppNexus. (Sorry AppNexus, we know you’d never let Evil Ad Network in, we’re just using you for an example!)

Now Evil Ad Network happens to own a few domains where they buy lots of fake bot traffic to. Those domain names? We’ll never know.

Why? Because when they go to list their own inventory for sale on AppNexus, Evil is listing it as if it’s your domain!

A buyer might be thinking, “Hey, I’m getting a great deal on The Hollywood Gossip!” In reality, they’re actually buying on xyaysayyxyfayz.com with fake traffic!

Wait, how is that possible?

A couple of ways. First, because an ad impression is a digital product, it’s pretty easy to change the URL or domain you’re saying an ad impression is being served from.

While there certainly are some safeguards against this, they’re unfortunately still things you can get around if you’re attempting to do so maliciously.

Also, a lot of this was by design.

In an industry loaded with middle men, multiple people do need the ability to list your inventory, so there was never previously a way for you to declare who was not allowed to.

That’s the entire point of ads.txt. It finally gives you, as the publisher, or Mediavine, as your authorized seller of the inventory, the chance to say where it’s legitimate to buy.

A female blogger works on a desktop computer.

How do you set up your ads.txt file?

If you’re a Mediavine publisher, it’s easy. If you’re running WordPress, just make sure you’re running the latest version of the Mediavine Control Panel.

It’s all set up for you and will automatically sync with Mediavine as we go to add new authorized ad exchanges.

If you’re not running WordPress, you can download the latest version of your ads.txt file right from your Mediavine dashboard. Unfortunately if you are on Blogger, it doesn’t seem to support text file uploading, this isn’t an option for you right now.

Remember that this is a manual process, so you may want to periodically download and upload a new one as these will be changing every few months as more of our partners adopt this standard. Please see our help articles on ads.txt for more information.

What do I do if I’m not a Mediavine publisher?

Well, first, why not? You should apply now!

But seriously, if not, you can use The Hollywood Gossip’s ads.txt file as an example and work with your ad exchanges to get you the proper lines for your ads.txt file.

Related Posts

Behind the Numbers With Brad: Planning for Q3 and Q4

Behind the Numbers With Brad: Planning for Q3 and Q4

4 min read

Ah, July. It’s a glorious month of sand-filled swimsuits, mosquito invasions, broken air conditioners and applying sunscreen only to look like cooked lobsters. It’s also the start of a new …

Read More