Коротко
- Внешний вид страницы ничего не говорит о том, что есть в HTML ответа сервера.
- Проверять нужно конкретные факты, цену, услугу, условия, а не страницу целиком.
- Подмена User-Agent не показывает, что получил настоящий робот, для этого нужны логи и проверка IP.
- Задача разработчику содержит URL, дословный фрагмент, способ проверки и ожидаемый результат.
- Серверный рендеринг убирает техническое препятствие, но рекомендаций не обещает.
Почему внешний вид не доказывает доступность
То, что видит человек в браузере, собирается из трех слоев, и робот может получить только часть из них.
- HTML ответа сервера. Текст, который приходит по запросу страницы до выполнения скриптов.
- DOM после JavaScript. То, что браузер достроил скриптами. Подгруженные цены, отзывы, карточки услуг, вкладки.
- Изображения и графика. Текст на баннере, прайс картинкой, инфографика, видео.
Дизайнер и владелец смотрят на третий слой и видят готовую страницу. Робот, который не выполняет JavaScript, видит только первый. Если цена, состав услуги и адрес появляются во втором слое или нарисованы на картинке, для такого робота их нет.
Google в руководстве по JavaScript SEO описывает обработку страниц в три этапа, обход, рендеринг и индексирование, и прямо пишет, что серверный рендеринг или пререндеринг остается хорошей идеей, в том числе потому, что JavaScript умеют выполнять не все роботы. Поведение Googlebot нельзя переносить на всех остальных. В документации OpenAI о роботах ничего не сказано о выполнении JavaScript, поэтому надежнее исходить из того, что важные факты должны быть в HTML ответа сервера.
С картинками проще. В рекомендациях для AI-функций поиска Google просит, чтобы важный контент был доступен в текстовом виде. Прайс в JPG красиво смотрится, но текста в нем нет. Если вы только выстраиваете работу с ответами нейросетей, общая последовательность есть в руководстве как попасть в рекомендации ChatGPT.
Как проверить важные факты
Начните со списка фактов, без которых покупатель не выберет компанию. Для сервисного бизнеса это названия услуг, цены или порядок расчета, зона выезда, сроки, гарантия, адрес и телефон. Для магазина наличие, доставка, возврат. Для начала хватит пяти-десяти фактов на главных коммерческих страницах.
Три проверки без специальных сервисов
- Исходный код. Откройте просмотр исходного кода страницы и найдите поиском каждый факт. Это HTML ответа сервера, а не то, что достроил браузер.
- Запрос из командной строки. Разработчик или вы сами выполняете
curl -f -L --compressed -D headers.txt -o page.html https://example.com/uslugi/. Проверьте конечный HTTP-ответ и Content-Type в headers.txt, затем кодировку, HTML-сущности и содержание page.html. Отсутствие одного слова при буквальном поиске не является достаточным доказательством. - Браузер без JavaScript. Отключите скрипты в настройках сайта и перезагрузите страницу. Пустые блоки и надписи о загрузке показывают, что держится на скриптах.
Для Google есть еще одна проверка. В Search Console инструмент проверки URL показывает HTML после рендеринга, и Google в том же руководстве советует смотреть именно туда. Если фрагмента нет в отрендеренном HTML, Google его не проиндексирует.

