SEO для розробників: HTML, який читають роботи, правильні коди HTTP, ключові теги в head, проходження Core Web Vitals і видимість для ШІ.

Коротко
для розробника SEO означає зробити кожну важливу сторінку доступною, придатною до відтворення й однозначною для роботів. Віддавайте основний контент у початковому HTML (серверний рендеринг або статична генерація), повертайте чесні коди HTTP, розміщуйте title, meta description, canonical і директиви robots у відповіді сервера, ставте посилання справжніми елементами <a href>, вкладайтеся в пороги Core Web Vitals і додавайте структуровані дані JSON-LD. Більшість роботів ШІ не виконують JavaScript: контент, що з'являється лише після гідратації, невидимий для ChatGPT, Claude і Perplexity.
Хочете дізнатися більше? Запитайте
Швидкий тест
Чи підходить вам SEO і з чого почати?
4 короткі питання, щоб зрозуміти, чи може Google приводити вам клієнтів.
Наша порада для вас
Sorank підходить вам найкраще
Люди шукають те, що ви продаєте, і ви можете зачекати кілька місяців: Sorank знаходить потрібні запити, пише й публікує статті та отримує для вас посилання.
Sorank відповідає вашим відповідям
Спробуйте його 3 дні на власному сайті або почніть з безкоштовного аудиту, щоб побачити, де ви зараз.
3 дні безкоштовно, потім зупиніть, коли захочете. Гарантія повернення коштів протягом 90 днів.
SEO для розробників охоплює ту частину оптимізації, що живе в коді: шаблони, маршрутизацію, рендеринг, заголовки та продуктивність. Маркетинг обирає ключові слова й пише тексти, але хибний код стану, маршрут лише на клієнті чи забутий noindex можуть перекреслити цю роботу одним деплоєм. Основи SEO для JavaScript від Google описують три етапи (сканування, відтворення, індексування), і на кожному є збої, які можуть виправити лише розробники. Цей посібник розбирає їх у тому порядку, в якому вони ламаються.
| Сфера | Відповідальність розробника | Типовий симптом збою |
|---|---|---|
| Рендеринг | Основний контент і посилання в HTML від сервера | Сторінки проіндексовано порожніми або неповними |
| Коди стану | 200, 301, 404, 410, 5xx віддаються чесно | Soft 404, проіндексовані сторінки помилок, видалені сторінки досі у видачі |
| Теги в head | Унікальні title, description, canonical, robots, hreflang | Дублікати, у видачі не той URL, сторінок немає в індексі |
| Керування скануванням | robots.txt, XML-карта сайту, внутрішні посилання, параметри | Важливі сторінки не знайдено, сканування витрачається на фільтри |
| Продуктивність | Core Web Vitals у реальних мобільних користувачів | Погана зручність сторінки, менше конверсій |
| Структуровані дані | Валідний JSON-LD, що збігається з видимим контентом | Немає розширених результатів, плутанина із сутністю |
| Доступ ШІ | Дозволені роботи ШІ, контент читається без JavaScript | Бренду немає у відповідях ChatGPT і Perplexity |
Googlebot виконує JavaScript, але на другому етапі, який може відкладатися, і сама Google пише, що серверний рендеринг або попередній рендеринг досі чудова ідея: це швидше для користувачів і роботів, а JavaScript виконують не всі боти. Останній пункт сьогодні важливіший, ніж будь-коли: в аналізі The rise of the AI crawler від грудня 2024 року Vercel встановив, що жоден із великих роботів ШІ наразі не виконує JavaScript, і назвав серед інших GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot і PerplexityBot. Виняток становить Gemini, що працює на інфраструктурі Google.
| Режим рендерингу | Що отримують роботи | Придатність для SEO |
|---|---|---|
| Клієнтський рендеринг (CSR) | Майже порожній HTML-каркас, контент після виконання JavaScript | Слабка: із затримкою для Google, невидимий для більшості роботів ШІ |
| Серверний рендеринг (SSR) | Повний HTML на кожен запит | Висока для динамічних сторінок |
| Статична генерація (SSG) | Повний HTML, зібраний під час деплою | Найкраща для контенту, що рідко змінюється |
| Інкрементальна регенерація (ISR) | Статичний HTML, що оновлюється за розкладом або на запит | Висока для великих каталогів і блогів |
Два правила діють для будь-якого фреймворку. Посилання мають бути елементами <a> з атрибутом href: Google зазначає, що знаходить посилання лише в такому вигляді, тож кнопки з обробниками кліків і маршрути на фрагментах ведуть у глухий кут. І кожен маршрут потребує власного URL без #, який одразу віддає свій контент. Наші посібники з SEO для JavaScript, SEO односторінкових застосунків і SEO для Next.js розбирають деталі фреймворків.
Коди стану є інструкціями для роботів. Документація Google про коди стану HTTP і мережеві помилки описує обробку кожної групи:
Перевірте, що насправді віддає ваш сервер, за допомогою перевірки HTTP-заголовків і скорочуйте ланцюжки переспрямувань до одного кроку: наша стаття про SEO-редиректи розбирає сценарії міграції.
Кожній індексованій сторінці потрібні унікальні title і description, canonical на саму себе, а на багатомовних сайтах ще й розмітка hreflang. Тримайте все це у відповіді сервера:
<title>Running shoes for flat feet | Example</title>
<meta name="description" content="Tested picks, sizes and prices.">
<link rel="canonical" href="https://example.com/running-shoes-flat-feet">
<link rel="alternate" hreflang="fr" href="https://example.com/fr/chaussures-pieds-plats">
<meta name="robots" content="index, follow">Тег canonical має вказувати на URL, який ви хочете бачити у видачі, саме з тим протоколом, хостом і правилом кінцевої скісної риски, які використовує сайт.
Увага
Ніколи не покладайтеся на JavaScript для видалення noindex. Google зазначає, що, виявивши тег noindex, може пропустити відтворення: сторінка, віддана з noindex у HTML, яка знімає його на клієнті, може залишитися поза індексом.
Пошукові системи індексують URL, тому їхня схема є рішенням SEO. Використовуйте зрозумілі шляхи в нижньому регістрі через дефіс, оберіть одне правило кінцевої скісної риски й переспрямовуйте другий варіант, тримайте один URL на одну одиницю контенту. Фільтри, сортування й параметри відстеження множать URL без нового контенту: спрямовуйте їхній canonical на чисту версію і не ставте посилань на комбінації параметрів, які не хочете віддавати на сканування.
Внутрішні посилання відповідають і за виявлення, і за вагу сторінок. Рендерте на сервері навігацію, хлібні крихти й блоки пов'язаного контенту, давайте посторінковим спискам звичайні посилання на кожну сторінку та уникайте нескінченного прокручування без посторінкових URL. Товар чи стаття, доступні лише через внутрішній пошук або JavaScript-фільтр, для робота залишаються сторінкою-сиротою.
robots.txt керує скануванням, а не індексуванням: заблокований URL усе одно може потрапити у видачу, якщо на нього посилаються інші сторінки. Щоб виключити сторінку з індексу, дозвольте її сканування й віддавайте noindex. Генеруйте XML-карту сайту з маршрутів або бази даних, додавайте лише канонічні URL з кодом 200 і змінюйте lastmod лише за реальної зміни контенту. Перевіряйте правила за допомогою перевірки robots.txt перед кожним релізом і ніколи не викладайте в продакшен тестовий robots.txt з "Disallow: /".
Google використовує Core Web Vitals як частину сигналів зручності сторінки. За даними web.dev, сторінка вважається доброю, коли досягає цих порогів на 75-му процентилі реальних завантажень, на мобільних і десктопі:
| Метрика | Що вимірює | Добрий поріг | Типові виправлення з боку розробки |
|---|---|---|---|
| LCP (Largest Contentful Paint) | Завантаження | 2,5 с або менше | Попереднє завантаження головного зображення, серверний рендеринг першого екрана, CDN |
| INP (Interaction to Next Paint) | Чутливість | 200 мс або менше | Розбиття довгих завдань, відкладені сторонні скрипти, легша гідратація |
| CLS (Cumulative Layout Shift) | Візуальну стабільність | 0,1 або менше | Ширина й висота для медіа, зарезервоване місце під рекламу та вбудовування |
INP замінив First Input Delay як стабільну метрику Core Web Vitals у 2024 році. Оцінюйте за польовими даними (Search Console, Chrome UX Report), а налагоджуйте лабораторними інструментами. Наша стаття глосарію про Core Web Vitals перелічує інструменти.
Використовуйте JSON-LD у тезі script, відрендерений на сервері, що описує видиме на сторінці:
<script type="application/ld+json">
{"@context": "https://schema.org", "@type": "Article",
"headline": "Running shoes for flat feet",
"datePublished": "2026-10-01",
"author": {"@type": "Person", "name": "Jane Doe"}}
</script>Генеруйте його з тих самих даних, що й сторінку, щоб вони ніколи не розходилися, перевіряйте в CI і не впроваджуйте через менеджер тегів. Генератор schema дає стартовий шаблон для поширених типів.
Порада
Додайте SEO-перевірки в пайплайн: хай збірка падає, якщо в індексованого шаблону немає title чи canonical, якщо маршрут віддає 200 для невідомого slug або якщо робочий robots.txt містить "Disallow: /". Такі регресії дешево спіймати до деплою і дорого після.
Видимість у ШІ починається з доступу. Вирішіть, яким роботам ШІ ви відкриваєте сайт (GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot та інші), і пропишіть явні правила в robots.txt; наш посібник із robots.txt для роботів ШІ пояснює різницю між ботами для навчання і для пошуку. Потім переконайтеся, що тексти, ціни, характеристики та FAQ є в початковому HTML, використовуйте семантичні заголовки й таблиці замість тексту на зображеннях і тримайте сторінки достатньо легкими для швидкого завантаження. Файл llms.txt може стисло описати ключові сторінки для ШІ-інструментів, але жоден великий асистент не підтвердив, що використовує його: вважайте його необов'язковим.
Sorank є нашим продуктом. Це програма для SEO та GEO, що працює на autopilot. Розробники стикаються з нею здебільшого через інтеграції: вона публікує статті у WordPress, Shopify, Webflow чи Wix або в будь-який власний стек через вебхук, як описано на сторінці встановлення. SEO Chat відповідає на запитання про ваш сайт у форматі діалогу, а відстеження згадок у ШІ щотижня перевіряє, чи називають ChatGPT, Claude і Gemini ваш бренд.

