Статті ·
Мікророзмітка товару: як зробити правильно для українського магазину
Розбір розмітки Product для українських магазинів: які поля обов'язкові, чому Google перестає показувати ціну без priceValidUntil і що ламає розширений сніпет.
Розширений сніпет — ціна, наявність і зірки прямо у видачі — дає помітно вищий CTR за звичайне посилання. Робиться він розміткою Schema.org, і саме тут українські магазини втрачають більше за все: розмітка є, а сніпета немає.
Що обов’язково для Product?
Чотири поля, без яких розширений сніпет не з’явиться:
name— назва товару;image— хоча б одне зображення;offers.priceіoffers.priceCurrency— ціна й валюта;offers.availability— наявність за схемою.
Повний перелік підтримуваних полів є в документації Google і в специфікації schema.org.
Чому Google перестає показувати ціну?
Найчастіша причина — відсутній priceValidUntil. Це поле каже, до якої дати ціна актуальна. Без нього Google з часом перестає довіряти цифрі й прибирає її зі сніпета.
Яку валюту вказувати?
Для українських магазинів — UAH. Помилка з USD при гривневих цінах трапляється в магазинів, які колись працювали в доларах, і вона відлякує покупця прямо у видачі: людина бачить «1250 $» замість «1250 ₴».
Валюта пишеться за стандартом ISO 4217 — трьома великими літерами.
Як записати наявність?
Тільки повним URL зі схеми, а не словом:
"availability": "https://schema.org/InStock" // в наявності "availability": "https://schema.org/OutOfStock" // немає "availability": "https://schema.org/PreOrder" // під замовлення
Значення "available", "є в наявності" або "true" не розпізнаються — поле просто ігнорується.
Мінімальний робочий приклад
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Дриль Bosch GSB 13 RE",
"image": "https://site.ua/i/101.jpg",
"sku": "GSB13RE",
"brand": { "@type": "Brand", "name": "Bosch" },
"offers": {
"@type": "Offer",
"price": "1250",
"priceCurrency": "UAH",
"availability": "https://schema.org/InStock",
"priceValidUntil": "2027-08-03",
"url": "https://site.ua/p/101"
}
}
</script>Що найчастіше ламає сніпет?
- Ціна з пробілом або валютою всередині.
"price": "1 250 грн"— некоректно. Має бути чисте число:"1250". - Розмітка не збігається з видимим на сторінці. Якщо в розмітці 1250, а на сторінці 1490 — Google трактує це як спробу обману й може накласти санкції на розмітку.
- aggregateRating без відгуків. Рейтинг 5.0 при нулі відгуків — пряме порушення правил, і це найшвидший спосіб втратити зірки назавжди.
- Розмітка на сторінці категорії. Product описує один товар. Для списку потрібен
ItemList.
Чи потрібен FAQ на сторінці товару?
Зараз майже ні. Google різко скоротив показ FAQ-блоків у видачі, лишивши їх переважно для державних і медичних сайтів. Ставити FAQPage на кожну картку заради сніпета більше не працює — але сама розмітка не шкодить і допомагає мовним моделям розібрати сторінку.
Як перевірити?
- Зберіть розмітку конструктором — він підставляє гривню й
priceValidUntilавтоматично та перевіряє типові помилки. - Прогоніть готову сторінку через Rich Results Test — він покаже, як Google бачить розмітку.
- Через тиждень подивіться у Search Console розділ «Товари»: там видно помилки на всіх сторінках одразу, а не на одній.
І перевірте саму картку: розмітка описує те, що на сторінці, і не замінює нормального опису й фотографій.