11/12/2026
AdSense Low Value Content: Find the Thin Pages First
Short answer: a "low value content" rejection judges the site as a whole and does not name the pages that sank it, so find them yourself before you rewrite anything. Crawl every page in your sitemap, count the words on each, and ask Search Console which ones Google indexed. The pages Google ignores, grouped by template, are usually your weak spot. Fix that template, remove anything that reads as unfinished, then request the review.
That is how restorationadvertising.com went from an AdSense rejection to a review request in two days, 09/29/2026 to 09/30/2026. The rejected version was an older WordPress site, and the honest verdict on it was that it wasn't up to par. What follows is the method, the numbers it turned up, and what it does not prove.
What the rejection tells you, and what it doesn't
Google AdSense gives a reason, not a list of URLs. Its help page on what to do when your site is not ready to show ads names four causes: missing or incomplete ad code, an unreachable site, not enough unique content or a poor user experience, and policy violations. Thin content is the third one, and the page stops at "enough valuable content to users."
The policy behind the phrase is Google's rule on ads on screens without publisher content. It refuses Google-served ads on screens "without publisher-content or with low-value content," on screens "that are under construction," and on screens used for navigation. It also says not to place ads on automatically generated content without manual review or curation.
The AdSense eligibility requirements add one line that matters here: content must be "high-quality, original, and attract an audience." None of these pages tells you which of your pages failed. That gap is why so much advice online says "write more posts and wait," which can cost months and still leave the real problem in place.
Find the thin pages: measure, don't guess
Google Search Console is the closest thing to a second opinion you can query page by page. The sweep on restorationadvertising.com was done by Claude Code at my direction, with the brief to think like Google: what would a reviewer see as weak?
Step 1: crawl what you are asking Google to review
Fetch every URL in your sitemap and record the status code and the word count of the main content. A script that checks status codes needs to fail loudly on errors; curl exits 0 on a 404 unless you pass --fail, which is an easy way to miss a broken page in a sweep.
Step 2: ask Search Console about every page
The Search Console API's URL Inspection method returns, for one URL, a verdict on whether it is indexed and a coverageState saying whether Google could find and index it (field reference). The Search Console API usage limits allow 2,000 inspections per site per day, so a site of a few hundred pages fits in one pass.
What it showed
Group the results by page type, and the pattern is hard to miss:
| Page type | Pages | Words per page | Indexed |
|---|---|---|---|
| Everything except directory listings | 41 | not the issue | 41 of 41 |
| Business directory listings | 71 | 82 to 140 | 0 of 71 |
All 113 sitemap pages were crawled. The 14 articles published that week were indexed within a day. The 71 listings made up 63% of the site, and Google had indexed none of them. That was the strongest low-value signal on the site, and it was one template, not the whole site.
Index status is a proxy, not AdSense's verdict. Search can skip a page for reasons that have nothing to do with ads. But when most of a site sits in a group Google declines to index, a reviewer looking at the same pages is likely to find them weak too.
I have not re-run the inspection on the rewritten listings. The Search Console performance data I synced for 09/28 to 10/26/2026 has rows for three of the directory's trade pages and none for an individual listing. That is silence, not a verdict: a page with no recorded queries can still be indexed.
Fix the weak template, not the whole site
Once the problem had a name, the work was specific. Here is everything that changed on restorationadvertising.com before the review request:
| Change | What it addressed |
|---|---|
| Listings rewritten to describe the trade and the service area, without claims about the business | 0 of 71 listings indexed, 82 to 140 words each |
| Four thinly sourced claims cut from listings | Claims the sources did not support well |
| Two listings' websites, which now served spam, turned into plain text | Links to spam from the site's own pages |
| "Coming soon" wording removed from every page and from llms.txt | Google's "under construction" wording |
| 22 articles published, each with a cover image | Not enough original content |
| A "By Restoration Advertising" byline on every article | Articles with no visible byline |
The listings
The idea for the listings was mine: describe the trade and the area, and say nothing about the business itself that we could not stand behind. Three listings were piloted and approved, then the rest were written by six writer agents in parallel, each sourcing regional facts. Listings went from 82 to 140 words to 282 to 395, with a median of 342.
The 22 articles went out as AI-written rough drafts, which I edit into my own; four I approved as they were. Covers came from Antigravity, each reviewed before it was used.
"Coming soon" is a red flag
Google's policy names screens "that are under construction." A page or a file saying a feature is coming soon tells a reviewer the site isn't finished. Once the site worked, that wording had no reason to stay, and it came out everywhere, including llms.txt (the file my llms.txt error write-up covers).
ads.txt, the privacy policy and the consent message
The IAB Tech Lab's ads.txt file lists who may sell ads on a domain. Google's ads.txt guide says its use "is not mandatory, but it's highly recommended." Before the review request, the publisher ID in restorationadvertising.com's ads.txt was checked against the AdSense account.
Two lessons from this site, tools.belchamber.us, belong here too:
- ads.txt belongs to the root domain. On 09/30/2026 AdSense reported that belchamber.us had no ads.txt, although this subdomain, which serves the ads, had one. The Ads.txt FAQs explain why: Google uses the ads.txt hosted on a root domain, and reads a subdomain's own file only when the root's file references it.
- The privacy policy must match a message that exists. Both ad sites' policies promised that visitors in the EEA, UK and Switzerland are asked for consent. That is Google's European regulations message, not the US-states one. Google requires a certified consent platform for personalized ads in the EEA, UK and Switzerland, and its own message qualifies. For a while this site's policy promised a prompt nobody would see.
On restorationadvertising.com, the privacy page gained an Advertising section, and the consent message was set up before the review was requested.
Requesting the review
The request itself is short. The not-ready help page says to open Sites in AdSense, select the site, confirm the ad code is placed, click Next, then Request review.
Before clicking it, each of these had an answer:
| Question | Where the answer came from |
|---|---|
| Which pages are thin? | A sitemap crawl and per-URL index status, not the rejection notice |
| Is the site unfinished? | Every page and file searched for "coming soon" wording |
| Is ads.txt right? | The root domain's file, checked against the publisher ID |
| Does the policy match reality? | The consent message that actually exists in AdSense |
| When to request review? | When the fixes are live, without waiting on Search |
One piece of advice was corrected along the way. The first plan was to wait a week for Google Search to recrawl the rewritten listings before asking. That was too cautious: AdSense has its own crawler, Mediapartners-Google, listed among Google's special-case crawlers, and the review steps say nothing about waiting for Search indexing. The review was requested on 09/30/2026. A re-check that afternoon showed Search had not yet recrawled the listings.
If you restrict crawlers, note that the same page says this crawler ignores the global * user agent; my notes on what crawlers actually do with robots.txt cover the rest.
What to expect after
The AdSense site status page says a review "usually takes a few days, but in some cases can take 2-4 weeks," and advises against removing and re-adding the site while it shows "Getting ready," since that can cause delays.
The approval date isn't recorded in my notes from that session. The site's own history does give a limit: ads went live on restorationadvertising.com on 10/03/2026, three days after the request, so approval came no later than that.
Two days after ads went live, on 10/05/2026, the complaint was a different one: ads were showing, but rarely. I can't say why from the records I have. The site's traffic is small, and in the weeks after, I moved most of the site's ads behind a delay (the table below). What it shows is that approval, working ad code and a live ads.txt are three steps toward seeing ads, not the same thing as seeing them.
Approval also does not end the low-value question. The same policy applies page by page after approval. On restorationadvertising.com I ruled that thin content was the thing to avoid, and not something to work around with ad placement. I checked the live pages on 10/26/2026:
| Page | AdSense script |
|---|---|
| Directory index, a trade page, a listing | None |
| Home page and article category indexes | Loads after the reader's first scroll or click, or after 15 seconds |
| An article | Loads normally |
Here on tools.belchamber.us the home page also waits, for the reader's first interaction or a backstop timer, before it loads the script at all.

Let my Claude help your Claude
If you want a second pair of eyes on how your own setup uses AI-assisted development, that's what this is: me, personally, for AI specifically. Broader business growth and technology consulting is Brandager's own team.
Researched and drafted with AI, then reviewed and edited by the site's editors.