Blogger ads.txt "Earnings at Risk" Still Showing? Fix

adsense earnings at risk ads.txt blogger

Blogger ads.txt “Earnings at Risk” Still Showing? Here’s How to Fix It

If AdSense still shows "Earnings at risk" after you added ads.txt in Blogger, the problem is usually not the file. It is how Google reaches it. Open your ads.txt link in four versions (http and https, with and without www). The one that fails tells you what to fix, and on a Blogger custom domain it is most often the non-www redirect.

Key Takeaway: Google's crawler looks for ads.txt at the root of your domain and tries both HTTP and HTTPS. Saving the file inside Blogger is only half the job. Your domain setup has to let that crawler land on the file.

What "Earnings at Risk" Actually Means

An ads.txt file is a small text file that lists who is allowed to sell ad space on your site. Advertisers can choose to bid only on space sold by sellers listed this way. If AdSense cannot find your file, or finds a broken one, it warns you that your earnings are at risk. It does not mean your account is banned. It means AdSense cannot confirm it is an approved seller for your site yet.

First, open AdSense, go to Sites, and look at the ads.txt status next to your blog. Then follow the steps below in order. Do not skip Step 2, because it saves the most time.

Step 1: Add the Line the Right Way (2 Minutes)

Blogger's own help page says you set up ads.txt by hand if your blog uses other ad networks or if you pasted AdSense code yourself. If you connected AdSense through Blogger's Earnings tab, Blogger may handle it for you, but many people with custom domains still see the warning, so check this step anyway.

  1. In AdSense, click Account, then Settings, then Account information. Copy your publisher ID. It looks like pub- followed by 16 numbers.
  2. In Blogger, choose your blog, click Settings, and find the Monetization section.
  3. Turn on Enable custom ads.txt, then click Custom ads.txt.
  4. Paste this line, replacing the zeros with your own ID, and save:
google.com, pub-0000000000000000, DIRECT, f08c47fec0942fa0

Small mistakes break this line more often than you would think:

  • pub must be lowercase, and the "pub-" part must be there.
  • Every comma must be in place, with nothing extra between the parts.
  • Hidden spaces or strange characters can sneak in when you copy from a PDF or chat. Paste into Notepad first, then copy from there.
  • If you also use another ad network, paste its lines below the Google line. Do not delete the Google line.

Step 2: Test the Four URLs (This Finds Most Problems)

Open a private browser window and visit all four of these, using your own domain:

  • http://yourdomain.com/ads.txt
  • https://yourdomain.com/ads.txt
  • http://www.yourdomain.com/ads.txt
  • https://www.yourdomain.com/ads.txt

Each one should end up showing your ads.txt line, either straight away or after a redirect. Google's help pages say its crawler tries both HTTP and HTTPS, and that both should show the file or redirect to it. Here is how to read what you see:

What you seeWhat it usually meansGo to
Your line shows on all fourThe file is fine. The warning may just be waiting for a recheckStep 5 and Step 6
The non-www address shows your blog homepage instead of the fileThe root domain redirect is not keeping the /ads.txt pathStep 3
The non-www address shows an error or "site can't be reached"The root domain is not pointed to BloggerStep 3
A certificate or "not secure" warningHTTPS is not fully set up on that addressStep 4
Blank page or 404 everywhereCustom ads.txt is not saved or not turned onStep 1
Quick Win: Do this test before you change any setting. It takes two minutes and tells you exactly which step you need.

Step 3: Fix the Root Domain (The Blogger Custom Domain Trap)

This is the step that trips up most custom domain users. Blogger usually serves your blog from the www address, but AdSense looks for ads.txt at the root address (yourdomain.com without www). If the root address does not lead to your Blogger blog properly, AdSense never sees the file, even though it works fine on www.

In your domain registrar's DNS settings, you need two things:

TypeHostPoints to
CNAMEwwwghs.google.com
A@ (root)216.239.32.21
A@ (root)216.239.34.21
A@ (root)216.239.36.21
A@ (root)216.239.38.21

