+247%+185%📈📊
  • Технічне SEO · Серверний рендеринг
  • Вимір 31.07.2026

Сайт на JavaScript: щоб пошуковик бачив те саме, що людина

Індексація сайту на JavaScript ламається в одному місці: бот забирає першу відповідь сервера, а контенту в ній ще немає — його збере браузер уже на пристрої. Далі адреса стає в чергу на виконання сценаріїв, і поки вона там стоїть, сторінки у видачі немає. Ми знімаємо два документи — той, що приходить пошуковому агенту, і той, що приходить браузеру, — і зводимо їх до однакового змісту. Спосіб обираємо після заміру, а не до нього: пререндер, попередня генерація і серверний рендеринг різняться за вартістю супроводу в рази.

Подивитись, як це працює
Вартість
після безкоштовного аудиту
Гарантія
30 днів після підписання акта
З чого починаємо
порівняння відповіді для пошукового агента з відповіддю для браузера на кожному типі сторінки
після безкоштовного аудиту
Вартість
30
Гарантія

днів після підписання акта

порівняння відповіді для пошукового агента з відповіддю для браузера на кожному типі сторінки
З чого починаємо
оболонка 3,0 КБ браузеру проти зібраного документа 126 КБ боту, сайт клініки, вимір 31.07.2026
Виміряний розрив
10–30
Строк робіт

робочих днів залежно від обраного способу віддачі

безкоштовна перевірка того, що отримує бот, 2–3 робочих дні
Перед кошторисом
боту й людині йде однаковий за змістом контент — інакше це вже ризик санкцій
Жорстка умова
згадок у відповідях AI-асистентів: правил відбору не публікує жоден вендор
Чого не обіцяємо
Кому підходить

Ситуації, у яких ця послуга дає результат

Ситуація 1 з 5

Сайт відкривається нормально, а в пошуку його майже немає

Класичний розклад для інтерфейсу-застосунку. Людина заходить і бачить каталог, бот заходить і бачить порожній контейнер із підключеним скриптом. У Search Console такі адреси зазвичай лежать у статусі «просканована, наразі не проіндексована» — і це не покарання, а просто відсутність тексту, який можна було б проіндексувати.

Розберемо вашу ситуацію на безкоштовному аудиті
Кейси

Задачі та результат у цифрах — усі показники зняті нашим виміром

клініка пластичної хірургії та естетичної медицини

Задача
Інтерфейс зроблений як застосунок на JavaScript. Треба було, щоб пошуковик і агенти асистентів отримували сторінку з текстом, а не порожню оболонку.
Рішення
Пошуковим агентам віддається повністю зібраний документ; медична розмітка, дані лікаря й хлібні крихти лежать у первинній відповіді; політика для AI-кравлерів винесена в окремі файли.
Результат
Браузер отримує оболонку 3,0 КБ без заголовка й опису за 198 мс, пошуковий бот — зібраний документ 126 КБ (24 КБ у стисненому вигляді) за 145 мс до першого байта і 178 мс до повного документа; сторінка «про нас» — 86 КБ. Карта сайту на 89 адрес, 10 типів структурованих даних, серед них MedicalClinic, Physician і BreadcrumbList. llms.txt на 22 810 байт, robots.txt закриває тренувальні агенти й пускає ті, що ведуть живий трафік. Знайдений дефект: вбудований сніпет диспетчера тегів самоблокується — умова виходу порівнює ідентифікатор сам із собою, тож контейнер не вантажиться взагалі, і аналітики на сайті фактично немає. Розбіжність: у портфоліо заявлено Next.js, за фактом React і Vite. Вимір 31.07.2026.

український виробник негорючих стінових панелей

Задача
Зробити так, щоб характеристики продукції знаходились у пошуку без дзвінка менеджеру.
Рішення
Сайт віддає готовий документ із сервера; дані про організацію, адресу, кількісні характеристики й пошуковий сценарій присутні в первинній відповіді.
Результат
164 адреси в карті сайту, 164 унікальні — жодного дубля. Перша відповідь 244 мс на головній і 208 мс у каталозі продукції, повний документ за 429 мс при вазі 528 КБ. 8 типів структурованих даних: Organization, PostalAddress, Country, QuantitativeValue, SearchAction, WebSite, ImageObject, EntryPoint. robots.txt лишає відкритим каталог і закриває службові розділи /api/, /admin/, /_next/. Заявлений у портфоліо стек збігається з фактичним — у нашій вибірці це радше виняток. Вимір 01.08.2026.
Що входить

