Зачем эта статья
Большинство «дешёвых» сайтов в 2026 году делаются без SEO-оптимизации. Это значит, что после запуска такой сайт не индексируется в Яндексе и Google — а значит, без платной рекламы у него нет посетителей. Этот чек-лист даёт минимум, который ОБЯЗАН быть на любом современном сайте.
Прохожу по нему сам перед каждым запуском. Если ваш разработчик его не покрывает — вы платите за красивую картинку, которую никто не найдёт.
Часть 1. Контент в HTML (критично)
✅ Контент рендерится на сервере (SSR/SSG)
Откройте view-source: ваш сайт в браузере. Если вы видите <div id="root"></div> и больше ничего — это CSR-сайт (React/Vue без SSR). Поисковые боты видят то же самое: пустую страницу.
Решение в 2026 году:
- Astro — для контентных сайтов и лендингов
- Next.js — для приложений с динамикой
- Nuxt (Vue) — для тех, кто на Vue
Худший вариант — Create React App, Vite + React без SSR-обёртки. На таких сайтах SEO почти не работает. Яндекс рендерит JS медленно и неполно.
✅ Один корректный H1
На странице должен быть ровно один <h1> с ключевым словом. Не два, не ноль. Заголовок второго уровня — <h2>, и так далее по иерархии.
Проверка: откройте DevTools → Elements → Ctrl/Cmd+F → искать <h1. Должно быть одно вхождение.
✅ Семантическая разметка
Используйте <header>, <main>, <article>, <section>, <nav>, <footer> вместо <div class="...">. Это даёт поисковикам структурное понимание контента.
Часть 2. Метаданные
✅ Уникальный title на каждой странице
<title>Конкретный заголовок страницы — Бренд</title>
Длина 50–60 символов. Включает ключ. На главной + сервисных страницах + блоге — везде разный.
✅ Meta description
<meta name="description" content="..." />
120–160 символов. Конкретный, с ключом, мотивирующий клик из поисковой выдачи.
✅ Canonical URL
<link rel="canonical" href="https://example.com/page" />
Защищает от дублей. Обязателен на каждой странице.
✅ Open Graph + Twitter Card
Для соцсетей при шаринге:
<meta property="og:title" content="..." />
<meta property="og:description" content="..." />
<meta property="og:image" content="https://example.com/og-image.png" />
<meta name="twitter:card" content="summary_large_image" />
OG-картинка — 1200×630 px. Можно генерировать автоматически на сборке.
Часть 3. Структурированные данные (JSON-LD)
Это критично для Яндекса в 2026 году — расширенные сниппеты в выдаче дают +30–50% к CTR.
✅ Organization / ProfessionalService
На главной странице:
{
"@context": "https://schema.org",
"@type": "ProfessionalService",
"name": "...",
"url": "...",
"image": "...",
"description": "...",
"founder": { "@type": "Person", "name": "..." }
}
✅ Service на каждой странице услуги
Со списком цен (Offer), описанием, провайдером.
✅ FAQPage если есть FAQ
Любая страница с FAQ должна иметь JSON-LD FAQPage — Яндекс показывает вопросы прямо в выдаче.
✅ BreadcrumbList на внутренних страницах
{
"@type": "BreadcrumbList",
"itemListElement": [
{ "@type": "ListItem", "position": 1, "name": "Главная", "item": "..." },
{ "@type": "ListItem", "position": 2, "name": "Услуги", "item": "..." }
]
}
✅ Article на статьях блога
С datePublished, author, image, headline.
Проверить разметку: Yandex Validator и Google Rich Results Test.
Часть 4. Производительность (Core Web Vitals)
Яндекс и Google оба ранжируют по скорости. Цель — Lighthouse 95+ на всех показателях.
✅ LCP < 2.5 секунд
Largest Contentful Paint — самый большой элемент должен появиться быстро. Главный приём — preload критичных ресурсов и lazy-load всего остального.
✅ CLS < 0.1
Cumulative Layout Shift — страница не должна «прыгать» при загрузке. Указывайте width и height у изображений, размеры у iframe.
✅ INP < 200 мс
Interaction to Next Paint (заменил FID в 2024) — отзывчивость на взаимодействие. Не блокируйте main thread тяжёлым JS.
Что обычно ломает скорость
- Огромные картинки без оптимизации (3 МБ JPEG там, где должен быть 100 КБ WebP)
- Шрифты без
font-display: swapи без preconnect - Аналитики (GTM, Hotjar, чат-боты) загружаются синхронно
- 3D и тяжёлый JS в initial bundle вместо
client:idle
Часть 5. Индексация
✅ Sitemap.xml
Автоматически генерируется на сборке. Должен включать все индексируемые страницы. Для двуязычных сайтов — отдельные sitemap-ru.xml и sitemap-en.xml или один с hreflang.
✅ Robots.txt
User-agent: *
Allow: /
Disallow: /admin
Disallow: /api
User-agent: Yandex
Allow: /
Clean-param: utm_source&utm_medium&utm_campaign
Sitemap: https://example.com/sitemap-index.xml
Clean-param для Яндекса — обязательно, иначе UTM-метки создают дубли.
✅ Подтверждение прав в Я.Вебмастере и Search Console
Через мета-тег или HTML-файл. Без этого вы не увидите статистики и ошибок индексации.
✅ Hreflang для двуязычных сайтов
<link rel="alternate" hreflang="ru" href="https://example.com/" />
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />
Часть 6. Аналитика и отслеживание
✅ Яндекс.Метрика с Вебвизором
Без неё не видно поведения посетителей. Вебвизор записывает сессии — критично для понимания, где люди отваливаются.
✅ Цели (events) в Метрике
Минимум: отправка формы, клик по телефону, скачивание прайса, добавление в корзину. Без целей конверсии не считаются.
✅ Google Analytics 4 (опционально)
Если есть международная аудитория или нужна точная атрибуция платных каналов.
Финальный чек
Перед запуском прогоните сайт через:
- PageSpeed Insights (mobile + desktop) — должно быть 90+
- Yandex Webmaster → Анализ страниц
- Yandex Validator микроразметки
- Google Rich Results Test
- Screaming Frog (или аналог) на полную индексацию
Если хоть один пункт ниже 90 баллов или показывает ошибки — это техдолг, который будет тормозить ваш сайт в выдаче.
Это база. Если ваш разработчик после запуска не показал результаты по этим пунктам — возможно, стоит запросить аудит. Я делаю такие бесплатно, за 24 часа дам понимание, что у вас в порядке, а что нет.