robots.txt для programmatic SEO — это не просто текстовый файл в корне сайта, а инструмент управления бюджетом сканирования. Он решает, куда пойдет Googlebot и куда не пойдет.
400 000+ органических переходов за 3 месяца. Со-основатель GoBanana (231K пользователей, 12+ млн ₽ без рекламы) и NeuroScribe (65K пользователей). SEO/GEO-стратегии для AI-поисковиков, 1 700+ единиц контента, 17+ реализованных стратегий.
Об авторе →Claude Code: новый CLI-агент от Anthropic
Anthropic выпустила Claude Code — терминальный AI-агент для разработчиков. Инструмент работает прямо в командной строке и умеет писать, редактировать и запускать код.
Zcode AI: Полный гид по визуальному интерфейсу для Claude Code и AI-агентов
Узнайте, как использовать Zcode для управления Claude Code, Gemini и Codex в едином GUI. Настройка провайдеров, MCP-серверов и визуальный вайбкодинг.
YouTube-канал с монетизацией из любой точки мира: Пошаговый гайд 2026
Инструкция по созданию YouTube-канала: обход блокировок SMS, настройка расширенных функций через виртуальные номера и правила безопасности для монетизации.
Windsurf Code Maps: Как глубоко понимать архитектуру проекта перед написанием кода
Полный гайд по Windsurf Code Maps, модели Sway 1.5 и Sway Grep. Узнайте, как визуализировать архитектуру кода и ускорить разработку в 13 раз.
Vk Fast Cash Strategy
Аудитория ВКонтакте — это те же люди, что и в Instagram, но 'социальный контракт' площадки другой. Если Instagram — это 'дорогой ресторан' с демонстрацией успеха, то VK — это 'душевная шашлычная'. Здесь не работает глянцевый 'успешный успех
robots.txt для programmatic SEO — это не просто текстовый файл в корне сайта, а инструмент управления бюджетом сканирования. Он решает, куда пойдет Googlebot и куда не пойдет.
На портале с тысячей и больше страниц неправильный robots.txt тратит crawl budget на /admin, /api и тестовые URL вместо статей, которые реально приносят трафик. Ниже пошагово: что открывать поисковым ботам, что закрывать, как настроить файл через app/robots.ts в Next.js App Router и что изменилось в декабрьских 2025 года рекомендациях Google по crawl budget.
Коротко. robots.txt для programmatic SEO закрывает от индексации /admin, /api, /studio, параметры фильтров и пагинацию, а открывает статьи, каталог и sitemap. В Next.js это делается через app/robots.ts. Google официально признал: crawl budget важен только для сайтов с 10 000+ страниц. Ниже — рабочий конфиг, таблицы allow/disallow и разбор ошибок на реальном примере портала на 6200 материалов.
robots.txt — это публичный текстовый файл в корне домена, который сообщает поисковым ботам, какие разделы сайта можно сканировать, а какие нет. Для programmatic SEO это способ не дать боту утонуть в тысячах служебных URL.
Google прямо говорит: главная задача robots.txt — управлять трафиком сканирования и не перегружать сервер, а не скрывать страницу из выдачи. Блокировка через Disallow снижает шанс, что URL попадет в индекс, но не гарантирует этого: если на закрытую страницу ведут внешние ссылки, она все равно может показаться в поиске без сниппета.
Для directory-порталов вроде каталогов инструментов, курсов или программатик-статей файл решает конкретную задачу. Тысячи однотипных страниц, генерируемых по шаблону, съедают внимание бота быстрее, чем кажется. Без явных правил Googlebot будет пытаться просканировать все подряд: и карточку инструмента, и страницу входа, и служебный API-роут.
У Максима с VibeCoderz именно так и было в первый месяц — портал собрали за неделю тремя скриптами голосом в Claude Code, материалов на тот момент было 6200, и без нормального robots.txt бот тратил заходы на /studio и /api вместо статей.

Crawl budget — это лимит времени и запросов, который поисковая система готова потратить на сканирование конкретного сайта за период. Google официально управляет им только для сайтов от 10 000 страниц или с быстро обновляемым контентом.
По официальной документации Google, crawl budget складывается из двух вещей: технического лимита (crawl capacity, зависит от скорости ответа сервера) и спроса (crawl demand, зависит от популярности и частоты обновлений контента). Если сайт отвечает быстро и без ошибок, лимит растет. Если сервер тормозит или отдает 5xx, Google снижает скорость сканирования сам, без всякого robots.txt.
Беспокоиться о crawl budget стоит не всем. Небольшому лендингу на 50 страниц он не нужен вообще: Google и так обойдет весь сайт за один заход. А вот для программатик-портала на тысячи URL — карточки инструментов, страницы ниш, автогенерируемые лендинги под 297 комбинаций профессий и задач — это уже вопрос, доходит ли бот вообще до свежего контента или застревает на дубликатах и фильтрах.

