Programmatic SEO: тысячи посадочных страниц на автомате

Когда спрос в нише состоит из десятков тысяч однотипных запросов — «доставка бетона в Одинцово», «аренда виброплиты на сутки», «купить кроссовки Nike 43 размера» — писать под каждый отдельную страницу руками экономически бессмысленно. Programmatic SEO решает задачу иначе: один шаблон плюс структурированные данные превращаются в тысячи посадочных страниц, каждая из которых отвечает на конкретный запрос. Механика мощная, но обоюдоострая: та же схема, что даёт кратный рост органики, при ошибках порождает армию дублей и thin content, съедает краулинговый бюджет и приводит сайт под фильтр. Разбираем, как строить масс-страницы так, чтобы SEO-продвижение давало трафик, а не санкции.
Коротко
- Programmatic SEO — это не «генератор текстов», а связка «шаблон + база данных + управление индексацией». Ценность создаёт именно уникальный набор данных на странице, а не перестановка слов.
- Работает там, где спрос естественно распадается на измерения: услуга × город, товар × характеристика, маршрут «откуда → куда», интеграция «А + Б».
- Главный фильтр на входе — правило полезных данных: если страница не отвечает на вопрос, на который не отвечает родительская категория, её создавать не надо.
- Основные риски: thin content, дубли по вариациям параметров, каннибализация, взрывной рост URL и выжигание краулингового бюджета.
- Открывать индексацию нужно волнами: сначала 5–10% страниц с максимальной частотностью, потом расширение по факту метрик.
- Яндекс жёстче Google в отношении шаблонных текстов: Баден-Баден ловит именно «одинаковый текст, где меняется топоним». Спасают данные, а не синонимайзер.
Что такое programmatic SEO и чем он отличается от «генерации текстов»
Programmatic SEO (программное SEO, масс-страницы) — это подход, при котором посадочные страницы создаются не вручную копирайтером, а автоматически: на основе одного или нескольких шаблонов и структурированного массива данных. Есть таблица со ста городами, есть таблица с двадцатью услугами — на выходе получается до двух тысяч URL, и каждый из них таргетирован на собственный запрос из хвоста.
Ключевое непонимание, с которым мы сталкиваемся у заказчиков, звучит так: «давайте прогоним текст через нейросеть в тысяче вариантов». Это не programmatic SEO, это спам, и он ловится алгоритмами. Разница фундаментальная. В программном SEO уникальность страницы создаётся данными, а не переформулировками. На странице «аренда виброплиты в Химках» уникальны: реальный список из семи моделей с ценами за сутки, адрес пункта выдачи в Химках, время доставки по району, минимальный срок аренды, залог, фотографии техники, отзывы клиентов из этого филиала. Текстовая обвязка при этом может быть на 60% одинаковой — и это нормально, потому что смысловое ядро страницы разное.
Если убрать данные и оставить только текст, в котором подменяется топоним, вы получаете тысячу страниц, отличающихся одним словом. Именно это Яндекс называет переоптимизацией и бесполезным контентом, и именно за это прилетает Баден-Баден. Подробнее про механику санкций — в разборе алгоритмов Яндекса.
Простой тест на жизнеспособность масс-страницы: удалите из неё все данные и оставьте только текст. Если оставшийся текст читается как «то же самое, но про другой город» — страницу создавать нельзя.
Три обязательных компонента
Источник данных. Это может быть 1С, товарная база, справочник объектов, выгрузка из CRM, собственная таблица, парсинг открытых источников. Требование одно: данные должны быть структурированы, полны и актуальны. Пустые поля в базе превращаются в пустые блоки на странице — а это прямой путь к thin content.
Шаблон. Не просто HTML-вёрстка, а модульная схема: набор блоков, каждый из которых включается или выключается в зависимости от наличия данных. Плохой шаблон печатает «Цена: —» и «Отзывов: 0». Хороший шаблон при отсутствии отзывов не выводит блок отзывов вообще и, если незаполненных полей набирается больше порога, вовсе не публикует страницу.
Слой управления индексацией. Логика, которая решает, какие из сгенерированных URL попадают в sitemap, какие получают noindex, какие закрыты от обхода, какие ссылаются canonical на родителя. Без этого слоя проект превращается в неуправляемый генератор мусора.
Где programmatic SEO работает, а где — нет
Метод применим не везде. Он окупается, когда выполняются три условия одновременно: спрос дробится по понятным измерениям, у вас есть уникальные данные под каждое пересечение, и суммарная частотность хвоста оправдывает разработку. Если хотя бы одно условие не выполняется — дешевле и безопаснее сделать двадцать хороших страниц руками.
| Тип проекта | Модель генерации | Порядок объёма | Вердикт |
|---|---|---|---|
| Услуги × география | Услуга + город/район/метро | Сотни — тысячи | Работает, если есть реальная привязка: филиал, зона выезда, срок доставки, цена по зоне |
| Каталог × характеристики | Категория + фильтр (бренд, размер, цвет, мощность) | Тысячи — десятки тысяч | Работает при наличии спроса на связку и минимум 5–7 товаров в выборке |
| Маршруты «откуда → куда» | Точка А + точка Б | Тысячи | Работает: расстояние, тариф, время в пути — данные объективно разные |
| Объекты недвижимости, техника, вакансии | Карточка на каждый объект из базы | Десятки тысяч | Работает при жизненном цикле объекта дольше 2–3 месяцев |
| Сравнения «А против Б» | Товар/сервис × товар/сервис | Сотни | Осторожно: перемножение даёт комбинаторный взрыв, спрос есть у 3–5% |
| Услуга × город без присутствия | Подмена топонима в тексте | Любой | Не работает. Классический кандидат под Баден-Баден |
| YMYL: медицина, финансы, право | Автогенерация экспертного контента | Любой | Не работает. Требования E-E-A-T несовместимы с шаблонной генерацией смыслов |
Правило полезных данных
Перед генерацией каждой связки задайте вопрос: на что отвечает эта страница такого, на что не отвечает страница-родитель? Если внятного ответа нет — генерировать нельзя. «Купить кроссовки Nike 43 размера» отвечает на вопрос «есть ли в наличии мой размер и сколько это стоит» — общая категория «кроссовки Nike» на него не отвечает. А вот «купить кроссовки Nike 43 размера синие недорого в рассрочку» уже не отвечает ни на что новое — это шум.
Как строятся кластеры: от измерений к URL
Проектирование programmatic-проекта начинается не с шаблона, а с семантики. Задача — понять, по каким осям реально дробится спрос, и не выдумать оси, которых в спросе нет.
Шаг 1. Определить измерения
Измерение — это переменная, по которой пользователь уточняет свой запрос. Для аренды спецтехники это тип техники, город, срок аренды, наличие оператора. Для интернет-магазина — категория, бренд, ключевая характеристика, ценовой сегмент. Выписывайте измерения из живого спроса, а не из структуры вашей базы: наличие поля в 1С не означает, что по нему кто-то ищет.
Шаг 2. Проверить спрос по каждому измерению
Собираем частотность через Яндекс Вордстат и выгрузки из анализа конкурентов. Здесь важен не абсолютный объём, а устойчивость паттерна. Если из ста городов частотность связки «услуга + город» ненулевая у восьмидесяти — паттерн живой, генерируем на все сто (двадцать нулевых подтянутся). Если ненулевая у семи — паттерна нет, делаем эти семь страниц руками.
Шаг 3. Отбраковать комбинаторный взрыв
Три измерения по 50, 30 и 20 значений дают 30 000 URL. Из них реальный спрос будет у 2–4 тысяч. Остальные 26 000 — балласт, который сожжёт краулинговый бюджет и разбавит сайт пустышками. Поэтому глубину пересечений почти всегда ограничивают двумя измерениями, редко тремя, и только для самых частотных значений. Механика ровно такая же, как при настройке фасетной навигации: открываем не всё, что технически может сгенерироваться, а только то, под чем есть спрос.
Шаг 4. Зафиксировать правила URL
Адреса проектируются один раз и навсегда — переделка потом стоит миграции и просадки. Требования: читаемая структура по канонам ЧПУ, одно значение измерения — один сегмент, фиксированный порядок сегментов (иначе получите /nike/43/ и /43/nike/ как два дубля), никаких GET-параметров в индексируемых адресах, нижний регистр, дефисы. Порядок сегментов должен быть жёстко нормализован на уровне роутера с 301-редиректом с любых альтернативных вариантов — как это делается, разбирали в материале про 301 редиректы.
Пороги отсечения: когда страница не должна родиться
Это самая недооценённая часть programmatic SEO. Не «как сгенерировать тысячу страниц», а «как не сгенерировать девятьсот из них». В рабочей системе перед публикацией URL проходит через набор проверок, и любая непройденная блокирует создание страницы.
Минимум сущностей
Для каталожной страницы — не меньше 5–7 товаров в выборке. Две позиции на странице «кроссовки Nike 43 синие» — это thin content, который лучше отдать canonical на родителя.
Полнота полей
Задайте обязательный набор: цена, характеристики, изображение, описание. Если заполнено меньше 70% — страница уходит в очередь на доработку данных, а не в индекс.
Частотность связки
Нулевая частотность по всем источникам и отсутствие связки в выдаче конкурентов — сигнал, что страница нужна только вам. Такие оставляют доступными, но вне sitemap.
Пересечение выборок
Если выборка страницы совпадает с родительской на 90%+ (в подкатегории 12 товаров, у бренда — те же 12), новая страница не нужна: она станет дублем и начнёт каннибализировать родителя.
Отдельно про жизненный цикл. Если объект живёт три недели (вакансия, разовое объявление, распродажный лот), генерировать под него индексируемую страницу почти бессмысленно: к моменту, когда робот дойдёт и ранжирование устаканится, объект исчезнет. Такие страницы либо закрывают от индексации, либо переводят в архивный статус с честным контентом «объект снят, вот похожие» и кодом 200 — но не оставляют пустышками с кодом 200, иначе получите soft 404 в промышленных масштабах. Правильная работа с исчезающими URL описана в статье про битые ссылки и ошибки 404.
Проектирование шаблона: где брать уникальность
Шаблон масс-страницы — это конструктор из блоков с разной «плотностью уникальности». Работающая пропорция примерно такая: 60–70% площади страницы занимают данные, уникальные для этой связки, и лишь 30–40% — общая обвязка (навигация, преимущества, гарантии, формы).
Блоки, дающие настоящую уникальность
- Выборка сущностей. Товары, объекты, модели — с ценами, фото, наличием. Это ядро. Порядок сортировки тоже должен быть осмысленным для связки, а не одинаковым везде.
- Цифры, рассчитанные из данных. «В наличии 14 моделей», «цены от 3 400 до 11 900 ₽», «средний срок доставки в Мытищи — 1 день», «за прошлый месяц выполнено 32 заказа в этом районе». Такие вставки автоматически уникальны и при этом честны — они вычисляются, а не выдумываются.
- Таблица параметров. Сравнение позиций выборки по ключевым характеристикам. Данные из базы, вёрстка общая.
- Локальная привязка. Для гео-страниц: адрес, зона выезда, стоимость доставки по этому направлению, карта, реальные отзывы по филиалу.
- Пользовательский контент. Отзывы, вопросы-ответы, фото клиентов. Самый ценный тип наполнения: он бесплатен, уникален и работает на коммерческие факторы.
- Ручные вставки на приоритетные страницы. Топ-100 самых частотных связок дописываются копирайтером вручную. Это гибридный подход — и он почти всегда даёт лучший результат, чем чистая автоматика.
Как писать текстовую обвязку
Текст на масс-странице нужен, но его роль вспомогательная. Правила, которые мы применяем на практике:
- Никаких синонимайзеров и «уникализаторов». Перестановка слов не создаёт смысла, зато создаёт неестественные конструкции, по которым шаблон определяется тривиально.
- Переменные — внутрь фактов, а не внутрь эпитетов. Плохо: «Лучшая доставка бетона в {город} по низким ценам». Хорошо: «Доставка бетона в {город}: {дистанция} км от завода, {срок} часа с момента заявки, минимальный объём {объём} м³».
- Объём текста — по делу. 800–1500 знаков осмысленного текста лучше, чем 5000 знаков воды. Тошнота и водность на масс-страницах контролируются жёстче обычного — механика в материале про тошноту и водность текста.
- Ключ в H1 и title — один раз, естественно. Шаблонный title вида «{Услуга} в {городе} — цена от {минимальная цена} ₽ | {Бренд}» работает и остаётся уникальным за счёт цены. Про конструирование шаблонов метатегов — в разборе Title и Description.
- Description — не «первые 160 знаков текста». Собирайте его из данных, иначе получите тысячу одинаковых сниппетов.
Про нейросети в шаблонах
Использовать языковую модель для генерации описаний на основе структурированных данных можно — если модель пересказывает факты из базы, а не сочиняет их. Скармливаете характеристики, получаете связный абзац. Что делать нельзя: просить модель «написать текст про услугу в городе N» без данных — на выходе будет правдоподобная пустота, одинаковая по смыслу на всех страницах, а иногда и выдуманные факты. Границы допустимого разбирали в статье про нейросети в SEO.
Дубли и каннибализация: главная техническая угроза
Масс-генерация умножает любую ошибку на количество страниц. Опечатка в шаблоне canonical — это не один дубль, а десять тысяч. Поэтому дублями здесь управляют системно.
Откуда берутся дубли на programmatic-проекте
Перестановка сегментов. /arenda/vibroplita/himki/ и /arenda/himki/vibroplita/ — если роутер принимает оба, у вас двойной индекс. Лечится нормализацией и 301 на канонический порядок.
Синонимичные значения измерения. «Мобильные телефоны» и «смартфоны», «Питер» и «Санкт-Петербург». Каждый синоним, попавший в базу отдельной записью, порождает страницу-близнеца. Нужен справочник синонимов с одним каноническим значением.
Пересечение выборок. Самый коварный случай: страницы формально разные, а товары на них одни и те же. Поисковик оценивает не URL, а содержимое — и справедливо считает их дублями. Отсюда правило порога пересечения из предыдущего раздела.
Комбинации фильтров. Сортировки, пагинация, вспомогательные параметры — классический источник бесконечных URL. Как это разруливается через canonical, noindex и правила обхода, подробно разобрано в статьях про canonical и дубли и пагинацию.
Каннибализация
Когда пять страниц таргетированы на близкие запросы, поисковик начинает выбирать между ними, и позиции пляшут: сегодня в ТОП-10 одна, завтра другая, суммарно — ни одна. На programmatic-проектах это происходит, если измерения пересекаются по смыслу. Диагностика простая: выгружаете из Яндекс.Вебмастера отчёт по запросам с посадочными и ищете запросы, у которых за квартал сменилось три и более URL. Лечение — схлопывание страниц через 301 или canonical и правка правил генерации, чтобы конфликтная связка больше не создавалась. Правильная кластеризация запросов на этапе проектирования снимает бóльшую часть таких конфликтов заранее.
Краулинговый бюджет: почему тысячи страниц не индексируются
Типичная жалоба: «сгенерировали 40 000 страниц, в индексе 3 000, остальные висят как “обход разрешён, но не проиндексировано”». Это не баг, это ожидаемое поведение. Робот распределяет ресурсы обхода по сайту исходя из его авторитетности и качества, и если новый сайт с нулевым трастом вываливает сорок тысяч однотипных URL, обходиться будут единицы процентов.
Что реально влияет на скорость освоения массива:
- Скорость ответа сервера. На масс-страницах каждая генерируется запросом к базе. 800 мс TTFB на 40 000 страниц — это 9 часов чистого времени обхода. Кеширование готового HTML на уровне страницы — не оптимизация, а обязательное требование; см. скорость загрузки сайта.
- Глубина вложенности. Страница, до которой шесть кликов от главной, для робота почти не существует. Нужны хабовые страницы-указатели: «все города», «все бренды», «все маршруты» — с пагинацией и осмысленной перелинковкой.
- Сегментированный sitemap. Не один файл на 40 000 URL, а несколько по 10–20 тысяч, разбитых по типам страниц и приоритету, с честным lastmod. Так по отчётам видно, какой сегмент осваивается, а какой стоит. Требования к формату — в материале про Sitemap.xml.
- Отсечение мусора на входе. Всё, что не должно индексироваться (сортировки, служебные параметры, комбинации без спроса), закрывается директивами в robots.txt и метатегом robots — до того, как робот потратит на них квоту.
- Траст домена. Молодому сайту не выдадут бюджет на десятки тысяч страниц, сколько ни оптимизируй. Отсюда — стратегия волн.
Системная работа с квотой обхода — отдельная большая тема, разобранная в статье про краулинговый бюджет. Для programmatic-проекта её выводы критичнее, чем для обычного сайта: здесь бюджет — прямое ограничение скорости роста.
Запуск волнами: пошаговая методика
Единовременная публикация всего массива — самая частая и самая дорогая ошибка. Она даёт резкий скачок числа URL, ухудшение средних показателей качества по сайту и, в худшем случае, санкции. Правильная последовательность — итерационная.
Пилот на 30–50 страницах
Берём самые частотные связки, генерируем, вручную проверяем каждую: полнота данных, уникальность выборки, корректность метатегов, читаемость текста. Одна кривая страница в пилоте — это тысяча кривых страниц на проде.
Замер через 4–8 недель
Смотрим: сколько страниц пилота вошло в индекс, какие позиции, есть ли органические переходы, какие поведенческие. Если из 50 страниц проиндексировано 45 и они дают трафик — паттерн рабочий. Если 12 и тишина — проблема в шаблоне, а не в объёме.
Первая волна: 5–10% массива
Открываем самый частотный сегмент — обычно один тип услуги на все города или одну категорию на все бренды. Добавляем в отдельный sitemap, чтобы отслеживать освоение изолированно от остального сайта.
Контроль качества индекса
Ключевая метрика — доля проиндексированных от опубликованных. Выше 70% — здоровый паттерн, можно расширяться. Ниже 40% — робот считает страницы малополезными; расширять массив категорически нельзя, надо чинить наполнение.
Расширение и перелинковка
Каждая следующая волна — плюс 10–20% массива с интервалом 3–6 недель. Параллельно достраиваем хабы и связи «похожие», «соседние города», «другие размеры»: без них новые страницы окажутся сиротами.
Прополка
Через 4–6 месяцев после полного разворачивания: страницы без единого показа и без индексации за квартал — кандидаты на удаление или объединение. Массив должен уменьшаться так же легко, как рос.
Прополка — этап, который пропускают почти все, и зря. Сайт, где 30% страниц не получили ни одного показа за полгода, выглядит для алгоритма как склад бесполезного контента, и это влияет на оценку всего домена, а не только этих URL. Убирая балласт, вы концентрируете и краулинговый бюджет, и внутренний вес на страницах, которые реально работают.
Когда прилетает фильтр и как выглядят предвестники
Programmatic-проект под санкциями — почти всегда проект, где нарушено правило полезных данных. Алгоритмы не наказывают за автоматическую генерацию как таковую: они наказывают за отсутствие ценности. Витрина маркетплейса — это тоже масс-страницы, и она в ТОПе, потому что за каждым URL стоят реальные товары.
| Симптом | Что за ним стоит | Действие |
|---|---|---|
| Индексируется 10–20% массива, остальное «малоценная страница» | Робот считает страницы бесполезными. Это ещё не фильтр, но прямой к нему путь | Остановить генерацию, поднять плотность данных, урезать массив |
| Страницы входят в индекс и через 2–4 недели выпадают | Классика thin content: первичная оценка положительная, после накопления поведенческих — отрицательная | Разбираться с наполнением и поведенческими, а не добавлять текст |
| Резкое падение всего сайта после релиза массива | Похоже на Баден-Баден за переоптимизацию или на общее падение качества домена | Проверить сообщения в Вебмастере, откатить массив в noindex, чинить шаблон |
| Позиции скачут между URL по одному запросу | Каннибализация | Схлопнуть конфликтующие страницы, поправить правила генерации |
| Растёт число URL, не растёт трафик | Генерация связок без спроса | Перепроверить частотность, отсечь пустые пересечения |
Отдельно подчеркнём: «малоценная или маловостребованная страница» в Вебмастере — это не фильтр, а диагноз. Он означает, что робот оценил страницу и решил не тратить на неё место в индексе. Если такой статус массово получают ваши свежие масс-страницы, единственно верная реакция — не добавлять ещё, а поднимать качество имеющихся. Что делать, если позиции уже просели, разбирали в материале почему сайт упал в выдаче, а конкретные механики санкций — в статье про фильтры Яндекса.
Отличие «хорошей» масс-страницы от «плохой» — на одном примере
Плохая: «Ремонт стиральных машин в Балашихе. Наша компания много лет занимается ремонтом стиральных машин в Балашихе. Мастера выезжают в Балашиху в день обращения. Ремонт стиральных машин в Балашихе — это качественно и недорого». Данных ноль, ценности ноль, город подменяем — получаем ещё сто таких.
Хорошая: та же страница, но на ней — прайс по видам поломок именно для этой зоны, срок выезда с учётом расстояния, список из шести мастеров, закреплённых за районом, с их специализацией и рейтингом, 14 отзывов от клиентов из Балашихи с адресами улиц, карта зоны обслуживания, наличие типовых запчастей на складе. Тексту здесь отводится 900 знаков — и они уже не решают, потому что решают данные.
Аналитика: что и как считать
Массив в тысячи страниц нельзя оценивать по средним значениям — среднее по больнице скрывает всё. Работать надо с распределениями и по сегментам.
- Доля проиндексированных по сегментам. Отдельно по каждому типу шаблона и каждой волне. Сегмент, проваливающийся ниже 40%, локализует проблему точнее любого аудита.
- Доля страниц с хотя бы одним показом за 30 дней. Здоровый массив — 60%+. 25% означает, что три четверти сгенерированного не нужны никому.
- Трафик на страницу в разрезе шаблона. Позволяет понять, какой паттерн масштабировать, а какой сворачивать.
- Поведенческие по типу страниц. Отказы выше средних по сайту на 15–20 пунктов на масс-страницах — сигнал, что страница не отвечает на запрос. Настройка сегментов — в статье про Яндекс Метрику для SEO.
- Конверсия в заявку. Финальный критерий. Тысяча страниц с трафиком и нулём заявок — это провал таргетинга по интенту, а не успех.
Сводить это всё удобно в одну таблицу «URL — шаблон — волна — индекс — показы — клики — заявки», обновляемую еженедельно. По ней решения о расширении или прополке принимаются за пять минут, а не по ощущениям. Как эти показатели превращаются в деньги и отчёт для бизнеса — в разборе оценки эффективности SEO.
Реализация: что нужно от разработки
Programmatic SEO — это в первую очередь проект разработки, и техническое задание должно быть написано до первой строчки кода. Минимальный список требований, который мы закладываем:
- Отдельная сущность «правило генерации» в админке: какие измерения перемножаются, какие пороги применяются, какой шаблон используется. Не хардкод в коде.
- Ручное управление статусом каждой страницы: черновик / доступна, но не в sitemap / в индексе / noindex / удалена с 301. SEO-специалист должен переключать это без разработчика.
- Кеширование готового HTML с инвалидацией при изменении данных. Цель по TTFB — до 200 мс.
- Шаблоны метатегов с переменными и фолбэками на случай отсутствия данных, плюс возможность ручного переопределения на приоритетных страницах.
- Автогенерация микроразметки Schema.org из тех же данных: Product, Offer, AggregateRating, BreadcrumbList — на масс-страницах она особенно ценна, потому что улучшает сниппет без ручного труда.
- Логика перелинковки как алгоритм, а не ручные ссылки: «соседние города по расстоянию», «похожие модели по параметрам», хлебные крошки от данных.
- Отчёт по здоровью массива внутри админки: сколько страниц ниже порога наполнения, где пустые поля, где пересечение выборок выше нормы.
Отдельный вопрос — платформа. На 1С-Битрикс масс-страницы обычно строят на инфоблоках и умном фильтре, на WordPress — через кастомные типы записей и шаблоны, на конструкторах вроде Tilda полноценный programmatic невозможен в принципе — нет слоя данных и роутинга. Если проект изначально строится под масс-страницы, архитектуру лучше закладывать на этапе создания сайта: переделка каталога под генерацию постфактум стоит дороже, чем разработка с нуля.
Экономика и сроки: чего ждать реалистично
Programmatic SEO — инструмент с длинным горизонтом. Разработка шаблонов, приведение данных в порядок и настройка слоя индексации на среднем проекте занимают полтора-три месяца до первой волны. Дальше индексация массива идёт волнами по 3–6 недель, а ощутимый трафик на хвостовых связках появляется через 4–8 месяцев с момента открытия — раньше не позволят ни краулинговый бюджет, ни накопление поведенческих. Разброс большой и зависит в первую очередь от траста домена: на возрастном сайте с историей массив осваивается кратно быстрее, чем на новом.
Основная статья затрат — не тексты, а данные и разработка. Если база неполна, никакой шаблон её не спасёт: приведение данных в пригодный вид часто оказывается самой долгой частью проекта. Именно поэтому мы всегда начинаем с аудита источника данных, а не с обсуждения количества страниц. Ориентиры по бюджетам работ — на странице цен на продвижение, а примеры проектов с большими массивами посадочных — в портфолио. Пока массив индексируется и набирает вес, спрос по хвосту разумно подстраховывать контекстной рекламой: она закрывает те же связки платно, и заодно даёт данные о том, какие из них реально конвертят — это лучший вход для приоритизации волн.
Частые вопросы
Количество само по себе не является фактором риска — маркетплейсы держат в индексе десятки миллионов URL. Риск определяется отношением полезных страниц к бесполезным. Если каждая страница отвечает на реальный запрос уникальным набором данных, ограничения нет. Если половина массива — пустышки, проблемы начнутся уже на нескольких сотнях. Практический ориентир для нового сайта: не больше 5–10% прироста индексируемых URL за раз, с паузой на замер результата.
Если вы реально работаете в этом городе — выезжаете, доставляете, обслуживаете — да, но страница должна это доказывать: срок выезда, стоимость доставки в этот город, зона покрытия, отзывы. Если присутствия нет и подменяется только топоним — это тот самый сценарий, за который выдаёт Баден-Баден, и он же бесполезен коммерчески: пользователь из города, куда вы не приедете, вам не клиент. Тонкости работы с географией разбираются в материале про региональное SEO.
Технически они близки — обе создают страницы из пересечения параметров. Разница в области применения и происхождении URL. Фасетная навигация — про фильтры внутри каталога интернет-магазина, где страницы порождаются действиями пользователя, и главная задача — открыть спросовые комбинации и закрыть остальные. Programmatic SEO шире: он включает гео-страницы, маршруты, карточки объектов, сравнения — то есть страницы, генерируемые из любого структурированного массива, а не только из фильтров товаров. Правила отсечения и управления индексацией при этом почти идентичны.
Уникальным должно быть содержимое страницы, а не обязательно текстовый блок. Если 60–70% площади занимают уникальные данные — выборка товаров, цены, характеристики, отзывы, — то общая текстовая обвязка на 30–40% не проблема: так устроены все крупные каталоги. Опасно обратное соотношение: страница, состоящая из одного шаблонного текста с подменённой переменной. И категорически не работает «уникализация» синонимайзером — она не добавляет ни смысла, ни ценности, зато делает текст неестественным.
Сначала определите причину по статусу в Вебмастере. «Малоценная или маловостребованная» — проблема качества: страницы слишком похожи друг на друга или пусты, нужно поднимать плотность данных и резать массив. «Обход разрешён, но не проиндексировано» при большом объёме — чаще нехватка краулингового бюджета: чините скорость ответа, глубину вложенности, перелинковку, сегментируйте sitemap. Добавлять новые страницы в обеих ситуациях нельзя — станет только хуже.
Если услуг пять и география — один город, точно нет: пять хороших ручных страниц сработают лучше и обойдутся дешевле. Метод начинает окупаться примерно от нескольких сотен целевых связок с ненулевой частотностью. Промежуточный вариант для сервисного бизнеса — полуавтоматика: шаблон формирует структуру и данные, а тексты на топ-50 страниц пишутся руками. Общие принципы продвижения сервисного бизнеса разбираются в статье про SEO для сайта услуг.
В медицине, финансах и праве автогенерация смыслового контента практически исключена: там требуется подтверждённая экспертиза, авторство, ссылки на источники — всё то, что шаблон дать не может. Но programmatic применим к справочным слоям: карточки врачей с реальными данными, страницы филиалов, справочник препаратов из официального реестра, калькуляторы. То есть генерировать можно факты, а не суждения. Экспертный контент в YMYL пишется людьми.
Проверить, не ошибка ли это генерации (пустая выборка, битые данные, отсутствие в sitemap). Если данные в порядке, а спроса нет — страницу нужно убирать: склеивать 301-редиректом с ближайшим релевантным разделом либо переводить в noindex. Балласт из непоказываемых страниц ухудшает оценку домена в целом и распыляет краулинговый бюджет. Прополка — обязательный регулярный этап, а не признание поражения.
Построим массив посадочных страниц, который приносит заявки
Спроектируем кластеры и шаблоны, настроим генерацию, пороги отсечения и управление индексацией. Развернём массив волнами — без дублей, thin content и риска фильтра. Прозрачный договор, отчёты каждую неделю.
- Пакет «Старт» от 55 000 ₽/мес
- Пакет «Стандарт» 75 000 ₽/мес
- Пакет «Премиум» 95 000 ₽/мес
- Бесплатный аудит и прогноз
- Договор с гарантией результата
- Отчёты каждую неделю
Комментарии (14)
Евгений
Тест из блоквоута — «убери данные, останется текст про другой город» — надо распечатать и повесить над столом. Мы ровно так три года назад и налетели.
Ольга П.
Раздел про пороги отсечения — самый ценный. У нас в каталоге куча страниц с двумя-тремя товарами в выборке, и они реально висят мёртвым грузом. Правильно я понимаю, что их лучше не удалять, а canonical на родителя?
AdminSEO Мастер
Ольга, зависит от спроса на связку. Если частотность есть, а товаров мало — canonical на родителя и возвращаетесь к странице, когда ассортимент дорастёт до 5–7 позиций. Если и спроса нет — смело в 301 на ближайший раздел, держать такие URL смысла нет.
vladimir77
Про фиксированный порядок сегментов в URL — больная тема. Роутер у нас принимал оба варианта, обнаружили только когда в индексе стало вдвое больше страниц, чем должно быть.
Ирина С.
Спасибо за таблицу с симптомами. У нас как раз второй случай: страницы входят в индекс и через месяц выпадают. Всё это время думали, что надо больше текста дописать.
AdminSEO Мастер
Ирина, текст в такой ситуации почти никогда не помогает — вы просто увеличиваете объём шаблонной части. Посмотрите отказы и время на выпавших страницах в сравнении со средним по сайту: обычно там видно, что человек пришёл и не нашёл ответа. Лечится плотностью данных в выборке, а не знаками.
Тимур
Немного поспорю насчёт сравнений «А против Б». Спрос там правда узкий, но конвертит такой трафик отлично — человек уже выбирает. Мы сделали сотню таких страниц руками и не жалеем.
Наталья_магазин
Открыли массив по схеме волнами, как тут описано. За год вышли на пару тысяч визитов в месяц с хвоста, при этом ни одного сообщения в Вебмастере. Медленно, но спокойно.
kirill_dev
Как разработчик подпишусь под пунктом «правило генерации отдельной сущностью в админке, не хардкод». Иначе каждое изменение порогов превращается в релиз.
Алёна
А что если данных полно, но они меняются каждый день — цены, наличие? Кеш готового HTML с инвалидацией не будет постоянно сбрасываться и убивать смысл кеширования?
AdminSEO Мастер
Алёна, вопрос по делу. Обычно кеш дробят: тяжёлая часть страницы (выборка, характеристики, текст) живёт долго, а цены и наличие подтягиваются отдельным лёгким блоком. Плюс инвалидация по факту изменения конкретной записи, а не всей категории — тогда сбрасывается десяток страниц, а не десять тысяч.
Станислав
Пример про ремонт стиральных машин в Балашихе — прям портрет половины выдачи по бытовым услугам. И ведь кто-то до сих пор там сидит.
Денис Ш.
Про прополку вообще нигде не пишут, спасибо. У нас висит тысяч восемь страниц без единого показа, и рука не поднималась удалять — жалко же, столько работы. Теперь понятно, что они не нейтральны, а вредят.
AdminSEO Мастер
Денис, перед удалением обязательно проверьте, не ошибка ли это генерации: пустая выборка, битые данные или просто отсутствие в sitemap. Бывает, что страницы нормальные, их просто никто не показывал роботу. Если данные в порядке и спроса нет — 301 на ближайший релевантный раздел. Если сомневаетесь по объёму, приходите на бесплатный аудит, посмотрим массив по сегментам.
Женя_копирайтер
«Переменные — внутрь фактов, а не внутрь эпитетов». Забираю формулировку, это лучшее объяснение, почему «лучшая доставка в {город}» не работает.
Рустам
Скептически отношусь к порогу 70% проиндексированных. У нас на молодом домене было около 45% в первой волне, но трафик рос. Просто робот доходил медленно. Не рано ли по этой цифре ставить диагноз?
AdminSEO Мастер
Рустам, справедливое замечание. Важно смотреть не только на цифру, но и на статус: если это «обход разрешён, но не проиндексировано» — да, чаще всего просто нехватка бюджета обхода, и на молодом домене это нормально. А вот если массово «малоценная или маловостребованная» — тут уже 45% диагноз, и расширяться нельзя.
Лариса
Новичок, читала долго, но дошло. Главное усвоила: сначала данные, потом шаблон, а тексты вообще в конце.
Антон_спецтехника
У нас аренда техники, примеры прямо про нас. Сидим на Тильде, и теперь понятно, почему все попытки сделать страницы под города заканчивались ничем. Похоже, придётся переезжать.