Повний перелік робіт і того, що ви отримуєте на виході

  • Знімаємо дві відповіді на кожному типі сторінки — для пошукового агента й для браузера — і показуємо різницю в байтах і в змісті: далі розмова йде по документу, а не по відчуттях
  • Обираємо спосіб віддачі готового документа під ваш застосунок і називаємо, що кожен коштує не тільки на впровадженні, а й у супроводі
  • Переносимо назву сторінки, опис і канонічну адресу в первинну відповідь — сніпет у видачі складається з вашого тексту, а не з випадкового уривка
  • Віддаємо структуровані дані просто в розмітці: вставлені скриптом доходять до пошуковика не завжди
  • Перетворюємо навігацію на звичайні посилання — бот отримує шлях углиб каталогу без виконання жодного сценарію
  • Звіряємо зміст двох відповідей рядок у рядок: саме цей пункт тримає роботу в безпечній зоні
  • Міряємо час до готового документа для бота після впровадження й фіксуємо цифру письмово
  • Розділяємо в robots.txt агентів, що ведуть живий трафік, і тих, що збирають дані на тренування — рішення ваше, реалізація наша
  • Складаємо llms.txt як стислу карту контенту для асистентів: у виміряному нами сайті клініки цей файл важить 22 810 байт
  • Ставимо ключові адреси на перевірку в Search Console і 30 днів дивимось звіт індексації
Коли ця послуга не підходить

Що не входить у роботу — щоб не було сюрпризів на здачі

  • Переписування фронтенду на інший фреймворк
  • Розробка нового інтерфейсу
  • Обіцянки щодо згадок у відповідях AI-асистентів
  • Робота з контентом і текстами
Як проходить робота

Прозорі етапи з погодженням на кожному кроці

Загальний строк:10–30 днів

  1. Замір поточного стану

    2–3 робочих дні

    Запитуємо ключові адреси різними агентами й кладемо відповіді поруч: розмір, наявність заголовка й опису, структуровані дані, посилання. На виході — документ із двома колонками, де видно, чого боту не дістається.

  2. Вибір способу й межі роботи

    1–2 робочих дні

    Фіксуємо перелік сторінок, які справді мають бути в пошуку, і спосіб віддачі під них. Тут же ухвалюється рішення щодо AI-агентів: кого пускати, кого обмежити. Це позиція бізнесу, ми лише показуємо наслідки кожного варіанта.

  3. Впровадження віддачі готового документа

    5–15 робочих днів

    Пререндер за агентом або серверний рендеринг маршрутів. Починаємо з одного типу сторінки на тестовому контурі й рухаємось далі лише тоді, коли на ньому відповідь для бота збігається за змістом із браузерною.

  4. Метатеги, розмітка й посилання

    2–5 робочих днів

    Назва, опис, канонічна адреса і структуровані дані переїжджають у первинну відповідь, навігація отримує звичайні посилання. Орієнтир із нашого виміру: у сайті виробника панелей у первинній відповіді лежить 8 типів структурованих даних.

  5. Звірка змісту й заміри

    1–3 робочих дні

    Порівнюємо рядок у рядок, що бачить бот і що людина: розбіжність у змісті — це вже не оптимізація, а ризик. Міряємо час до першого байта й до повного документа для бота, цифри лишаються у вас письмово.

  6. Спостереження за індексацією

    30 календарних днів

    Ключові адреси йдуть на перевірку в Search Console, далі дивимось звіт: скільки сторінок змінило статус і як швидко. Місяць — це не запас часу, це період, за який звіт узагалі встигає зреагувати.

Безкоштовна перевірка того, що отримує бот замість вашої сторінки

Перевірка проста й наочна: ми запитуємо ваші сторінки так, як це робить пошуковик, і порівнюємо відповідь із тим, що бачить браузер. Різниця між цими двома документами і є розмір проблеми.

