ROGOV PRO · AI

Как оптимизировать сайт под AI-поиск: GEO и SEO с ассистентом

GEO надстраивается над SEO: как открыть сайт для AI-ботов, собрать Schema.org, сделать текст цитируемым и поручить механику ассистенту.
24.08.2026AI-поискGEO · SEO

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


Проблема: в выдаче сайт есть, в ответе его нет

У нас в Portal Tech 2026 несколько направлений, и под робототехнику мы запустили отдельный сайт — аренда и продажа роботов плюс экспертные материалы по нише. Воронка выглядела привычно: человек ищет «аренда робота на мероприятие», видит выдачу, выбирает из первой десятки, пишет двум-трем компаниям.

Весной я стал замечать, что часть входящих идет мимо этой схемы. Клиенты приходили с формулировкой «спросил у нейросети, какого робота брать» и приносили готовый список из двух-трех вариантов. Причем список был осмысленный: с моделями, ценовыми вилками и аргументами.

Я проверил это руками. Взял десяток своих целевых запросов и задал их в ChatGPT, Perplexity и поиске с Алисой. Картина оказалась такой: по части запросов сайт был в органике и отсутствовал в ответе; по части в ответе фигурировали площадки, которых в топе нет вовсе.

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

Почему это стало важным именно сейчас

Дело в том, где стоит ассистент в цепочке решения. Он занял место первого фильтра: человек формулирует задачу своими словами, получает шорт-лист и дальше идет уже по нему. Кто попал в шорт-лист, тот получит заявку. Кто в него не попал, тот вообще не участвует в выборе, даже стоя на первой строке выдачи.

Три ориентира, которые стоит держать в голове:

Отдельно про механику Нейро, потому что она снимает половину вопросов. Система отбирает кандидатов из верхней части органической выдачи, вытаскивает из них фрагменты и синтезирует ответ. То есть без обычного SEO в источники Алисы попасть невозможно. GEO надстраивается сверху и заменой поисковой оптимизации не является.

И честная оговорка, без которой разговор про GEO превращается в продажу воздуха. Трафика из AI-ответов пока мало. Ценность в другом: это трафик на этапе выбора, и вдобавок вы влияете на то, что модель говорит о вашем бренде, когда ее спрашивают напрямую. Для ниш с длинным циклом выбора — оборудование, B2B-услуги, франшизы, образование — этого достаточно, чтобы заняться темой сейчас.

Как я решил к этому подойти

Первое, от чего я отказался, — нанять подрядчика под «GEO-продвижение». На рынке это уже продают отдельной услугой с непроверяемым результатом, хотя отдельной механики у GEO нет. Есть обычная техническая база, качество текста и понятное авторство.

Поэтому я разложил задачу на три вопроса, на которые можно ответить фактами:

  1. Может ли машина физически скачать мою страницу?
  2. Понимает ли она без догадок, что это за страница, кто автор и когда текст менялся?
  3. Есть ли в тексте что процитировать?

Четвертый вопрос появился позже и оказался самым тяжелым: как удерживать это в ритме, когда страниц становится десятки.

Отсюда родилось решение по формату работы: механику отдать ассистенту, решения оставить себе. У меня Claude подключен по MCP к рабочим системам, а повторяемые процессы оформлены отдельными скиллами — то есть записанными правилами, которые агент читает перед работой. Для контентной части у меня работает связка из двух: первый разбирает топ-20 выдачи по теме и собирает бриф, второй по этому брифу пишет статью с фактчеком. Технический слой я веду через Claude Code с доступом к файлам сайта.

Здесь же вылез главный практический вывод, который стоит сказать заранее. Агенту нужны файлы. На конструкторе файлов у вас нет: robots.txt генерирует платформа, служебные файлы в корень положить нельзя, разметка добавляется только через кастомный код. Наш робототехнический сайт собран на Tilda, и это сразу ограничило половину шагов. Обучающий проект я держу на Astro, там доступ полный и работа с агентом идет свободно. Если планируете контент-хаб с накоплением органики, выбирайте платформу с доступом к файлам сразу.

Решение: семь шагов в том порядке, в котором их имеет смысл делать

Шаг 1. Доступ. Убедиться, что ботов реально пускают

Ботов сейчас несколько семейств, и задачи у них разные: одни собирают данные для обучения моделей, другие ходят за материалом для ответа прямо сейчас, третьи идут по прямой ссылке от пользователя. Закрыв не то семейство, вы выпадаете из ответов и остаетесь в обучении. Или наоборот.

