• Техническое SEO · Серверный рендеринг
  • Замер 31.07.2026

Индексация сайта на JavaScript: чтобы поисковик видел то же, что человек

Индексация сайта на JavaScript ломается в одном месте: бот забирает первый ответ сервера, а контента в нем еще нет – его соберет браузер уже на устройстве. Далее адрес становится в очередь на выполнение сценариев, и пока он там стоит, страницы в выдаче нет. Мы снимаем два документа — приходящий поисковому агенту и приходящий браузеру — и сводим их к одинаковому содержанию. Способ выбираем после замера, а не к нему: пререндер, предварительная генерация и серверный рендеринг разнятся по стоимости сопровождения в разы.

Посмотреть, как это работает
Стоимость
после бесплатного аудита
Гарантия
30 дней после подписания акта
С чего начинаем
сравнение ответа для поискового агента с ответом для браузера на каждом типе страницы
после бесплатного аудита
Стоимость
30
Гарантия

дней после подписания акта

сравнение ответа для поискового агента с ответом для браузера на каждом типе страницы
С чего начинаем
оболочка 3,0 КБ браузера против собранного документа 126 КБ бота, сайт клиники, измерение 31.07.2026
Измеренный разрыв
10–30
Срок работ

рабочих дней в зависимости от выбранного способа отдачи

бесплатная проверка того, что получает бот, 2–3 рабочих дня
Перед сметой
боту и человеку идет одинаковый по содержанию контент — иначе это уже риск санкций
Жесткое условие
упоминаний в ответах AI-ассистентов: правил отбора не публикует ни один вендор
Чего не обещаем
Кому подходит

Ситуации, в которых эта услуга даёт результат

Сценарий 1 из 5

Сайт открывается нормально, а в поиске почти нет

Классическое расписание для интерфейса-приложения. Человек заходит и видит каталог, бот заходит и видит пустой контейнер с подключенным скриптом. В Search Console такие адреса обычно лежат в статусе «просканированный, пока не проиндексированный» — и это не наказание, а просто отсутствие текста, который можно было бы проиндексировать.

Разберём вашу ситуацию на бесплатном аудите
Кейсы

Задачи и результат в цифрах — все показатели сняты нашим замером

клиника пластической хирургии и эстетической медицины

Задача
Интерфейс сделан как приложение на JavaScript. Требовалось, чтобы поисковик и агенты ассистентов получали страницу с текстом, а не пустую оболочку.
Решение
Поисковым агентам отдается полностью собранный документ; медицинская разметка, данные врача и хлебные крошки лежат в первоначальном ответе; политика для AI-кравлеров вынесена в отдельные файлы
Результат
Браузер получает оболочку 3,0 КБ без заголовка и описания за 198 мс, поисковый бот – собранный документ 126 КБ (24 КБ в сжатом виде) за 145 мс до первого байта и 178 мс до полного документа; страница «о нас» - 86 КБ. Карта сайта на 89 адресов, 10 типов структурированных данных, в том числе MedicalClinic, Physician и BreadcrumbList. llms.txt на 22 810 байт, robots.txt закрывает тренировочные агенты и пускает ведущие живой трафик. Обнаруженный дефект: встроенный снипет диспетчера тегов самоблокируется — условие выхода сравнивает идентификатор сам с собой, поэтому контейнер не грузится вообще, и аналитики на сайте фактически нет. Несовпадение: в портфолио заявлено Next.js, по факту React и Vite. Измерение 31.07.2026.

украинский производитель негорючих стеновых панелей

Задача
Сделайте так, чтобы характеристики продукции находились в поиске без звонка менеджеру.
Решение
Сайт отдает готовый документ с сервера; данные об организации, адресе, количественных характеристиках и поисковом сценарии присутствуют в первоначальном ответе.
Результат
164 адреса в карте сайта, 164 уникальных — ни одного дубля. Первый ответ 244 мс на главной и 208 мс в каталоге продукции, полный документ за 429 мс при весе 528 КБ. 8 типов структурированных данных: Organization, PostalAddress, Country, QuantitativeValue, SearchAction, WebSite, ImageObject, EntryPoint. robots.txt оставляет открытым каталог и закрывает служебные разделы /api/, /admin/, /_next/. Заявленный в портфолио стек совпадает с фактическим – в нашей выборке это скорее исключение. Измерение 01.08.2026.
Что входит