Открывать нужно все страницы, которые должны попасть в выдачу: статьи, каталог, карточки товаров. Закрывать — админку, API, черновики, параметры фильтров и внутренний поиск.
Правило простое и жесткое: если страница не приносит трафика и не нужна пользователю из поиска, она в Disallow. Практика с реальных аудитов e-commerce и программатик-сайтов показывает: фасетная навигация и параметры сортировки съедают до 65% времени бота на некоторых сайтах, если их не закрыть явно.
Ниже таблица для типичной структуры портала на Next.js + Sanity, где есть CMS-студия, личный кабинет и публичный каталог.
| Раздел | Директива | Почему |
|---|---|---|
| /blog/, /item/, /ide/, /agents/ | Allow | Приносят трафик, это цель SEO |
| /studio/ | Disallow | Sanity Studio, служебная CMS |
| /api/ | Disallow | Route Handlers, не для индексации |
| /dashboard/, /settings/, /edit/ | Disallow | Личный кабинет, требует авторизации |
| /payment/, /publish/ | Disallow | Шаги оформления сабмита, дубли по ID |
| /search?, ?sort=, ?filter= | Disallow | Параметры генерируют бесконечные дубли |
| /*.css, /*.js | Allow | Без них бот увидит сломанную верстку |
Отдельно: не блокируйте CSS и JS. Googlebot с 2026 года рендерит страницы через Chromium-движок, и если стили или скрипты закрыты, бот видит битую версию сайта — это прямой удар по качеству страницы в глазах алгоритма.

В Next.js 13+ файл создается один раз: app/robots.ts возвращает объект MetadataRoute.Robots, и фреймворк сам отдает его по адресу /robots.txt.
Официальная документация Next.js подтверждает: robots.js или robots.ts в корне app-директории — это специальный route handler, который кэшируется по умолчанию. Никакого отдельного файла в public/ создавать не нужно, если используете App Router.
Рабочий пример для портала уровня VibeCoderz, с учетом реальной структуры проекта на Next.js и Sanity:
// app/robots.ts
import type { MetadataRoute } from 'next'
const BASE_URL = 'https://vibecoderz.ru'
export default function robots(): MetadataRoute.Robots {
return {
rules: [
{
userAgent: '*',
allow: '/',
disallow: [
'/studio/',
'/api/',
'/dashboard/',
'/edit/',
'/settings/',
'/payment/',
'/publish/',
'/auth/',
'/*?*sort=',
'/*?*filter=',
],
},
{
userAgent: 'GPTBot',
disallow: ['/'],
},
{
userAgent: 'CCBot',
disallow: ['/'],
},
],
sitemap: `${BASE_URL}/sitemap.xml`,
}
}Три детали, которые часто упускают.
rules позволяет задать отдельные правила под конкретного бота, и это надежнее, чем один общий блок с *. disallow: '/' для всех, через проверку process.env.NODE_ENV, чтобы черновая версия портала не улетела в индекс раньше времени.Disallow в robots.txt останавливает сканирование, но не гарантирует исключение из индекса. Для гарантированного исключения страницы из выдачи нужен meta robots noindex или заголовок X-Robots-Tag, а не robots.txt.
Здесь кроется частая ошибка. Google прямо предупреждает: если страница заблокирована в robots.txt, бот вообще не увидит тег noindex на ней, потому что не станет ее открывать. В итоге URL может остаться в индексе без сниппета, если на него есть внешние ссылки, а вы были уверены, что он скрыт полностью.
Логика разделения простая. Если страница не должна тратить ресурс сканирования вообще, ей место в Disallow. Это внутренний поиск, параметры, служебные роуты. Если страница должна быть доступна боту, но не должна попасть в выдачу, здесь работает noindex на уровне HTML или HTTP-заголовка. Для PDF, изображений и других не-HTML файлов подходит именно X-Robots-Tag, потому что вставить мета-тег в них физически некуда.

В декабре 2025 года Google официально закрыл миф про перераспределение бюджета: блокировка одних страниц не увеличивает лимит сканирования для других, если сервер и так справляется с нагрузкой.
Это меняет тактику. Раньше многие сеошники блокировали второстепенные разделы в надежде, что бот «освободившееся время» потратит на приоритетный контент. Google Search Central прямо написал: так не работает, budget перераспределяется на другие страницы только если сайт уже упирается в лимит хостинга. Единственные два официальных способа увеличить crawl budget — нарастить мощности сервера или повысить качество контента, чтобы вырос спрос на сканирование.
Второй сдвиг: доля бот-трафика выросла резко. В 2025 году Google просканировал на 96% больше страниц, чем годом раньше, а трафик AI-краулеров вырос на 305% сверху. Для портала со своим контентом это значит одно: robots.txt в 2026 году настраивают не только под Googlebot и Яндекс, но и под отдельный список AI-агентов.
Решение зависит от цели: блокировка тренировочных ботов защищает сервер и контент от бесплатного обучения моделей, а открытие retrieval-ботов дает цитирования в ChatGPT, Perplexity и Claude.
С 2026 года список ботов разделился на две категории, и путать их — ошибка. GPTBot и CCBot собирают данные для обучения моделей. А, например, у Anthropic отдельно работает Claude-Web — это агент живого поиска, который приводит переходы из запросов пользователей в Claude, и блокировать его вместе с тренировочным ClaudeBot невыгодно: так вы теряете цитируемость.
| Бот | Что делает | Рекомендация для контентного портала |
|---|---|---|
| Googlebot | Индексация для Google Поиска | Allow |
| Яндекс.Бот | Индексация для Яндекса | Allow |
| GPTBot | Сбор данных для обучения моделей OpenAI | Disallow |
| CCBot | Общий датасет Common Crawl | Disallow |
| Google-Extended | Обучение Gemini, отдельно от индексации | Disallow (индексация не пострадает) |
| Claude-Web | Живой поиск и цитирования в Claude.ai | Allow |
Кстати, здесь работает простое правило: если бот тренирует модель без отдачи трафика, его закрывают. Если бот приводит реальных читателей через цитаты в ответах ИИ, его оставляют открытым.

Три самые частые ошибки: блокировка CSS и JS, попытка скрыть страницу через Disallow вместо noindex, и отсутствие явного пути к sitemap.
На проектах с фасетной навигацией и десятками тысяч комбинаций фильтров бот тратит, по данным одного отраслевого аудита 2026 года, до 18% бюджета на параметрические URL вроде ?sessionid= и ?sort=, если их не закрыть явно. Это почти пятая часть всего сканирования впустую.

Отдельно стоит проблема бесконечных пространств: календари, внутренний поиск, пагинация без ограничения глубины. Если у портала есть страницы вида /page/45 с парой карточек на них, это прямой кандидат на Disallow или noindex, а не на индексацию по умолчанию. И еще один момент, который упускают почти все: возвращать честный 404 или 410 для реально удаленных страниц эффективнее, чем блокировать их в robots.txt, потому что заблокированный URL Google продолжает держать в очереди на пересканирование, а не забывает.
Лиза: «У меня было похожее с автоматизацией YouTube-конспектов. Раньше я вручную разбирала по 15-20 видео на один материал, потом написала скрипт в Google Таблицах: вставляешь ссылки, дальше транскрибация и разбор по критериям сами. Четыре часа работы схлопнулись в 5,5 минут. С robots.txt та же логика: один раз настроил правильно, и не тратишь ресурс бота (и свое время) на то, что не приносит трафика.»

| Термин | Значение |
|---|---|
| robots.txt | Публичный файл в корне сайта с правилами доступа для поисковых ботов |
| Crawl budget | Лимит времени и запросов, который поисковик выделяет на сканирование сайта |
| Disallow | Директива, запрещающая боту сканировать указанный путь |
| Allow | Директива, разрешающая сканирование конкретного пути внутри закрытого раздела |
| User-agent | Идентификатор конкретного бота, к которому применяется правило |
| Crawl demand | Спрос бота на пересканирование, зависит от популярности и частоты обновлений |
| Soft 404 | Страница, которая отдает статус 200, но фактически не содержит контента |
| X-Robots-Tag | HTTP-заголовок с директивами индексации, работает и для не-HTML файлов |
Обязательно ли иметь robots.txt на маленьком сайте?
Технически нет, но Google рекомендует иметь файл на любом сайте. Без него часть ботов теоретически может не сканировать сайт вовсе, хотя на практике большинство все равно заходит и без файла.
Может ли robots.txt полностью скрыть страницу из поиска?
Нет. Disallow останавливает сканирование, но если на страницу ведут внешние ссылки, она может остаться в индексе без сниппета. Для гарантированного скрытия нужен noindex.
Как узнать, что crawl budget вообще является проблемой для моего сайта?
Смотрите отчет Crawl Stats в Google Search Console. Если новые страницы индексируются в течение дня после публикации, беспокоиться рано. Если ждут неделями, стоит аудировать robots.txt и логи сервера.
Нужно ли закрывать пагинацию в robots.txt?
Да, если глубина пагинации превышает разумный предел, например 40-50 страниц с тонким содержимым. Первые страницы листинга обычно оставляют открытыми.
Как часто нужно пересматривать robots.txt на программатик-портале?
При росте от 10 000 страниц — раз в квартал плюс сразу после любых структурных изменений: смены доменной структуры, добавления нового раздела, миграции.
Влияет ли robots.txt на позиции в Яндексе так же, как в Google?
Логика похожая: Яндекс.Бот тоже уважает Disallow, но интерпретация некоторых директив (например, Crawl-delay) у Яндекса отличается от Google. Проверяйте оба движка через их официальные инструменты.
Что будет, если в robots.txt ошибка синтаксиса?
В лучшем случае бот проигнорирует некорректную строку. В худшем, особенно при случайном Disallow: / в общем правиле, сайт полностью выпадет из сканирования. Всегда проверяйте файл в Google Search Console после изменений.
Если настраиваете каталог инструментов или программатик-раздел с нуля, полезно свериться с готовыми обзорами в каталоге AI-инструментов на VibeCoderz, там собраны IDE и сервисы, которые уже используют для автоматизации SEO-рутины. А если нужен разбор именно вашей структуры robots.txt и sitemap, можно записаться на консультацию к Максиму.
Обновлено: июль 2026.