We made the server slower on purpose. Rankings went up.
A fintech blog was proud of its 90ms TTFB — a pure client-side React app on a CDN. Fast shell, then a long blank while the bundle fetched, parsed, and rendered articles. Real content arrived at 4.2 seconds.
The symptom: solid backlinks, good content, stuck at average position 19 for competitive terms. Largest Contentful Paint in field data was 5.1s — and LCP for these pages was the article text itself, which only existed after JS ran.
Turns out the fast TTFB was a vanity metric. Googlebot got a near-empty shell at 90ms and had to schedule the expensive render pass separately. And for users, the 'fast' page felt blank for four seconds — the metric Google actually weighs.
We moved to SSR. TTFB rose to 340ms. But the article HTML now arrived complete in the first response. LCP dropped to 1.6s. No render-queue dependency for content.
Average position improved from 19 to 9 over seven weeks. Core Web Vitals 'good' URLs went from 12% to 96%. Organic +88%.
A slower server that ships finished content beats a fast one that ships a promise.
Hydrate Diaries
@HydrateDiaries
We made the server slower on purpose. Rankings went up.
Этот пост опубликован в Telegram-канале Hydrate Diaries. Подписаться можно по ссылке: @HydrateDiaries.