technical-seoaudit
⚙️

JavaScript SEO в 2026: SPA, гидратация и почему страница не индексируется

Почему JavaScript-сайты плохо индексируются, как Google и Яндекс рендерят JS, разница SSR/SSG/CSR, чеклист для исправления.

·13 мин чтения·Site Metrics Tool

Современные сайты на React, Vue, Angular и других SPA-фреймворках выглядят красиво, но часто имеют серьёзные проблемы с SEO. Поисковик загружает HTML, видит почти пустой `<body>`, и думает «здесь нет контента». То, что после загрузки JavaScript рисует всю страницу, поисковику может быть невидимо. В этой статье разберём, как Google и Яндекс работают с JavaScript в 2026, в чём принципиальная разница между SSR, SSG и CSR, и какой чеклист использовать, если ваш SPA-сайт не индексируется.

Как Google рендерит JavaScript

Google использует двухэтапную индексацию для JavaScript-страниц. Этап 1 — обход: Googlebot загружает HTML и индексирует то, что в нём есть. Если в HTML только пустой `<div id="root"></div>` и `<script>` — Google индексирует это как пустую страницу. Этап 2 — рендеринг: страница попадает в очередь рендеринга, где headless Chromium запускает JavaScript и видит финальный DOM. На этом этапе Google уже видит контент. Проблема: между этапом 1 и этапом 2 может пройти от нескольких часов до нескольких недель. Всё это время ваша страница в индексе пустая. И если рендеринг падает (JS-ошибка, таймаут, заблокированный ресурс) — этап 2 не происходит вообще.

Как Яндекс рендерит JavaScript

Яндекс отстаёт от Google в JavaScript-рендеринге. До 2023 года Яндекс почти не рендерил JS — индексировался только базовый HTML. С 2024 ситуация улучшилась, но не радикально: Яндекс рендерит JavaScript примерно для 60% страниц в очереди, против ~95% у Google, и с большей задержкой. Практический вывод: если вы работаете на российский рынок и у вас SPA-сайт, проблема индексации в Яндексе будет жёстче, чем в Google. Решение одно — SSR.

SSR vs SSG vs CSR: разница для SEO

CSR (Client-Side Rendering) — классическая SPA: сервер отдаёт пустой HTML, JS его наполняет в браузере. SEO-катастрофа, описанная выше. SSR (Server-Side Rendering) — сервер для каждого запроса рендерит HTML с полным контентом, JavaScript добавляется потом для интерактивности. Поисковик сразу получает полный контент. Это идеал для SEO. Реализуется через Next.js, Nuxt, SvelteKit и другие meta-фреймворки. SSG (Static Site Generation) — HTML генерируется во время сборки, сервер отдаёт готовые статические файлы. Самый быстрый вариант, отлично для SEO, но не подходит для динамического контента (например, для дашборда юзера). Гибрид SSR+SSG (например, Next.js App Router с разными стратегиями для разных страниц) — оптимальный современный подход. Site Metrics Tool сам построен на Next.js 16 c смешанной SSR+SSG стратегией, и это даёт нам отличную индексацию.

Как проверить, видит ли поисковик ваш контент

Тест 1 — отключите JavaScript в браузере (Chrome DevTools → ⚙ → Disable JavaScript), перезагрузите страницу. Если видите только пустой шаблон, заглушку или «Loading...» — поисковик видит то же. Тест 2 — GSC → URL Inspection → Test Live URL → View Rendered HTML. Здесь Google показывает, что он видит после рендеринга. Если контента нет — есть проблема с рендерингом на стороне Google. Тест 3 — `curl -A "Yandexbot" https://your-site.com/page` — что отдаёт сервер боту Яндекса. Если HTML пустой, Яндексу нечего индексировать. Эти три теста за 5 минут показывают, есть ли у вас JavaScript-SEO проблема.

Чеклист исправления

Частые вопросы

Хорошо ли индексируются React-приложения?

Зависит от способа рендеринга. React сам по себе ни хороший, ни плохой для SEO — важно, как вы его используете. React + SSR (через Next.js) индексируется отлично. React + чистый CSR (Create React App без надстроек) — плохо.

Можно ли заставить Google рендерить мой сайт быстрее?

Через GSC → URL Inspection → Request Indexing можно ускорить ИНДЕКСАЦИЮ конкретного URL, но это не сокращает время РЕНДЕРИНГА. Если у вас CSR, изменения всё равно дойдут с задержкой. Стратегически — единственное решение это SSR.

Помогает ли prerender.io и аналоги?

Помогает, но это паллиатив. Prerender генерирует HTML-снапшоты страниц для ботов через свой сервис. Работает, но добавляет внешнюю зависимость, стоимость и точку отказа. Лучше нормальный SSR.

Поделиться

Похожие статьи

🧱
4 сент. 2026 г. · 14 мин чтения

Schema.org разметка: продвинутое руководство 2026

Полное руководство по структурированным данным: все типы для разных страниц, JSON-LD vs Microdata, связи через @id, тестирование и отладка.

🌐
19 авг. 2026 г. · 13 мин чтения

Hreflang для мультиязычных сайтов: полное руководство 2026

Что такое hreflang, как правильно настроить для двух и более языков, типовые ошибки и почему Google и Яндекс относятся к hreflang по-разному.

👯
30 июл. 2026 г. · 13 мин чтения

Дубли страниц: как найти и устранить за 30 минут

Полное руководство по поиску и устранению дублей: типы, инструменты для поиска, способы устранения через canonical, 301 и noindex.

🦈
14 июл. 2026 г. · 13 мин чтения

Каннибализация ключевых слов: как найти и устранить

Что такое каннибализация ключей, почему она убивает рейтинг, как её обнаружить через GSC и Webmaster, и три проверенные стратегии устранения.