Обрати внимание, как выглядит ссылка твоего сайта в Google-выдаче. Если стоит просто URL типа example.com › posts › 123-my-article — читателю ничего не говорит о разделе. Если же там путь example.com › Блог › JavaScript › TypeScript — читатель сразу понимает контекст, доверие к ссылке выше, CTR растёт. Второй вариант — работа schema BreadcrumbList.

BreadcrumbList — одна из самых простых схем в реализации (десять строк JSON) и одна из самых заметных по эффекту. Google Rich Results поддерживает её на всех сайтах без исключений — в отличие, скажем, от FAQ, которое отфильтровано до узких категорий. Официальные требования — Google Search Central: Breadcrumb.

Пример JSON-LD

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "BreadcrumbList",
  "itemListElement": [
    {
      "@type": "ListItem",
      "position": 1,
      "name": "Блог",
      "item": "https://example.com/blog"
    },
    {
      "@type": "ListItem",
      "position": 2,
      "name": "JavaScript",
      "item": "https://example.com/blog/javascript"
    },
    {
      "@type": "ListItem",
      "position": 3,
      "name": "TypeScript в 2026: не «стоит ли»..."
    }
  ]
}
</script>

Каждая «крошка» — отдельный ListItem в массиве itemListElement. Порядок в массиве и значение position должны совпадать — ошибка часто в этом.

Обязательные свойства

  • itemListElement — массив ListItem-объектов, каждый со своим:
    • position — номер (1, 2, 3…), начинается с 1
    • name — текст крошки, как показывать в SERP
    • item — URL. Обязательно для всех крошек, кроме последней (последняя — текущая страница, ссылка не нужна). Если item не указан у не-последней крошки, вся BreadcrumbList не сработает.

Множественные пути

Иногда к одной странице ведут несколько путей — например, товар доступен через каталог по категории и через каталог по бренду. Google это поддерживает: можно указать несколько BreadcrumbList на одной странице:

<script type="application/ld+json">
[
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "Каталог", "item": "https://shop.com/catalog" },
      { "@type": "ListItem", "position": 2, "name": "Наушники", "item": "https://shop.com/catalog/headphones" },
      { "@type": "ListItem", "position": 3, "name": "MX-Pro" }
    ]
  },
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
      { "@type": "ListItem", "position": 1, "name": "Бренды", "item": "https://shop.com/brands" },
      { "@type": "ListItem", "position": 2, "name": "AudioPro", "item": "https://shop.com/brands/audiopro" },
      { "@type": "ListItem", "position": 3, "name": "MX-Pro" }
    ]
  }
]
</script>

Google выберет одну из BreadcrumbList для показа в SERP — обычно ту, что больше соответствует запросу пользователя. Обе присутствуют в разметке.

Что попадает в SERP

Единственный, но важный эффект — в SERP URL заменяется на путь-хлебные крошки. Работает и на десктопе, и на мобильных. Влияет на CTR положительно (по разным замерам — +10-30%).

Дополнительно, breadcrumb-разметка помогает Google понять структуру сайта — какая страница относится к какому разделу. Это косвенно влияет на sitelinks (расширенные ссылки к домену в SERP), связывание страниц в кластеры темы, распределение authority.

Типовые ошибки

  • Позиции не соответствуют порядку. Первая крошка должна иметь position: 1, вторая — 2 и т. д. Часто путают, начинают с 0 или пропускают.
  • URL у последней крошки. Последняя крошка (текущая страница) не должна иметь item. Наличие URL здесь — ошибка в разметке.
  • Относительный URL. В item должен быть абсолютный URL с https://, не относительный /blog/javascript.
  • Разные name и текст на странице. Если в разметке написано «Блог», а в HTML-хлебных крошках «Наш блог» — Google может пометить как inconsistency. Лучше держать одинаково.
  • Только один элемент. BreadcrumbList из одной крошки не имеет смысла — Google игнорирует.

Совет по внедрению

BreadcrumbList — обычно самая простая схема для внедрения. У большинства сайтов уже есть логика хлебных крошек на бэкенде (для отображения HTML), просто из тех же данных генерируется JSON-LD-блок в <head>. Одна общая функция, применяется на всех страницах сайта. Выигрыш в CTR устойчивый и заметный.