Що міряємо

  • Розмір відповіді для бота проти браузераСкільки байтів отримує кожен. Ми міряли сайт, де браузеру приходила оболонка на 3,0 КБ, а пошуковому боту — повністю зібраний документ на 126 КБ.
  • Наявність контенту в первинній відповідіЧи є в ній заголовок, опис, тексти й посилання — чи все це збирається вже на пристрої.
  • Метатеги й розміткаЧи потрапляють у первинну відповідь назва сторінки, опис і структуровані дані. Розмітка, вставлена скриптом, доходить не завжди.
  • Внутрішні посиланняЧи існують вони в розмітці як звичайні посилання. Навігація, побудована на обробниках подій, для бота не існує.
  • Поведінка для AI-агентівАсистенти здебільшого не виконують сценарії на сторінці. Якщо контент збирається на пристрої, для них сайт порожній.
  • Час до готового документаЗа скільки бот отримує повну відповідь. У виміряному випадку це 145 мс до першого байта і 178 мс до повного документа — тобто пререндер може бути й швидким.

Що ви отримуєте на руки

  • Порівняння двох відповідей — для бота й для браузера — з розмірами й вмістом.
  • Перелік того, що не доходить до пошуковика зараз.
  • Варіанти рішення з поясненням, що кожен коштує в підтримці, а не лише на впровадженні.
  • Розмова на 30–40 хвилин по документу.

Строк: 2–3 робочих дні

Чому це безкоштовно

Бо перевірка займає години, а різниця у вартості рішень кратна. Продавати серверний рендеринг там, де достатньо пререндеру, ми не хочемо.

Що далі

Далі — оцінка обраного варіанта по етапах. Один із варіантів завжди «нічого не робити»: якщо бот уже отримує повний документ, роботи немає.

Форма коротка: контакт і адреса сайту

Працюємо офіційно

Договір, акт і рахунок — на кожен проєкт, а не тільки на великий. Без документів у вас немає ні прав на роботу, ні підстави провести витрати.

  • Договір, акт і гарантія 30 днів

    На кожен проєкт письмовий договір: обсяг, строки, сума, порядок приймання. Після здачі — акт і рахунок, а далі 30 календарних днів гарантії: помилки з нашої вини усуваємо безоплатно. Усне з дзвінка дублюємо письмово того ж дня — домовленість, якої немає в тексті, не рахується.

  • ФОП і безготівковий розрахунок

    Виконавець — зареєстрований ФОП. Оплата на рахунок із закривними документами, які бухгалтерія проведе як витрати. Курс для гривневої оплати фіксується договором, а не з’ясовується постфактум.

  • Права й доступи — ваші

    Код, дизайн і матеріали переходять до вас після повної оплати. Домен, хостинг, репозиторій, аналітику й рекламні кабінети оформлюємо на вас — щоб сайт не залежав від підрядника. NDA підписуємо на запит, після завершення свої доступи видаляємо самі.

  • Портал клієнта замість переписки

    На час роботи ви отримуєте доступ до порталу: договори, рахунки, акти й стан проєкту в одному місці. Документи формуються з даних угоди, тому реквізити й суми в них не розходяться, а про оплати й дедлайни нагадує система, а не пам’ять менеджера.

  • Замовники з Європи

    Серед робіт — проєкти для Норвегії, Болгарії та Іспанії: болгарський магазин трьома мовами з кур’єрською доставкою, іспанський з оплатою карткою й переказом, норвезький сайт клініки. Це видно в портфоліо, а не тільки в описі.

  • Цифри, які можна перевірити

    Кожен кейс у портфоліо — з посиланням на живий сайт і технічним виміром: швидкість відповіді, вага сторінки, обсяг каталогу, знайдені дефекти. Ці цифри можна зняти самому й звірити з нашими.

  • Спершу аудит, потім сума

    Прайсу на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» нічого не пояснює. Спершу безкоштовний розбір — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.

  • Кажемо «ні», коли не впевнені

    Якщо задача не наша, строк нереальний або послуга вам просто не потрібна — скажемо це першим листом, а не після передоплати. Гарантій позицій у пошуку не даємо: їх не дає ніхто, а обіцянка без механізму — це продаж, а не робота.

NDA підписуємо на запит. Після завершення співпраці наші доступи до ваших сервісів видаляємо самі й повідомляємо про це.

Не знайшли свій випадок?

Опишіть, як це влаштовано у вас, — відповімо, чи підходить «JS-рендеринг для пошуку» і що це означає у вашій ситуації. Без брифу й без дзвінка: одне питання, одна відповідь.

Що впливає на вартість

