Экспертиза

Soft 404: как найти и вылечить на практике (2026)

Soft 404: как найти и вылечить на практике (2026)
Содержание

Статья:

Soft 404 — это когда сервер отдаёт код 200 OK, а на странице по факту нечего индексировать: «Товар не найден», пустой каталог по фильтру, заглушка «раздел в разработке». Формально страница жива, по содержанию — мусор. Google (и в меньшей степени Яндекс) сам переклассифицирует такую страницу и выкидывает её из индекса, а в Search Console вешает ярлык «Мягкая ошибка 404».

Проверить за 10 секунд, с чем вы имеете дело:

curl -IL https://site.ru/tovar-udalyon

Если в ответе HTTP/2 200, а на странице текст вроде «товар снят с продажи» без реального контента — это кандидат в soft 404. Дальше открываете страницу и жмёте Ctrl+U (просмотр исходного кода) — ищете noindex в <meta name="robots">Noindex и nofollow: как правильно применять и не терять индексацию . Если noindex стоит и статус 200 — это уже не soft 404 в глазах Google, а сознательное решение вебмастера, и в GSC она попадёт в «Исключено noindex-тегом», не в «мягкую ошибку».

Почему это не косметика, а деньги

  • Crawl budget утекает. На каталоге с 50 000+ SKU каждый мёртвый фильтр — это визит бота, который мог пойти на живую карточку. У интернет-магазинов с фильтрами по 5-7 параметрам счёт может идти на десятки тысяч мусорных комбинаций. Подробнее о том, как оптимизировать расход бюджета, читайте в статье Crawl budget: где бот тратит время впустую и как это исправить .
  • Ссылочный вес теряется впустую. Если внешняя ссылка (купленная на бирже или естественная) ведёт на soft 404 — страница не в индексе, вес никуда не передаётся. Проверять это нужно ДО того, как вы платите за размещение ссылки, иначе бюджет на линкбилдинг слит.
  • Аналитика врёт. Пользователь видит пустоту и уходит за секунду, но сервер отдал 200 — в Метрике/GA это не считается отказом с точки зрения кода ответа, отчёты выглядят чище, чем есть на самом деле.
По темеЧто такое тонкий контент и почему Google его не любит

Где смотреть у себя: точный путь

  1. Google Search Console → Индексирование → Страницы. Прокрутите вниз до блока «Почему страницы не индексируются» — там отдельной строкой идёт «Страница помечена как “мягкая ошибка 404”». Кликаете — открывается список примеров URL (обычно 20-30 штук, не весь объём).
  2. По каждому URL — кнопка «Проверка URL» (или вставить адрес в строку проверки наверху). В блоке «Покрытие» смотрите дату последнего сканирования: если страница просканирована 3 недели назад и до сих пор висит в этом статусе — исправление на сервере ещё не подхватилось, нужен принудительный запрос повторного сканирования тем же инструментом (кнопка «Запросить индексирование»).
  3. Яндекс.Вебмастер → Индексирование → Исключённые страницы. Термина «soft 404» там нет, ищите статус «Страница не найдена (404)» рядом с URL, который явно отдаёт 200, — расхождение статуса в отчёте и реального кода ответа сервера сигнализирует о том же самом.
  4. Серверные логи — самый точный источник. Фильтруете по User-Agent Googlebot, смотрите на URL с маленьким размером ответа (обычно до 3-5 КБ HTML без картинок) и кодом 200 — это и есть кандидаты, ещё не долетевшие до отчёта GSC (отчёт обновляется с лагом до 2 недель).
  5. Массовая проверка по списку URL. Если у вас каталог из тысяч страниц и ждать переобхода Google для каждой нет времени — прогоните весь список через сервис массовой проверки индексации, например Rush Analytics: загружаете URL пачкой, получаете статус индексации по каждому и видите, где страница технически в индексе Google, но фактически не отдаёт трафик — верный маркер soft 404 или тонкого контента.
По темеGoogle просканировал страницу, но не проиндексировал: пошаговый разбор статуса «Crawled - currently not indexed»

Разбор реальных сценариев

Сценарий 1: карточка товара снята с продажи. Движок отдаёт шаблон «Товар недоступен» с кодом 200, статус висит в GSC 3-4 недели. Правильное решение: если товара не будет никогда — 410 (Gone), если может вернуться на склад в течение месяца — 404 плюс блок «похожие товары» вместо пустоты. После смены кода на сервере не ждите переобхода — вручную отправьте URL через «Проверка URL → Запросить индексирование», иначе статус в отчёте не изменится неделями.

Сценарий 2: фильтр «диван угловой велюр зелёный 3-местный». Комбинация без товаров отдаёт пустой каталог с кодом 200. Если таких комбинаций тысячи — это системная проблема, не разовая. Решение: на пустой выдаче фильтра ставить meta noindex + текст «сейчас нет товаров по этим параметрам, попробуйте убрать один из фильтров» + 2-3 похожие категории со ссылками. Так страница остаётся полезной для живого посетителя, но не засоряет индекс.

