{
  "id": 10099767,
  "title": "Google crawled 270 of my articles and indexed none — the body it received was 0 characters",
  "url": "https://urgent.news/2026/09/27/google-crawled-270-of-my-articles-and-indexed-none-the-body-it",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-27T00:22:02.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/dexterlung/google-crawled-270-of-my-articles-and-indexed-none-the-body-it-received-was-0-characters-303h"
  },
  "original_language": "en",
  "account": "On 13 August 2026, the author discovered that Google had crawled and indexed 270 of their articles, but none of them were actually indexed. The body of the content received by Google was 0 characters. The author assumed their content was not good enough, but what Google received inside the div with id \"app\" was zero characters. Three lines of the reports stood out: Status Rows Crawled – currently not indexed 270, Soft 404 157, and Duplicate, Google chose a different canonical 95. The first instinct was keywords, depth, and backlinks, but these were not the correct direction. After fetching their own page as Googlebot, the author found that the first HTML sent by the server was a shell, and the body appeared only after JavaScript ran. This led them to realize that Google was missing essential information for indexing. The author implemented several fixes to improve Google's indexing. First, they placed the body in the first HTML sent by the server. They also injected JSON-LD blocks and hreflang for better SEO. Second, they addressed the 157 soft 404s by ensuring the site responded with a 200 status code only when the requested page existed. They added an edge function to return a 200 status code for non-existent pages and a 410 status code for legacy URLs. Lastly, they implemented fail-open error handling to prevent false positives in Google's indexing.",
  "summary": "Read on: the acceptance check that proved 1 = 1 · 繁體中文版 I assumed my content wasn't good enough. Google had never read my content. What it received inside <div id=\"app\"> was zero characters. The numbers that started it On 13 August 2026 I opened Google Search Console and exported two reports, 427 rows. Three lines stood out: Status Rows Crawled – currently not indexed 270 Soft 404 157 Duplicate,…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}