Case — a Dutch supplement shop owned by our own group
A misrepresentation suspension, nine measured faults, and a review that came back completed
Merchant Center suspended the account of a Dutch supplement shop owned by our own group, for misrepresentation across every product in the Netherlands. We measured nine faults and repaired them. After these fixes, the review was approved. What we cannot tell you is which fix did it.
The outcome
Google's reply, in full.
We repaired nine measured faults and asked for a review. After these fixes, the review was approved. That is the order the two things happened in, and it is the only relationship between them we can show.
The requested review of Misrepresentation has been completed and the issue no longer appears in your Merchant Center account.
No issues for you to fix All setup & policy issues will be shown here
Read this part
What the reply does not prove.
It is one sentence from an automated process, and it is worth exactly what it says and nothing more.
- It does not say which of the nine fixes mattered. Nine things were repaired and one button was pressed; the outcome is a single bit. A notice from an automated check that stops firing has not thereby told you what it was firing at.
- It does not say the shop is now correct. Three things were deliberately left unfixed and still are — the product URLs still in another language, sixteen feed rows with no price, twelve with no image and two with no title, and a shop that still shows no customer reviews, which was point two of Google's own notice.
- It does not say the same will happen for you. One case is one case. The only thing we can carry from it to your shop is the method, not the result.
Reading an approval backwards as a diagnosis is the same mistake as reading a green test as proof that the code is right.
What was measured
Nine faults, each with a before and an after on file.
The notice named misrepresentation across every product in the Netherlands. It named none of these nine. That is the ordinary case: the notice gives a category, and the faults inside it are found by looking.
- robots.txt pointed at another domain's sitemap, and blocked cart, checkout and account in the wrong language
- the contact address rendered as support@ex.comour-shop.eu to any visitor without JavaScript — which includes Google (domain masked; the mangling is verbatim)
- three countries were set as targets that the shop does not ship to
- two privacy policies were live at the same time
- the company block disagreed with itself across pages: two addresses, two spellings of the country, registration and VAT number missing on some
- 1,374 product descriptions carried leaked generator text or a fabricated approval
- eleven feed rows still carried leaked text and approval claims after the first pass
- a test product, /product/test/, was live and buyable in the live feed
- WordPress's default sample page was still published, and one category existed under two spellings
Domains on this page are masked. our-shop.eu is not a real address; the fault it shows is.
The figures
Four numbers, and where each one comes from.
| Figure | What it counts | Measured |
|---|---|---|
| 1,374 | product descriptions with leaked generator text or a fabricated approval | 24 September 2026, from our internal log |
| 9 | faults we measured and repaired, each with a before and after on file | 24 September 2026, from our internal log |
| 12,343 | products in the shop sitemap, once we read it with the identity Google uses | 23 September 2026, from our internal log |
| 146 of 1,000 | sampled product URLs still in another language — deliberately left alone | 23 September 2026, from our internal log |
What we got wrong
Four things were reported done that were not done.
None of them was carelessness, and that is why they are here. Between an edit and what Google sees there are at least three layers — the shop's page cache, the CDN, and Merchant Center's own copy — and each of them can lag without saying so.
| Believed | Actually | Caught by |
|---|---|---|
| the crawler reads the shop the way a browser does | the shop answered 403 to a browser and 200 to Googlebot — the reverse of what the tool was built for, so our first run saw zero product pages and read our own block as the shop being broken | fetching the same nine addresses by hand, one identity at a time |
| the feed has been regenerated | a byte-identical file, twice | MD5 and Last-Modified |
| the cache has been cleared | copies 1 h 41 min old | the Age header on a GET — a HEAD request lies about it |
| Merchant Center has fetched the new feed | Merchant Center had 5,932 items, the file had 5,931 | counting at both ends and comparing |
The first row is the expensive one, and it was ours alone: the crawler had been built for a shop that lets a browser in and turns Googlebot away. This shop did the opposite. Anyone who has to answer «does it hold?» has to measure at the end the reviewer is looking at, not at the end where the change was made.
What we would do on your shop
The same sequence, with one difference: we do not touch your shop. You get the findings with their evidence, a recipe card per fix, and the files to import. What happens in your Merchant Center account is decided by a reviewer neither of us can see.