AdSense rejected us twice in ten days. We publish both emails.
First rejection on Oct 12: an old personal signup made our company account a duplicate. Fixed that evening at 20:21. Second rejection on Oct 21: thin content, nine days of review. Dates, screenshots, what we change before reapplying, and an update log.
Bottom line up front: We put the ads.txt and the ownership file on codinggroup.ai on October 11, 2026 and submitted the company application right after. Ten days later we have two rejections, for two unrelated reasons. The first was our own forgotten data: a personal signup from years ago made the company application a duplicate account. The second arrived today, October 21: low value content. An account problem you can fix in one evening. A content problem you cannot fake. This post carries both emails and an update log, because we will reapply and report what happens.
The short timeline
- Oct 11. ads.txt and the verification file go on the domain. Company application submitted.
- Oct 12. Rejection 1 arrives, next morning. Reason: duplicate account. The email names the old signup. We close it that evening and resubmit at 20:21. No article changes, because the email names no content problem.
- Oct 13 to Oct 20. Waiting. Google says review takes a few days, sometimes two to four weeks.
- Oct 21. Rejection 2. Reason: low value content. The second wait lasted nine days.
Rejection 1: the duplicate we forgot

Translation of the mail: “You already have an AdSense account. AdSense rules allow each publisher only one account.” Then two choices, and the first choice names an email address I had half forgotten. A personal Gmail signup from years ago.
The match was never on the login. AdSense identifies publishers by payee name, address and phone number. Our company application listed me as the legal representative, the Huizhou address, my phone. All three fields also sit on that personal signup. One person, one account. The email was the whole diagnosis, and most people skip reading it before touching their website.
Our first plan was to keep both accounts. The old one earns nothing, so leaving it open but untouched felt safe. It is not safe. Running multiple accounts violates the terms, and the system rechecks identity fields when payout details get configured. A dormant duplicate puts the new account’s payouts under risk. And the rejection would never clear while the old account exists. So: settle the balance (we had none), close the old account, sign in from the company account to confirm the closure, press request review again. Same evening, 20:21. Ownership stayed green throughout.
The lesson generalizes beyond AdSense. We keep our Microsoft Store, Google Play and KDP payouts in separate WorldFirst subaccounts, one per platform, for the same reason. Any payment system identifies you by the person and the address, not by the email you happened to use this week. Before a second application of any kind, check what the first one already put on file.
Rejection 2: low value content

This email is a template. Our team finished the review, your site does not fully meet the requirements yet, correct the problems, then request another review. No details inside. The details live on the dashboard.

Ownership verified: green. Below it, one red panel: low value content. The screen lists three conditions, translated from the Chinese interface. The site must offer genuine, high quality information, tools or services. It must show ongoing curation of quality content and a maintained page structure. And it must attract and hold real user attention.
The honest read: this one is fairer than the first. The domain is three weeks old. When the review ran we had eleven articles, published in a dense window of under three weeks. Some of those articles are thin. They lean on other people’s data and not enough of our own. A reviewer looking at this site sees exactly that, and the label fits what they see.
I am not going to argue the label away. I would rather change what the reviewer sees and write down whether it worked.
What we change before reapplying
- Deepen, do not widen. The thinnest posts get receipts only we can hold: the store dashboard numbers from File Guardian and PlateWipe, the Microsoft certification timeline we lived through this month, the cost tables from our own accounts.
- Every post keeps one thing nobody else has. Two apps in the Microsoft Store, a Google Play organization registration trail, a D-U-N-S correction case with a tracking number. That material cannot be rewritten from someone else’s blog post.
- Slow the cadence. Eleven posts in under three weeks on a new domain was a mistake to make visible. The next post takes the time it takes.
And one thing we do not do: we do not press request review this week. Resubmitting against the same reason, with the same pages, is the fastest way to make this rejection stick. The last review took nine days. We will spend two or three real weeks on the content first.
Update log
- 2026-10-21. Rejection 2 received (low value content). This post published with both emails. Next update after the deepening pass, or when we reapply, whichever comes first.
We will keep this page current with every step. When the third application resolves, whichever way it goes, the answer will be here, with the date.
This is a field report from a one-person software company in Huizhou, China. We write up the bills, the rejections and the fixes at codinggroup.ai.