Полный перечень работ и того, что вы получаете на выходе

  • Снимаем два ответа на каждом типе страницы – для поискового агента и для браузера – и показываем разницу в байтах и ​​в содержании: дальше разговор идет по документу, а не по ощущениям
  • Выбираем способ отдачи готового документа под ваше приложение и называем, что каждый стоит не только на внедрении, но и в сопровождении.
  • Переносим название страницы, описание и канонический адрес в первоначальный ответ – снипет в выдаче состоит из вашего текста, а не из случайного отрывка
  • Отдаем структурированные данные просто в разметке: вставленные скриптом доходят до поисковика не всегда
  • Превращаем навигацию в обычные ссылки – бот получает путь вглубь каталога без выполнения ни одного сценария
  • Сверяем содержание двух ответов строчку в строчку: именно этот пункт держит работу в безопасной зоне
  • Меряем время до готового документа для бота после внедрения и фиксируем цифру в письменном виде
  • Разделяем в robots.txt агентов, ведущих живой трафик, и собирающих данные на тренировку — решение ваше, реализация наша
  • Составляем llms.txt как сжатую карту контента для ассистентов: в измеренном нами сайте клиники этот файл весит 22 810 байт.
  • Ставим ключевые адреса на проверку в Search Console и 30 дней смотрим отчет индексации
Когда эта услуга не подходит

Что не входит в работу — чтобы не было сюрпризов на сдаче

  • Переписка фронтенда на другой фреймворк
  • Разработка нового интерфейса
  • Обещания по поводу упоминаний в ответах AI-ассистентов
  • Работа с контентом и текстами
Этапы работы

Прозрачные этапы с согласованием на каждом шагу

Общий срок:10–30 дней

  1. Замер текущего состояния

    2–3 рабочих дня

    Спрашиваем ключевые адреса разными агентами и кладем ответы рядом: размер, наличие заголовка и описания, структурированные данные, ссылки. На выходе документ с двумя колонками, где видно, чего бота не достается.

  2. Выбор способа и пределы работы

    1–2 рабочих дня

    Фиксируем перечень страниц, действительно должны быть в поиске, и способ отдачи под них. Здесь же принимается решение по AI-агентам: кого пускать, кого ограничить. Это позиция бизнеса, мы лишь показываем последствия каждого варианта.

  3. Внедрение отдачи готового документа

    5–15 рабочих дней

    Пререндер по агенту или серверный рендеринг маршрутов. Начинаем с одного типа страницы на тестовом контуре и двигаемся дальше, только если на нем ответ для бота совпадает по содержанию с браузерной.

  4. Метатеги, разметка и ссылки

    2–5 рабочих дней

    Название, описание, канонический адрес и структурированные данные переезжают в исходный ответ, навигация получает обычные ссылки. Ориентир по нашему измерению: в сайте производителя панелей в первоначальном ответе лежит 8 типов структурированных данных.

  5. Сверка содержания и замеры

    1–3 рабочих дня

    Сравним строку в строку, которую видит бот и что человек: расхождение в содержании – это уже не оптимизация, а риск. Меряем время до первого байта и полного документа для бота, цифры остаются у вас письменно.

  6. Наблюдение за индексацией

    30 календарных дней

    Ключевые адреса идут на проверку в Search Console, далее смотрим отчет: сколько страниц изменило статус и как быстро. Луна – это не запас времени, это период, за который отчет вообще успевает среагировать.

Бесплатная проверка того, что получает бот вместо вашей страницы