| Факт | Как проверить | Если в ответе сервера его нет |
|---|---|---|
| Цена и состав услуги | Найти текст в HTML ответа и сравнить с экраном | Определить, появляется ли он только после API-запроса |
| Адрес и график | Сверить контакты в HTML, интерфейсе и профилях | Опубликовать важные контакты обычным текстом |
| Гарантия | Найти формулировку в тексте, не только на баннере | Добавить условия рядом с изображением |
| Содержимое вкладки | Открыть исходный HTML без нажатий | Сохранить доступный текст и обычные ссылки на подробности |
Подмена User-Agent на Googlebot или GPTBot является ограниченной диагностикой реакции сервера на строку. Сервер ответит вашему компьютеру, а не роботу, и такой тест не покажет, что получил настоящий бот, если сайт отдает разное содержимое по IP или защите от ботов. Сетевой доступ, robots.txt и назначения роботов OpenAI разобраны отдельно в статье о GPTBot, OAI-SearchBot и ботах для поиска в ChatGPT.
Запрос с подставленной строкой User-Agent помогает выявить реакцию сервера на строку, но не воспроизводит IP и всю обработку настоящего робота. Для вывода о доступе сопоставляют HTTP-ответ, журналы и официальную проверку происхождения запроса.
Как влияют интерактивные блоки
Интерактивные элементы делают страницу удобнее, но часто прячут содержимое от тех, кто страницу не нажимает.
Контент после клика
Вкладки и аккордеоны бывают двух видов. В первом весь текст уже есть в HTML и просто скрыт стилями, такой вариант обычно безопасен. Во втором текст запрашивается с сервера в момент клика, и без клика его нет нигде. Проверка та же, поиск фразы из закрытой вкладки в исходном коде. Тот же вопрос к кнопке показать еще, бесконечной ленте отзывов и калькулятору, который выдает цену только после ввода параметров.
Ошибки API
Если цены или карточки услуг подгружаются отдельным запросом, страница зависит от того, ответит ли API вовремя. Пользователь при сбое обновит страницу, робот запишет пустой блок. Такие ошибки видны в консоли браузера и в логах, а со стороны выглядят как случайное исчезновение цены.
Обязательная авторизация
Все, что открывается только после входа, для поиска недоступно, и это нормально для личного кабинета. Плохо, когда за вход по ошибке уходят общедоступные условия, например тарифы или описание услуг. Для страниц за логином Google в руководстве по JavaScript советует отдавать код ответа 401, а не пустую страницу с кодом 200.
Навигация на скриптах
Отдельная беда одностраничных сайтов. Если разделы услуг открываются через адрес с решеткой или по клику на элемент без обычной ссылки, у этих разделов нет собственных URL. Google в том же руководстве пишет, что находит ссылки только в элементах a с атрибутом href, и советует не использовать фрагменты после решетки для загрузки разного содержимого. Покупатель в таком случае тоже не может поделиться ссылкой на нужную услугу.
Что передать разработчику
Задача "сайт не виден нейросетям" ничего не говорит разработчику. Задачу с конкретным URL и отсутствующим фрагментом можно сразу брать в работу. Для каждой проблемной страницы передайте одно и то же.
- URL. Полный адрес страницы и, если важно, версия для телефона.
- Отсутствующий фрагмент. Дословный текст, который виден в браузере и которого нет в HTML ответа сервера.
- Как проверяли. Команда или способ проверки, дата и результат, например код ответа 200 и пустой контейнер с ценой.
- Источник данных. Откуда фрагмент берется в браузере, если это видно. Запрос к API, сторонний виджет, картинка.
- Ожидаемый результат. Фрагмент присутствует в HTML ответа сервера, страница отдает код 200, внешний вид не меняется.
Способ исправления выбирает разработчик. Это может быть серверный рендеринг, пререндеринг, вывод данных прямо в шаблон или замена картинки текстом. Ваша задача описать результат, который можно проверить, а не технологию.
Как принять исправление
Исправление принимают теми же тестами, которыми нашли проблему. Повторите проверку исходного кода, запрос curl и просмотр без JavaScript для каждого URL из таблицы и запишите дату. Затем проверьте URL в Search Console и посмотрите отрендеренный HTML.
Следующий шаг проверка реального обхода. В логах сервера найдите запросы роботов к исправленным страницам после выкладки и убедитесь, что они получили код 200. User-Agent легко подделать, поэтому принадлежность запроса проверяют по IP. OpenAI публикует списки адресов для OAI-SearchBot, GPTBot и ChatGPT-User, по ним разработчик сверяет записи в логах.
Через несколько недель полезно повторить вопросы покупателей в ChatGPT, Gemini или Google AI Mode с записью даты, страны, языка и режима. Но доступный HTML только убирает техническое препятствие. Серверный рендеринг не обещает, что компанию начнут рекомендовать, это зависит от содержания, внешних источников и конкурентов.
Для трех проверок из этой статьи подрядчик не нужен. Если пропавших фрагментов много, сайт построен на сложном фреймворке или неясно, как роботы получают страницы в действительности, понадобится помощь специалиста по продвижению бизнеса в ответах ИИ.
Частые вопросы
Рассчитывать на это не стоит. Если в ролике звучат условия или цены, продублируйте их текстом на странице или дайте расшифровку.
Не обязательно. Часто достаточно выводить в HTML ответа сервера только важные факты, а интерактив оставить на скриптах.
Если данные приходят из медленного API, при обходе блок может оказаться пустым. Это еще одна причина держать важные факты в HTML ответа сервера.
Да, проверки одинаковы для любой платформы. Разница только в том, сможете ли вы сами поменять шаблон или придется писать в поддержку конструктора.

