Каталог и техникапозиция 2 из 9
Фильтры в интернет-магазине и SEO: что открыть для индексации
Что разобрано ниже
Фильтры в каталоге способны создать сотни тысяч адресов, и почти все они бесполезны для поиска. Решение строится на одном принципе: для индексации открывают только те сочетания фильтров, которые совпадают с реальными запросами покупателей и содержат достаточно товаров. Такие страницы получают человекопонятный адрес, собственные заголовки и ссылку из каталога. Всё остальное закрывают от индекса так, чтобы робот не тратил на это время.
Почему нельзя оставить всё как есть
Представьте категорию «Ламинат» в магазине стройматериалов с десятью фильтрами: бренд, класс износостойкости, толщина, цвет, фаска, страна, цена и так далее. Каждое сочетание значений — новый адрес. Получается число страниц, которое на порядки больше, чем товаров в магазине. Робот начинает обходить эти комбинации вместо карточек, большая часть адресов попадает в исключённые как дубли или малополезные, а важные страницы индексируются медленнее.
Обратная крайность — закрыть все фильтры — тоже ошибка. Запросы вида «ламинат 33 класса», «ламинат дуб серый», «ламинат с фаской» — это отдельный и часто тёплый спрос. Если у магазина нет под него страницы, по таким запросам в выдаче будут конкуренты, у которых она есть.
Как решить, какой фильтр открыть
Пройдите по фильтрам каждой крупной категории и задайте три вопроса:
- Есть ли спрос? Проверьте в Вордстате фразы вида «категория + значение фильтра». Если запрос встречается регулярно, это кандидат.
- Достаточно ли товаров? Страница с одним-двумя товарами покупателю почти ничего не даёт. Если ассортимент под значение маленький, ждите, пока он вырастет.
- Отличается ли выдача? Если по запросу «ламинат серый» в топе стоят страницы с серым ламинатом, а не общие категории, поисковая система считает это отдельным интентом.
Как собрать такие сочетания в общую семантику каталога и не отдать один запрос двум страницам, разобрано в материале о семантике каталога.
| Тип фильтра | Пример | Обычное решение | Комментарий |
|---|---|---|---|
| Бренд | Ламинат Brandname | Открыть | Брендовые запросы стабильны и коммерческие |
| Ключевое свойство | Ламинат 33 класса | Открыть, если есть спрос | Проверить Вордстат и выдачу |
| Цвет, материал | Ламинат дуб серый | Открыть выборочно | Только популярные значения |
| Цена | Ламинат до 1000 рублей | Обычно закрыть | Значения меняются вместе с ценами |
| Два и более значений одного фильтра | Серый или белый | Закрыть | Спроса на такие сочетания почти нет |
| Три и более фильтра одновременно | Бренд + класс + цвет + толщина | Закрыть | Слишком узко, мало товаров |
ЧПУ для открытых фильтров
Открытая страница фильтра должна выглядеть для поисковой системы как обычная категория. Адрес без параметров, со смысловыми словами:
Плохо: https://shop.example/catalog/laminat/?filter[class]=33&filter[color]=12
Хорошо: https://shop.example/catalog/laminat/33-klass/
Хорошо: https://shop.example/catalog/laminat/dub-seryj/
Для таких страниц нужны собственный title и H1, построенные по шаблону с учётом значения фильтра:
title: Ламинат 33 класса — купить в {город}, цены от {мин. цена} ₽
H1: Ламинат 33 класса
Без отдельного H1 страница с фильтром выглядит как копия родительской категории. Короткий текст под список товаров на таких страницах не обязателен, а что писать, если он нужен, разобрано в материале о текстах категорий.
И последнее: на открытую страницу фильтра должна вести обычная HTML-ссылка — из блока популярных подборок в категории, из тегов над списком товаров, из меню. Если страница существует только как результат нажатия галочки в JavaScript, робот найдёт её с трудом.
Как закрыть остальное
Закрытые фильтры убирают из индекса одним из способов, и у каждого своя цена.
Тег noindex в meta robots. Страница доступна роботу, но в индекс не попадает. Хорошо работает для сочетаний, которые нужно показывать посетителям, но не в поиске. Минус: робот всё равно её обходит.
Canonical на родительскую категорию или открытый фильтр. Подходит, когда содержимое почти совпадает с основной страницей. Учтите, что canonical — подсказка, а не команда: если страницы сильно отличаются, поисковая система может её проигнорировать.
Запрет в robots.txt. Робот не заходит на такие адреса вообще, бюджет обхода экономится. Но если на закрытую страницу ведут внешние ссылки, Google может показать её в выдаче без описания. И важно: страница, закрытая в robots.txt, не прочитает тег noindex — робот его просто не увидит.
Для Яндекса есть ещё директива Clean-param. Она сообщает, что указанные параметры не меняют содержимое, и робот склеивает такие адреса с основным. Google её не понимает, поэтому для него нужен canonical.
User-agent: Yandex
Clean-param: sort&order&view /catalog/
Clean-param: utm_source&utm_medium&utm_campaign&utm_content&utm_term
User-agent: *
Disallow: /*?*filter[
Disallow: /*?*price_from=
Сортировки, вид списка и параметры пагинации — отдельная история, она разобрана на странице о пагинации и сортировках.
Если фильтры работают на JavaScript
Многие фильтры подгружают товары без перезагрузки страницы. Для покупателя это удобно, но проверьте три вещи. Первое: у открытого фильтра есть настоящий адрес, который открывается напрямую и отдаёт список товаров в исходном HTML. Второе: ссылки на открытые фильтры видны роботу без выполнения скриптов. Третье: фильтр не тормозит страницу — тяжёлые скрипты фасетной навигации часто становятся главной причиной плохих показателей, подробнее в материале о скорости каталога.
Что смотреть после внедрения
В Яндекс Вебмастере откройте «Индексирование → Страницы в поиске» и посмотрите исключённые страницы по маске каталога: дубли и малополезные должны сокращаться. В «Статистике обхода» видно, на какие адреса робот тратит запросы — если там по-прежнему много адресов с параметрами фильтров, правила не работают. Инструмент «Проверка ответа сервера» поможет убедиться, что открытый фильтр отдаёт код 200 и нужные теги. В Google Search Console посмотрите отчёт «Индексирование страниц», статусы про альтернативные страницы с canonical и про дубли.
Проверить в своём магазине
- Составлен список фильтров по каждой крупной категории с решением «открыть» или «закрыть».
- Открытые фильтры имеют ЧПУ без параметров, свои title и H1, отдают код 200.
- На каждый открытый фильтр ведёт обычная HTML-ссылка из категории.
- Множественный выбор и сочетания трёх и более фильтров не попадают в индекс.
- В robots.txt нет противоречия: закрытые там страницы не рассчитывают на noindex.
- Для Яндекса настроен Clean-param для сортировок и меток, для Google — canonical.
Вопросы владельцев магазинов
Сколько фильтров можно открыть для индексации в одной категории?
Ограничение задаёт не число, а спрос и ассортимент. Если по сочетанию «категория + значение» люди регулярно ищут и под него есть хотя бы несколько товаров, его стоит открыть. Обычно это бренды и несколько ключевых свойств, а цены, множественный выбор и глубокие сочетания остаются закрытыми.
Что лучше для закрытых фильтров — noindex или запрет в robots.txt?
Если таких адресов немного, noindex надёжнее: робот видит страницу и понимает, что её не нужно индексировать. Если комбинаций тысячи и они отнимают бюджет обхода, лучше закрыть их в robots.txt и одновременно перестать ставить на них ссылки, которые робот может найти.
Нужно ли добавлять страницы фильтров в sitemap.xml?
Только открытые для индексации. Закрытые фильтры в карте сайта создают противоречие: вы одновременно просите их проиндексировать и запрещаете это. Открытые же страницы фильтров стоит включить, чтобы робот быстрее их нашёл.
Почему открытые фильтры не появляются в поиске Яндекса?
Чаще всего причина в том, что страница слишком похожа на родительскую категорию: тот же title, тот же H1, почти те же товары. Яндекс склеивает её как дубль или отмечает как малополезную. Проверьте статус адреса в Вебмастере, сделайте уникальные заголовки и убедитесь, что товаров достаточно.
Проверено редакцией 23.10.2026. Интерфейсы Вебмастера, Метрики и Search Console время от времени меняются — названия разделов сверяйте со справкой сервисов.