Чому дві однакові на вигляд задачі рахуються по-різному — і що саме ми міряємо на аудиті

  • Який спосіб віддачі підходить саме вамПререндер лягає поверх наявного застосунку й чіпає лише шар віддачі. Перехід на серверний рендеринг переписує маршрути й роботу з даними. Різниця між цими двома варіантами вимірюється не відсотками.
  • Скільки типів сторінок мають бути в пошукуГоловна, категорія, картка, стаття — кожен тип розбирається окремо: свої дані, свої метатеги, своя розмітка. Двадцять маршрутів у застосунку не означають двадцять типів; зазвичай їх чотири-шість, і саме це число рухає кошторис.
  • Звідки береться контент сторінкиОдин запит до вашого ж API — готовий документ збирається просто. Три джерела, частина з яких відповідає лише після дії користувача, — кожне доводиться розбирати окремо, і саме тут строк починає рости.
  • Хто веде фронтендЄ розробник, який знає застосунок, — ми віддаємо правки й перевіряємо результат. Немає — входимо в чужий код, і перший тиждень іде на те, щоб зрозуміти, як він збирається.
  • Чи потрібен нагляд за шаром віддачіПререндер ламається тихо: віддає стару сторінку без жодної помилки, і помічають це через місяці. Моніторинг цього шару ми виносимо окремим рядком, а не ховаємо в «супровід».
Технології та інтеграції

На чому будуємо і з чим це з’єднується

Стек

  • Серверний рендеринг — найчистіший варіант: документ збирається на сервері. Ціна питання — навантаження, якого раніше не було, і потреба в кеші
  • Попередня генерація на збірці — найшвидша віддача, але кожна зміна тексту вимагає перезбірки. Каталогу, що змінюється щогодини, не підходить
  • Пререндер за агентом — стає поверх готового застосунку за дні. Це окремий шар, і ламається він тихо: віддає стару сторінку без жодної помилки
  • Next.js — тримає всі три режими на рівні маршруту. Але переїзд на нього з Vite — це переїзд застосунку, а не налаштування
  • Search Console, перевірка URL — єдине місце, де видно, що Google справді отримав. Показує одну адресу за раз і з відкладенням
  • llms.txt і robots.txt — керують доступом агентів. Сила в них лише над тими, хто їх поважає: механізму примусу тут немає

Інтеграції

  • Google Search Console
  • Bing Webmaster Tools
  • GA4
  • Cloudflare
Готовий документ проти надії на чергу рендерингу

Чим цей варіант відрізняється від «Лишити як є: Google сам виконає сценарії»

Коли контент стає видимим ботуу першій же відповіді сервера
Інші читачі вашого контентуBing, асистенти й агенти отримують те саме, що Google
Що видно з браузерарізниця зафіксована в документі з двома колонками
Ціна рішеннявпровадження плюс шар, який доведеться супроводжувати
Що потрібно від вас

Без цього не почнемо — краще підготувати заздалегідь

  1. Адресу сайту й дві-три сторінки, які для вас найважливіші: з них починається замір.
  2. Доступ до коду фронтенду або до розробника, який його супроводжує.
  3. Розуміння, які екрани мають бути в пошуку: не всі маршрути застосунку туди потрібні, і зайві краще відсікти на старті.
  4. Доступ до Search Console — без нього ми бачимо свій замір, але не бачимо, що з цим зробив Google.
  5. Рішення щодо AI-кравлерів: пускати, обмежувати чи закривати. Це позиція бізнесу, а не техніки, і ухвалити її має людина з вашого боку.

Якщо чогось із цього немає — скажіть, підкажемо, як зібрати або зробимо самі окремою задачею.

Часті питання

Те, що питають найчастіше — з конкретними відповідями

Google же виконує JavaScript — навіщо тоді все це?

Виконує, але у два проходи. Перший забирає розмітку, другий ставить адресу в чергу на виконання сценаріїв, і строк цієї черги не публікується. На сайті з десятка сторінок різницю ви не помітите; на кількох тисячах вона перетворюється на місяці, протягом яких частина каталогу просто не існує для видачі. Друга частина відповіді важливіша: Google — не єдиний читач. Bing, агенти асистентів, парсери маркетплейсів і сервіси, які будують попередній перегляд посилання в месенджері, здебільшого сценарії не виконують узагалі.

пререндер для ботів — це не приховування контенту?

Ні, поки боту й людині йде однаковий за змістом документ. Порушенням є показ ботові одного тексту, а відвідувачу — іншого; форма подачі при цьому може відрізнятись, і це нормально. Тому в наших етапах є окремий пункт звірки: ми порівнюємо два документи рядок у рядок і письмово фіксуємо, що вони збігаються. Якщо у вас є бажання підсунути боту додаткові ключові слова, яких людина не побачить, — це не до нас, і не тому, що ми обережні, а тому, що прилітає за це саме вам.