Проверка проста и наглядна: мы спрашиваем ваши страницы так, как это делает поисковик, и сравниваем ответ с тем, что видит браузер. Разница между этими двумя документами и есть размер проблемы.

Что мы измеряем

  • Размер ответа для бота против браузераСколько байт получает каждый. Мы мерили сайт, где браузеру приходила оболочка на 3,0 КБ, а поисковому боту полностью собран документ на 126 КБ.
  • Наличие контента в первичном ответеЕсть ли в ней заголовок, описание, тексты и ссылки – все ли это собирается уже на устройстве.
  • Метатеги и разметкаПопадают ли в первоначальный ответ название страницы, описание и структурированные данные. Разметка, вставленная скриптом, приходит не всегда.
  • Внутренние ссылкиСуществуют ли они в разметке как обычные ссылки. Навигация, построенная на обработчиках событий, для бота не существует.
  • Поведение для AI-агентовАссистенты в большинстве своем не выполняют сценарии на странице. Если контент собирается на устройстве, сайт пуст.
  • Время готового документаЗа сколько бот получает полный ответ. В измеренном случае это 145 мс до первого байта и 178 мс до полного документа – то есть пререндер может быть быстрым.

Что вы получаете

  • Сравнение двух ответов – для бота и для браузера – с размерами и содержимым.
  • Список того, что не доходит до поисковика сейчас.
  • Варианты решения объясняют, что каждый стоит в поддержке, а не только на внедрении.
  • Разговор на 30–40 минут по документу.

Срок: 2–3 рабочих дня

Почему это бесплатно

Ибо проверка занимает часы, а разница в стоимости решений кратна. Продавать серверный рендеринг там, где достаточно пререндера, мы не хотим.

Что дальше

Далее – оценка выбранного варианта по этапам. Один из вариантов всегда «ничего не делать»: если бот уже получает полный документ, работы нет.

Короткая форма: контакт и адрес сайта

  • Договор, акт и гарантия 30 дней

    На каждый проект письменный договор: объём, сроки, сумма, порядок приёмки. После сдачи — акт и счёт, затем 30 календарных дней гарантии.

  • ФОП и безналичный расчёт

    Исполнитель — зарегистрированный ФОП. Оплата на счёт с закрывающими документами.

  • Права и доступы — ваши

    Код, дизайн и материалы переходят к вам после полной оплаты. Домен, хостинг, репозиторий оформляем на вас.

  • Портал клиента вместо переписки

    Во время работы вы получаете доступ к порталу: договоры, счета, акты и статус проекта в одном месте.

  • Заказчики из Европы

    Среди работ — проекты для Норвегии, Болгарии, Молдовы и Испании.

  • Цифры, которые можно проверить

    Каждый кейс в портфолио — со ссылкой на живой сайт и техническим замером.

  • Сначала аудит, потом сумма

    Прайса на сайте нет намеренно: объём одной и той же работы у двух клиентов отличается кратно.

  • Говорим «нет», когда не уверены

    Если задача не наша или срок нереальный — скажем сразу.

Не нашли свой случай?

Опишите, как это устроено у вас, — ответим, подходит ли «JS-рендеринг для поиска» и что это значит в вашей ситуации. Без брифа и без звонка: один вопрос, один ответ.

Что влияет на стоимость

Почему две одинаковые на вид задачи считаются по-разному

  • Какой способ отдачи подходит именно вамПререндер ложится поверх имеющегося приложения и трогает только слой отдачи. Переход на серверный рендеринг переписывает маршруты и работу с данными. Разница между этими двумя вариантами измеряется не процентами.
  • Сколько типов страниц должно быть в поискеГлавная, категория, карточка, статья – каждый тип разбирается отдельно: свои данные, свои метатеги, своя разметка. 20 маршрутов в приложении не означают 20 типов; обычно их четыре-шесть, и именно это число двигает смету.
  • Откуда берется контент страницыОдин запрос к вашему же API – готовый документ собирается просто. Три источника, часть из которых отвечает только после действия пользователя, каждый приходится разбирать отдельно, и именно здесь срок начинает расти.
  • Кто ведет фронтендЕсть разработчик, знающий приложение, мы отдаем правки и проверяем результат. Нет — входим в чужой код, и первая неделя идет на то, чтобы понять, как она собирается.
  • Нужен ли надзор за слоем отдачиПререндер ломается тихо: отдает старую страницу без ошибки, и замечают это через месяцы. Мониторинг этого слоя мы выносим отдельной строчкой, а не прячем в «сопровождение».