Сценарий 3: статья 30 слов + soft 404 по соседству. Если у вас в GSC часть тонких страниц попадает в «мягкую ошибку 404», а часть — в Crawled — currently not indexed, это одна и та же болезнь (мало пользы на странице), просто Google классифицировал по-разному в зависимости от того, насколько «пустым» показался HTML в момент обхода. Лечение одно: либо дописываете страницу до полноценной (минимум разверните тему на 3-4 конкретных подраздела с примерами), либо удаляете и ставите 301 на страницу-донора той же тематики.

Сценарий 4: «на всякий случай» 301 на главную. Частая ошибка после чистки каталога — редиректить все снятые товары на главную страницу пачкой. Если так сделать с сотней URL, Google начинает воспринимать паттерн «много адресов → один и тот же адрес» как признак мягкой ошибки уже для самой главной страницы, и она может выпасть из некоторых запросов. Alternate page with proper canonical: когда это норма, а когда — ошибка . Редиректить нужно точечно — на конкретную категорию или похожий товар, а не «куда попало, лишь бы не 404».

Таблица: статус → диагноз → действие

Что видитеДиагнозЧто делатьЧего не делать
Код 200, текст «Товар не найден»Классический soft 404404 или 410 в зависимости от того, вернётся ли товарНе оставлять как есть «пока не мешает»
Пустой каталог по фильтру, код 200Параметрический soft 404noindex + текст-заглушка с альтернативамиНе закрывать через robots.txt — бот не увидит исправления
GSC: висит 3+ недели без измененийИсправление на сервере не подхватилосьЗапросить повторное индексирование вручную по каждому URLНе ждать пассивно новый обход
Много товаров редиректят на главнуюПаттерн, похожий на soft 404 для самой главнойРедирект на конкретную категорию/аналогНе делать 301 «куда попало»
30-50 слов текста, код 200Тонкий контент (соседствует с soft 404)Дописать пользы или удалить с 301 на донораНе публиковать заглушки «скоро будет контент»

После исправления: как ускорить возврат в индекс

Смена статус-кода или добавление noindex сама по себе не выкидывает страницу из отчёта мгновенно — Google должен её переобойти. На своём сайте для точечных URL хватает «Проверка URL → Запросить индексирование» в Search Console. Но если правок много (вы почистили сразу сотни URL после аудита каталога), гонять каждую вручную нереально — здесь подключают индексатор со своей очередью краулеров, например SpeedyIndex: отдаёте список исправленных адресов, сервис прогоняет их через собственные боты, и переобход по факту происходит быстрее, чем если полагаться только на органическое сканирование Googlebot.

Если нужно быстро прогнать экспресс-диагностику одной конкретной страницы (не весь сайт, а «вот эта карточка — почему она мягкая 404») — удобно свериться через pr-cyru: экспресс-анализ покажет технические параметры страницы (объём текста, дублирующиеся блоки, метатеги) без необходимости поднимать логи вручную.

Чек-лист редактора перед публикацией

  • На странице реально есть контент, а не «раздел наполняется» — иначе не публикуйте вообще.
  • Удалённые товары/статьи отдают 404 или 410, а не шаблон с кодом 200.
  • Пустые страницы фильтров закрыты noindex, а не robots.txt.
  • Массовые редиректы ведут на конкретные аналоги, не скопом на главную.
  • После правки статус-кода URL отправлен на повторное индексирование, а не оставлен ждать сам по себе.
  • Раз в квартал на крупном каталоге прогоняется массовая проверка индексации по всему списку живых URL — иначе новые soft 404 накапливаются незаметно.

Чего делать точно не нужно

  • Закрывать soft 404 через robots.txt — краулер туда не зайдёт и не увидит, что вы всё почистили; статус будет висеть неопределённо долго.
  • Ставить 410 на всё подряд «для надёжности» — это жёсткий сигнал «не возвращайся», уместен только когда вы точно знаете, что страница не вернётся.
  • Делать массовый 301 на главную для всех удалённых URL — вы получите второй пункт из таблицы выше, только уже для главной страницы.

Связанные термины

  • 404 / 410 — коды отсутствия страницы, разница в «постоянности» удаления.
  • 301 / 302 — постоянный и временный редиркты.
  • Crawled — currently not indexed — страница просканирована, но не попала в индекс; частый сосед soft 404 при тонком контенте.
  • Тонкий контент — основная содержательная причина, из‑за которой Google вообще классифицирует страницу как мягкую 404.

Дополнительные материалы: Почему страница не попала в индекс: диагностика по шагам, а не наугад и Страница выпала из индекса: как найти причину за 10 минут и вернуть её обратно .