що вибрати: серверний рендеринг чи пререндер для ботів?

Залежить від застосунку й від того, скільки ви готові платити за супровід. Серверний рендеринг чистіший: документ збирається на сервері для всіх однаково, окремого шару немає. Але він зачіпає маршрути й роботу з даними, і сервер починає нести навантаження, якого раніше не було. Пререндер ставиться поверх готового застосунку за дні й коштує менше — ціна в тому, що це додатковий шар, який ламається без жодного повідомлення: сторінка віддається стара, помилки немає, помічають через місяць. Ми називаємо обидві цифри, впровадження й нагляд, і рішення лишається у вас.

як зрозуміти, що проблема саме в рендерингу?

Запитати сторінку двічі — як браузер і як пошуковий агент — і покласти відповіді поруч. У виміряному нами сайті клініки браузер отримує оболонку на 3,0 КБ, у якій немає ні заголовка, ні опису, а пошуковий бот — зібраний документ на 126 КБ. Деталь, яка збиває з пантелику: боту при цьому відповідають ШВИДШЕ, ніж браузеру — 145 мс проти 198 мс, бо готовий документ уже лежить, а оболонку ще треба зібрати. З браузера все виглядає бездоганно, і саме тому проблему знаходять пізно.

у Search Console сторінки в статусі «просканована, наразі не проіндексована» — це воно?

Часто так, але не завжди. Цей статус означає, що бот адресу забрав і вирішив поки не класти в індекс. Причин дві великі групи: у відповіді не було контенту (це наш випадок) або контент був, але виглядає надто схожим на сусідні сторінки чи надто порожнім по суті. Розрізняється це за хвилину: подивіться в інструменті перевірки URL, що саме бачив бот. Якщо там оболонка без тексту — питання до рендерингу. Якщо текст є, а індексації немає — питання вже до контенту, і це інша послуга.

чи впливає це на видимість в AI-асистентах?

Впливає на можливість, не на результат. Агенти читають те, що віддано в розмітці одразу; якщо там порожньо, вас процитувати нічим. Але жодних обіцянок щодо згадок ми не даємо: правил відбору не публікує жоден вендор, гарантій немає ні в кого, а обсяг переходів звідти поки що малий порівняно зі звичайним пошуком. Це робота на випередження з невідомою віддачею, і ми говоримо про неї саме так. Окремо про блокування тренувальних агентів: воно не прибирає ваш контент із моделей, які вже навчені.

чи доведеться переписувати сайт на інший фреймворк?

У більшості випадків ні, і ми навмисно починаємо не з цього. Спершу перевіряємо, чи ваш поточний застосунок уміє віддавати готовий документ хоча б на потрібних маршрутах — часто вміє, просто цим ніхто не займався. Порада, яку ми даємо частіше за інші: не міняйте фреймворк заради пошуку. Переїзд з одного стека на інший — це переїзд усього застосунку з новими помилками, і поруч із ним пререндер на чотирьох типах сторінок виглядає як робота на тиждень. Переписування фронтенду в цю послугу не входить узагалі.

скільки це триває і коли буде видно ефект?

Самі роботи — 10–30 робочих днів залежно від обраного способу: пререндер швидший, серверний рендеринг зачіпає архітектуру, і строк там залежить від того, наскільки застосунок до неї готовий. Ефект в індексі рухається повільніше за роботи: після змін адреси йдуть на перевірку, і місяць ми просто дивимось звіт. Це не наша повільність — це швидкість, з якою пошуковик переобходить сайт, і прискорити її ззовні неможливо.

Надішліть адресу сайту й дві-три сторінки, які для вас найважливіші.

У відповідь — дві відповіді сервера поруч: та, що отримує браузер, і та, що отримує пошуковий агент, з розмірами й переліком того, чого в другій бракує. Якщо там уже все на місці, скажемо це першим же листом.

Переглянути кейси
  • Відповідь протягом 2 годин
  • Без зобов’язань
  • Працюємо за договором

Прайса на сайті немає навмисно: обсяг тієї самої роботи у двох клієнтів відрізняється в рази, і цифра «від» у такому разі нічого не пояснює. Спершу безкоштовний аудит — рахуємо ваші сторінки, дублі й швидкість, — потім називаємо суму й строк і фіксуємо їх у договорі.