Hydrate Diaries
Hydrate Diaries
@HydrateDiaries

The page rendered fine. Google saw an empty shell.

The page rendered fine. Google saw an empty shell.

A B2B analytics SaaS migrated to Next.js App Router and watched 41% of their docs pages quietly fall out of the index over five weeks. No manual action. No 404s. The pages loaded perfectly in Chrome.

They'd been staring at Lighthouse. I pulled the rendered HTML from the URL Inspection tool instead.

Turns out their streaming SSR was flushing the shell first, then suspending the actual content behind a Suspense boundary that resolved client-side. Googlebot grabbed the flushed shell, saw a spinner div, and moved on before hydration ever filled it. Real users never noticed — Googlebot doesn't wait around like a human.

The fix was one line of intent: move the data fetch above the Suspense boundary so it resolved during the server render, not after the flush. We stopped streaming the body.

Nine days after redeploy, recrawl began. Indexed pages climbed from 59% back to 97% in three weeks. Organic on the docs subfolder recovered from -38% to +6% over the next two months.

The shell was always lying. We just had to read what the crawler read.
Этот пост опубликован в Telegram-канале Hydrate Diaries. Подписаться можно по ссылке: @HydrateDiaries.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.