Базовая конфигурация, от которой можно отталкиваться:

# поисковые и ответные агенты — от них зависит цитирование
User-agent: OAI-SearchBot
Allow: /
User-agent: ChatGPT-User
Allow: /
User-agent: Claude-SearchBot
Allow: /
User-agent: PerplexityBot
Allow: /
User-agent: Perplexity-User
Allow: /

# обучающие краулеры — решение принимаете вы
User-agent: GPTBot
Allow: /
User-agent: ClaudeBot
Allow: /
User-agent: Google-Extended
Allow: /

Sitemap: https://example.ru/sitemap.xml

Развилка по обучающим ботам простая. Открываете — ваш материал участвует в обучении моделей, отдачу посчитать невозможно. Закрываете — теряете часть будущих упоминаний. Медиа и авторские проекты чаще закрывают обучение и оставляют ответные агенты. Бизнесу, которому нужна видимость, обычно выгоднее открыть все.

Теперь главное, ради чего этот шаг стоит первым. Файл robots.txt — это просьба. Пускает или не пускает ваш сервер, и он может резать ботов раньше, чем дело дойдет до robots.txt: на уровне хостинга, файрвола, CDN или антибот-защиты. В браузере при этом все открывается, и проблему не видно.

Проверяется одной командой от имени каждого бота из вашего списка:

curl -A "GPTBot" -sI https://example.ru/ | head -1
curl -A "ClaudeBot" -sI https://example.ru/ | head -1
curl -A "PerplexityBot" -sI https://example.ru/ | head -1

Ответ должен быть HTTP/2 200. Если приходит 403 или 429, дальше можно ничего не делать: цитировать нечего, если страницу невозможно скачать. Решается обращением в поддержку хостинга или настройками антибот-правил.

На проверку уходит минута, а она подтверждает или отменяет всю остальную работу. Начинайте с нее.

Шаг 2. Понятность. Разметка одним графом вместо россыпи блоков

Schema.org — это способ сказать машине прямым текстом то, о чем иначе ей придется догадываться по верстке: тип страницы, автор, даты, хлебные крошки, разобранные вопросы.

Типичная ошибка — накидать несколько независимых кусков JSON-LD, где статья ничего не знает про автора, а автор никак не связан с организацией. Машина получает набор разрозненных утверждений. Правильнее собирать один граф и связывать узлы через @id: тогда «эту статью написал вот этот человек, который работает вот в этой компании» становится явным фактом.

{
  "@context": "https://schema.org",
  "@graph": [
    { "@type": "Article",
      "headline": "Заголовок",
      "datePublished": "2026-08-24",
      "dateModified": "2026-08-24",
      "author": { "@id": "https://example.ru/#author" },
      "publisher": { "@id": "https://example.ru/#org" },
      "mainEntityOfPage": "https://example.ru/article/" },

    { "@type": "Person",
      "@id": "https://example.ru/#author",
      "name": "Имя Фамилия",
      "jobTitle": "Кто вы и почему вам стоит верить",
      "sameAs": ["https://t.me/channel", "https://youtube.com/@channel"],
      "knowsAbout": ["темы, в которых у вас есть опыт"] },

    { "@type": "Organization", "@id": "https://example.ru/#org", "name": "Компания" },
    { "@type": "BreadcrumbList", "itemListElement": [] },
    { "@type": "FAQPage", "mainEntity": [] }
  ]
}

Что размечать в первую очередь: Article на каждом материале с датами и автором, Person с полем sameAs на реальные профили, BreadcrumbList для структуры раздела, FAQPage там, где вопросы и ответы действительно есть на странице. Размечать выдуманный FAQ ради разметки бессмысленно.

Поле sameAs я бы выделил отдельно. Оно связывает безымянного «автора статьи» с существующим человеком, у которого есть канал, выступления и история публикаций. Для личного бренда это самый дешевый способ показать машине, что за текстом стоит конкретный носитель опыта.

Проверяйте каждую правку в Rich Results Test и валидаторе Schema.org. Невалидный JSON-LD игнорируется целиком, и по виду страницы это незаметно.

Шаг 3. Даты. Свежесть, которую нельзя рисовать