Технологии и интеграции

На чём строим и с чем это соединяется

Стек

  • Серверный рендеринг – самый чистый вариант: документ собирается на сервере. Цена вопроса — нагрузки, которой раньше не было, и потребность в кэше
  • Предыдущая генерация на сборке – самая быстрая отдача, но каждое изменение текста требует пересборки. Изменяемому ежечасно каталогу не подходит
  • Пререндер за агентом – становится поверх готового приложения за дни. Это отдельный слой, и ломается он тихо: отдает старую страницу безо всякой ошибки
  • Next.js – держит все три режима на уровне маршрута. Но переезд на него с Vite – это переезд приложения, а не настройки
  • Search Console, проверка URL – единственное место, где видно, что Google действительно получил. Указывает один адрес за раз и с отложением
  • llms.txt и robots.txt – управляют доступом агентов. Сила у них только над уважающими их: механизма принуждения здесь нет

Интеграции

  • Google Search Console
  • Bing Webmaster Tools
  • GA4
  • Cloudflare
Готовый документ против надежды на очередь рендеринга

Чем этот вариант отличается от альтернативы

Когда контент становится видимым ботав первом же ответе сервера
Другие читатели вашего контентаBing, ассистенты и агенты получают то же, что Google
Что видно из браузераразница зафиксирована в документе с двумя колонками
Цена решениявнедрение плюс слой, который придется сопровождать
Что нужно от вас

Без этого не начнём — лучше подготовить заранее

  1. Адрес сайта и две-три страницы, которые для вас самые важные: с них начинается замер.
  2. Доступ к коду фронтенда или к сопровождающему его разработчику.
  3. Понимание, какие экраны должны быть в поиске: не все маршруты приложения туда нужны и лишние лучше отсечь на старте.
  4. Доступ к Search Console – без него мы видим свое намерение, но не видим, что с этим сделал Google.
  5. Решения по AI-кравлерам: пускать, ограничивать или закрывать. Это позиция бизнеса, а не техники, и принять ее должен человек с вашей стороны.

Если чего-то из этого нет — скажите, подскажем, как собрать или сделаем сами отдельной задачей.

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

Что спрашивают чаще всего — с конкретными ответами

Google же выполняет JavaScript – зачем тогда все это?

Выполняет, но в два прохода. Первый забирает разметку, второй ставит адрес в очередь на выполнение сценариев и срок этой очереди не публикуется. На сайте из десятка страниц разницу вы не заметите; в нескольких тысячах она превращается в месяцы, в течение которых часть каталога просто не существует для выдачи. Вторая часть ответа важнее: Google – не единственный читатель. Bing, агенты ассистентов, парсеры маркетплейсов и сервисы, строящие предварительный просмотр ссылки в мессенджере, в основном сценарии не выполняют вообще.

Пререндер для ботов – это не сокрытие контента?

Нет, пока боту и человеку идет одинаковый по содержанию документ. Нарушением является показ боту одного текста, а посетителю – другого; форма подачи может отличаться, и это нормально. Поэтому в наших этапах есть отдельный пункт сверки: мы сравниваем два документа строчку в строчку и письменно фиксируем, что они совпадают. Если у вас есть желание подсунуть боту дополнительные ключевые слова, которые человек не увидит, — это не к нам, и не потому, что мы осторожны, а потому, что прилетает за это именно вам.

Что выбрать: серверный рендеринг или пререндер для роботов?

