Google AdSense warning to publishers for Earnings at risk with missing ads.txt “Earnings at risk – You need to fix some ads.txt file issues to avoid severe impact to your revenue“
Authorised Digital Sellers, or ads.txt is an IAB initiative that helps ensure that your digital ad inventory is only sold through sellers (such as AdSense) who you’ve identified as authorised. Creating your own ads.txt file gives you more control over who’s allowed to sell ads on your site and helps prevent counterfeit inventory from being presented to advertisers.
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 towards that counterfeit inventory.
WHAT IS THE ADS.TXT PROJECT?
The mission of the ads.txt project is simple: Increase transparency in the programmatic advertising ecosystem. ads.txt stands for Authorized Digital Sellers and is a simple, flexible and secure method that publishers and distributors can use to publicly declare the companies they authorize to sell their digital inventory.
By creating a public record of Authorized Digital Sellers, ads.txt will create greater transparency in the inventory supply chain, and give publishers control over their inventory in the market, making it harder for bad actors to profit from selling counterfeit inventory across the ecosystem. As publishers adopt ads.txt, buyers will be able to more easily identify the Authorized Digital Sellers for a participating publisher, allowing brands to have confidence they are buying authentic publisher inventory.
Earnings at risk – A Warning for Publishers from Google AdSense
Create and Setup your own ads.txt file for AdSense for your Websites “Earnings at risk”
Here’s how to create an ads.txt file to publicly declare that Google is authorised to sell your ad inventory:
- Create a text (.txt) file.
- Include the following line:
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0
Important: Make sure that you replacepub-0000000000000000
with your own publisher ID. - Host your ads.txt file at the root level of your domain. (for example, https://example.com/ads.txt). Root levels are one level down from what’s listed in the public suffix list. For example, “google.co.uk” is a root domain of “co.uk” but “maps.google.co.uk” is not.
Set up an ads.txt file for your Blogger Website for Warning “Earnings at risk”
If your blog is monetized with third-party providers or you’ve manually integrated AdSense in your blog, you will need to manually set up the content of the ads.txt file.
- Sign in to Blogger.
- In the top left, click the Down arrow .
- Click the blog you want to set up an ads.txt file on.
- On the left, click Settings.
- Under “Settings,” click Search preferences.
- Under “Monetization,” find “Custom ads.txt” and click Edit.
- Click Yes.
- Copy the settings from your third-party monetization provider and paste them in the text box.
- Click Save settings.
- Optional: To check the content of your ads.txt file, go to http://<your blog address>/ads.txt.
Note: If your blog is not monetized, or it’s only configured to use AdSense using the Blogger-AdSense integration, then you do not need to manually set up ads.txt. Blogger will do this for you.
File Format for ads.txt file
Include a separate line in the file for each authorised seller. Each line in a publisher’s ads.txt list requires three pieces of data (plus a fourth optional field):
<Field #1>, <Field #2>, <Field #3>, <Field #4>
<Field #1>
: The domain name of the advertising system (required).The canonical domain name of the SSP, exchange, header wrapper, etc. system that bidders connect to. This may be the operational domain of the system, if that is different than the parent corporate domain, to facilitate WHOIS and reverse IP lookups to establish clear ownership of the delegate system. Ideally the SSP or exchange publishes a document detailing what domain name to use. For Google seller accounts, the domain name is alwaysgoogle.com
.<Field #2>
: The publisher’s account ID (required).The identifier associated with the seller or reseller account within the advertising system in field #1. This must contain the same value used in transactions (such as OpenRTB bid requests) in the field specified by the SSP/exchange. Typically, in OpenRTB this is the publisher.id field. For OpenDirect, it is typically the publisher’s organization ID. For Google seller accounts, use the publisher ID displayed in each account (for example,pub-0000000000000000
). To find this ID:- In AdSense: Sign in to your AdSense account, then click Account Account information.
- In Google Ad Manager: Sign in to Google Ad Manager, then click Admin Global settings to find the publisher ID of your primary account and any other linked accounts. Only include the
pub-
prefix and the 16-digit numeric code in your declaration. Delete the product-specific prefix (for example,ca-
orca-video-
). If you monetise through multiple Ad Manager and/or AdSense accounts, you must include a separate row for each account, with its correspondingpub-
code. Domains where an ads.txt file is posted, but the seller’s publisher ID is not authorized in the file, are no longer monetised through Ad Manager, and Google no longer buys ads on such sites. To prevent impact to your earnings, we recommend that you update your ads txt files to include publisher IDs for each site that you want to monetise. If you use Scaled Partner Management, we recommend working with your scaled partners to include your publisher ID in their ads.txt files.
<Field #3>
: Type of account/relationship (required). An enumeration of the type of account.- A value of ‘
DIRECT
‘ indicates that the publisher (content owner) directly controls the account indicated in field #2 on the system in field #1. This tends to mean a direct business contract between the publisher and the advertising system. Google publishers who directly control the account indicated in field #2 should specify'DIRECT'
. - A value of ‘
RESELLER
‘ indicates that the publisher has authorised another entity to control the account indicated in field #2 and resell their ad space via the system in field #1. Other types may be added in the future. Note that this field should be treated as case-insensitive when interpreting the data. Google publishers who do not directly control the account indicated in field #2 should specify'RESELLER'
. For example, an Ad Manager account using Network Partner Management should specify'RESELLER'
for inventory that the account doesn’t manage directly.
- A value of ‘
<Field #4>
: Certification authority ID (optional). An ID that uniquely identifies the advertising system within a certification authority (this ID maps to the entity listed in field #1). A current certification authority is the Trustworthy Accountability Group (TAG), and the TAG ID would be included here.For Google seller accounts, the TAG ID isf08c47fec0942fa0
.
Follow all the above Steps to add the ads.txt file on your websites to deal with the warning “Earnings at risk – A Warning for Publishers from Google AdSense” if not reachable
What after Adding ads.txt file on your website?
Ensure that your ads.txt files can be crawled
Once an ads.txt file is set up on your domain, the Google crawler will:
- Attempt to crawl the file every 24 hours.
- Parse the content of the file to determine seller IDs that are authorised to monetise your inventory.
To ensure that your ads.txt file can be crawled, we recommend working through the following troubleshooting steps.
Confirm that the file isn’t temporarily unavailable
If a previously seen ads.txt file is unavailable on a subsequent re-crawl, the previously seen entries will be:
- Purged if the response is a hard 404 error (page that actually doesn’t exist; HTTP 404 status).
- Retained for up to five days if the response is a soft 404 error (a real page returned for a URL that doesn’t actually exist; HTTP 200 status) or a 500 server error.
Confirm that the file is reachable from the root domain
Redirects from yourdomain.com/ads.txt
to www.yourdomain.com/ads.txt
are fairly common. Ads.txt crawling will start at the root domain and the root domain needs to return from, or redirect to, the ads.txt file.
An ads.txt file on www.yourdomain.com/ads.txt
will only be crawled if yourdomain.com/ads.txt
redirects to it.
Ensure that crawling isn’t disallowed by robots.txt
The ads.txt file for a domain may be ignored by crawlers if the robots.txt file on a domain disallows one of the following:
- The crawling of the URL path on which an ads.txt file is posted.
- The User Agent of the crawler.
Example: Crawling disallowed on ads.txt file path
For example1.com:
- An ads.txt file is posted on
example1.com/ads.txt
. - The following lines are included in
example1.com/robots.txt
:User-agent: *
Disallow: /ads
- The ads.txt file will be ignored by crawlers that respect the robots.txt standard.
- You can modify the robots.txt file as follows to allow crawling of the file (other approaches are possible):
- Option 1: Modify disallowed path.
User-agent: *
Disallow: /ads/
- Option 2: Explicitly allow ads.txt; depends on crawler support for the
Allow
robots.txt directive.User-agent: *
Allow: /ads.txt
Disallow: /ads
- Option 1: Modify disallowed path.
Example: Crawling disallowed for User Agent
For example2.com:
- An ads.txt file is posted on
example2.com/ads.txt
. - The following lines are included in
example2.com/robots.txt
:User-agent: Googlebot
Disallow: /
- The ads.txt file will be ignored by the Google crawler.
Ensure that the file is returned with an HTTP 200 OK status code
While a request for an ads.txt file may return the content of the file in the response body, if the status code in the response header indicates the file wasn’t found (e.g. status code 404):
- The response will be ignored.
- The file will be considered non-existent.
Make sure that the file has an HTTP 200 OK status code.
Ensure that there are no formatting errors or invalid characters in the file
Formatting errors, such as invalid whitespace characters, may be difficult to detect but can make an ads.txt file difficult to parse by a crawler and may therefore result in a file being ignored. Avoid copying and pasting ads.txt entries from a rich text editor; we recommend a plain text editor.
Make an ads.txt file reachable via both HTTP and HTTPS
The Google crawler attempts to crawl all ads.txt files on both HTTP and HTTPS. However, a 404 (or 40X) response causes previously crawled entries to be purged, even though an ads.txt file is crawled via HTTP. Therefore, if crawling via HTTPS returns a 404 (or 40X):
- The previously crawled entry will be purged.
Please ensure that the ads.txt is accessible via both HTTP and HTTPS.
Follow all the above Steps to deal with the warning “Earnings at risk – A Warning for Publishers from Google AdSense” if not reachable