Then, in Blogger's custom domain settings, turn on the option that redirects the root address to the www address (the exact wording can differ a little). Google's help pages say multiple redirects are fine as long as each stays inside your own domain, and this one does.

A few things that commonly go wrong here:

  • Registrar forwarding. Some registrars offer "URL forwarding" or "domain forwarding" for the root address. Some of these tools send every visitor to the homepage and drop the /ads.txt part. Use the four A records instead.
  • Old records left behind. If the root address still has an A record for an old host, remove it. Only the Blogger records should be there.
  • Waiting time. DNS changes can take from a few minutes to a day or two to show up everywhere.
Warning: Before you change DNS, copy down your current records. A wrong change can take your blog offline. Also confirm the values above on Blogger's custom domain help page, because Google can update them.

Step 4: Make Sure HTTPS Works on Both Addresses

Because the crawler tries HTTPS too, a certificate warning on your root address can stop it from reading the file. In Blogger's settings, make sure HTTPS availability and HTTPS redirect are both turned on. After you change your domain records, the certificate can take a while to be issued, so give it some time and test again. If your blog is also showing duplicate versions in Search Console, our guide on what to check when Blogger posts stop appearing on Google covers that side.

Step 5: Check That AdSense Is Looking at the Right Site

Go back to Sites in AdSense and look at every row, not just the top one. The warning may belong to a different site entry: an old blogspot address, a domain you no longer use, or the www and non-www versions listed separately. Google's own ads.txt troubleshooter even asks whether your site address starts with www, so the version listed matters. If you find an old site you do not use, remove it.

If you use a free yourblog.blogspot.com address with no custom domain, skip Steps 3 and 4. Just open yourblog.blogspot.com/ads.txt and confirm your line shows.

Step 6: Ask AdSense to Recheck, Then Wait

Once the four URLs all work, tell AdSense to look again. Go to Sites, click your site, and click Check for updates. The ads.txt status should change to Authorized. If your site also needs a review, click Request review after that.

Now be patient. Google says it can take a few days for AdSense to crawl and confirm your file, and up to a month if your site does not make many ad requests. After the status is Authorized and the site shows as Ready, ads can take up to an hour to appear. Try not to change settings every day while you wait, because then you cannot tell which change worked.

Still Showing After All of That?

SituationWhat to do
All four URLs work but the warning stays for a week or twoClick Check for updates again and keep waiting. Low-traffic blogs are rechecked more slowly
The warning is about a different site in your listFix or remove that site entry (Step 5)
You have more than one AdSense accountMake sure the publisher ID in Blogger matches the account that shows the warning
You use another ad network tooKeep the Google line and add the other network's lines under it
Still stuckPost your public domain in the Google AdSense Community forum and describe what your four URL tests show

Fixing ads.txt does not by itself put ads on your pages. If your ads are still blank after the warning is gone, read why AdSense shows blank ads and how to fix it. Once everything is working, the top paying AdSense keywords guide can help you pick topics worth writing about.

Final Thoughts

Most "ads.txt still not fixed" cases on Blogger come down to one thing: the file exists, but Google cannot reach it from your root domain. Test the four URLs, fix the failing one, ask AdSense to recheck, and give it time. Do it in that order and you will not go around in circles.

Pro Tip: Save a note with your working ads.txt line and your DNS records. If you ever move to a new domain or registrar, you will have everything you need to set it up again in minutes.

Sourcing note: Crawl behavior, redirect rules, the Check for updates option, and review timing come from Google AdSense Help pages on ads.txt. The Blogger menu path comes from Blogger Help. The DNS records follow Blogger's custom domain setup, so confirm them on Blogger's current help page before you copy them. Menu names can change over time. Last checked September 2026.


Author Image

Hardeep Singh

Hardeep Singh is a tech and money-blogging enthusiast, sharing guides on earning apps, affiliate programs, online business tips, AI tools, SEO, and blogging tutorials. About Author.

Previous Post