Зависит от приложения и от того, сколько вы готовы платить за сопровождение. Серверный рендеринг более чистый: документ собирается на сервере для всех одинаково, отдельного слоя нет. Но он затрагивает маршруты и работу с данными, и сервер начинает нести нагрузку, которой раньше не было. Пререндер ставится поверх готового приложения за дни и стоит меньше — цена в том, что это дополнительный слой, который ломается без уведомления: страница отдается старая, ошибки нет, замечают через месяц. Мы называем обе цифры, внедрение и наблюдение, и решение остается у вас.

Как понять, что проблема именно в рендеринге?

Спросить страницу дважды – как браузер и как поисковый агент – и положить ответы рядом. В измеренном нами сайте клиники браузер получает оболочку на 3,0 КБ, у которой нет ни заголовка, ни описания, а поисковый бот – собранный документ на 126 КБ. Деталь, сбивающая с толку: боту при этом соответствуют быстрее, чем браузеру — 145 мс против 198 мс, потому что готовый документ уже лежит, а оболочку еще нужно собрать. Из браузера все выглядит безупречно, и именно поэтому проблему находят поздно.

В Search Console страницы в статусе «просканированы, пока не проиндексированы» — это оно?

Часто да, но не всегда. Этот статус означает, что бот адрес забрал и решил пока не класть в индекс. Причины две большие группы: в ответе не было контента (это наш случай) или контент был, но выглядит слишком похожим на соседние страницы или слишком пустым по существу. Различается это за минуту: посмотрите в инструменте проверки URL, что видел бот. Если там оболочка без текста – вопрос к рендерингу. Если текст есть, а индексации нет – вопрос уже к контенту, и это другая услуга.

Влияет ли это на видимость в AI-ассистентах?

Влияет на возможность не на результат. Агенты читают то, что отдано в разметке сразу; если там пусто, вас процитировать нечем. Но никаких обещаний по поводу упоминаний мы не даем: правил отбора не публикует ни один вендор, гарантий нет ни у кого, а объем переходов оттуда пока мал по сравнению с обычным поиском. Это работа на опережение с неизвестной отдачей, и мы говорим о ней именно так. Отдельно о блокировке тренировочных агентов: оно не убирает ваш контент из уже обученных моделей.

Придется ли переписывать сайт на другой фреймворк?

В большинстве случаев нет, и мы намеренно начинаем не с этого. Сначала проверяем, умеет ли ваше текущее приложение отдавать готовый документ хотя бы на нужных маршрутах — часто умеет, просто этим никто не занимался. Совет, который мы даем чаще других: не меняйте фреймворк для поиска. Переезд с одного стека на другой – это переезд всего приложения с новыми ошибками, и рядом с ним пререндер на четырех типах страниц выглядит как работа на неделю. Переписка фронтенда в эту услугу вообще не входит.

Сколько это длится и когда будет виден эффект?

Сами работы — 10–30 рабочих дней в зависимости от выбранного способа: более быстрый, серверный рендеринг затрагивает архитектуру, и срок там зависит от того, насколько приложение к ней готово. Эффект в индексе двигается медленнее работы: после смен адреса идут на проверку, и месяц мы просто смотрим отчет. Это не наша медлительность – это скорость, с которой поисковик переобходит сайт, и ускорить ее извне невозможно.

Отправьте адрес сайта и две-три страницы, которые для вас самые важные.

В ответ — два ответа сервера рядом: получающий браузер и получающий поисковый агент с размерами и перечнем того, чего во второй не хватает. Если там уже все на месте, скажем это первым же письмом.

Из измеренных кейсов164 адреса в карте сайта, 164 уникальных

Смотреть кейсы
  • Ответ в течение 2 часов
  • Без обязательств
  • Работаем по договору

Прайса на сайте нет намеренно: объём той же работы у двух клиентов отличается в разы, и цифра «от» в этом случае ничего не объясняет. Сначала бесплатный аудит — считаем ваши страницы, дубли и скорость, — потом называем сумму и срок и фиксируем их в договоре.