Стисло: віддавайте із сервера повний HTML, чесні коди стану та правильні теги, а потім вимірюйте продуктивність на реальних користувачах. Це працює і для Googlebot, і для роботів ШІ, які не виконують JavaScript. Щоб наповнити добре збудований сайт контентом, що ранжується, перегляньте тарифи Sorank: від $49 на місяць і 3 дні безкоштовного пробного періоду.
Для Google, який виконує JavaScript, не завжди, але він додає затримку й ризик, а більшість роботів ШІ JavaScript узагалі не виконують. Для сторінок, які мають ранжуватися чи цитуватися, віддавайте основний контент і посилання в початковому HTML через серверний рендеринг, статичну генерацію або попередній рендеринг, а клієнтський рендеринг залиште для інтерактивних частин.
Обидва коди повідомляють Google, що сторінки більше немає, і в обох випадках Google із часом перестає використовувати URL. Код 410 вказує на навмисне й остаточне видалення, що деякі команди віддають перевагу для свідомо видаленого контенту. Головне не віддавати 200 з повідомленням про помилку, бо це створює soft 404.
Вони входять до сигналів зручності сторінки, які Google називає одним із багатьох чинників, причому релевантність і якість контенту важать більше. Найчастіше вони вирішують суперечку між схожими сторінками і сильно впливають на конверсію, тож досягти порогів варто.
ВОНИ ПРОБУВАЛИ SORANK ДО ВАС