Для запросов вида «как выбрать X в 2026» свежесть — сильный сигнал. Отсюда соблазн проставить сегодняшнюю дату всем страницам разом. Делать так вредно: поисковые системы сравнивают заявленную дату с тем, что реально изменилось в документе между обходами, и расхождение играет против вас. Плюс это обман читателя, который открыл страницу с пометкой «обновлено вчера».

Рабочее правило:

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

Шаг 4. Цитируемость. Конкретика вместо оценок

Это самая недооцененная часть и одновременно та, где разрыв между сайтами максимальный. Модель пересказывает факты. Рассуждения она пересказать не может.

Пример из моей ниши. Фраза «мы предлагаем роботов под разные задачи и бюджеты» не дает ассистенту ничего: взять оттуда нечего. Фраза «робопес на мероприятие — от N рублей в сутки, гуманоид ростом 130 см — от N, в стоимость входит оператор и доставка по городу» дает конкретику, которую можно процитировать со ссылкой на источник.

Что повышает шансы попасть в ответ:

И про генерацию текста честно. Ассистент охотно напишет статью под запрос, но по умолчанию выдает ровную безличную прозу, из которой цитировать нечего. Лечится это двумя вещами: набором правил по стилю, который агент читает перед работой, и вашими собственными данными в тексте. Цифры из своего бизнеса, кейсы, грабли — то, чего у модели нет и взять неоткуда.

Шаг 5. Скорость попадания в индекс

Можно все разметить и написать, а потом две недели ждать, пока робот дойдет. Ускоряется это протоколом IndexNow: вы кладете в корень сайта файл-ключ и отправляете POST-запрос со списком URL. Уведомление расходится по участникам протокола, включая Яндекс и Bing. Google IndexNow не поддерживает, там работает sitemap.xml и обычный обход.

Порядок такой: сгенерировать ключ из 32–128 шестнадцатеричных символов, положить файл <ключ>.txt в корень сайта, дождаться деплоя и только потом отправлять URL. Если пингануть раньше, чем ключ окажется на проде, придет отказ, и легко решить, что протокол не работает.

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

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

Шаг 6. Внешний слой. Где модель берет мнение о вас

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

Что здесь стоит сделать:

Шаг 7. Что делает агент и что остается человеку

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

Четыре правила, которые у меня работают:

Правила лежат в файле проекта. В корне репозитория файл с договоренностями: формат заголовков, канонические URL, какие типы схемы используем, откуда берутся даты, что считается изменением контента. Один раз описанное правило перестает быть предметом переговоров в каждой сессии.

Сначала план, потом правки. Массовые изменения по десяти файлам — место, где ошибка размножается мгновенно. Сначала список файлов и план действий, потом выполнение.

Проверка командой вместо отчета. «Проставил даты на всех страницах» — это утверждение. «Прогнал девять JSON-LD через парсер, все валидны, вот вывод» — это проверка. Разметка ломается молча, внешне страница выглядит нормально.

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

Как я мерю результат

Генеративные системы статистику не отдают, поэтому измерение здесь честно-кривое. Смотреть можно вот на что:

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

Что из этого не работает

Работает скучное: доступность для роботов, честная структура, конкретика в тексте, понятное авторство и регулярность публикаций.

Итог

Что я вынес из этой работы:

  1. GEO надстраивается над SEO. Без обычной поисковой базы модель вашу страницу не найдет, и оптимизировать будет нечего.
  2. Начинайте с curl от имени каждого AI-бота. robots.txt разрешает, а хостинг может отдавать 403, и в браузере это незаметно.
  3. Разметку собирайте одним графом со связями через @id. Россыпь независимых блоков машина читает как набор случайных утверждений.
  4. Дату обновления двигайте только при реальном изменении текста. Иначе сигнал начинает работать против вас.
  5. Цитируют конкретику: цифры, условия, модели, сроки. Оценочные формулировки процитировать невозможно.
  6. Платформа определяет потолок. На конструкторе половина шагов недоступна, и для контент-хаба это стоит решить до запуска.
  7. Агенту отдавайте механику и проверки, себе оставляйте выбор запросов, факты и ответственность за результат.

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

Разбираю такие процессы и свои эксперименты с агентами подробнее в канале.

TG @rogovpro · YT @imrogov · denrogov.com

TG @rogovpro · YT @imrogov · denrogov.com

Разбираю такие процессы и эксперименты с агентами подробнее в канале.