- Az ár az a strukturáltadat-mező, amelyik a leggyakrabban kerül ellentmondásba a látható tartalommal, mert ez változik a legsűrűbben.
- Az Offer price mezőjébe mindig a kosárban ténylegesen fizetendő, kupon nélkül bárki számára elérhető bruttó ár kerül.
- Az áthúzott árat StrikethroughPrice típusú UnitPriceSpecification elemben add meg, és ez az árcsökkentést megelőző 30 nap legalacsonyabb ára legyen.
- A priceValidUntil mező az akció valódi utolsó napját mutassa, a lejárat után a jelölésnek automatikusan vissza kell állnia.
- Ársávos és variánsos terméknél az akciónak a legalacsonyabb árban és az érintett változat saját ajánlatában is látszania kell.
Ha egy webshopban akció indul, az ár általában három helyen változik meg. Változik a termékoldalon, a kosárban és a strukturált adatban. Az első kettőt a vásárló látja, a harmadikat csak a keresők és a válaszmotorok olvassák, ezért ez csúszik el a legkönnyebben. Ebben a cikkben végigmegyünk azon, hogyan add meg az akciós és az áthúzott árat a Product és Offer jelölésben úgy, hogy egyezzen a megjelenített árral, és ne ütközzön a hazai árfeltüntetési szabállyal. Minden fontos állításnál jelöljük, hogy hivatalosan igazolt információ, saját tapasztalat vagy szakmai feltételezés.

Miért az árjelölés a legkönnyebben elrontható strukturáltadat-mező?
Az ár változik a legsűrűbben, és a jelölés gyakran más forrásból töltődik, mint a látható ár, ezért ez a mező kerül a leghamarabb ellentmondásba az oldallal.
A termék neve, márkája és képe hónapokig ugyanaz marad. Az ár viszont akciónként, kiárusításkor, hétvégi kampányban, néha naponta mozog. Sok webshop-sablon a strukturált adatot a termék alapárából generálja, a megjelenített akciós árat pedig egy bővítmény vagy egy árszabály-motor számolja ki menet közben. Ilyenkor a vásárló az akciós árat látja, a JSON-LD-ben pedig az alapár marad.
Saját tapasztalat: webshop-auditokban az árjelölés az a mező, ahol a leggyakrabban találunk eltérést a látható tartalomhoz képest, jellemzően akció idején vagy közvetlenül az akció lejárta után.
Hivatalosan igazolt: a Google általános strukturáltadat-irányelvei szerint a jelölésnek az oldalon látható tartalmat kell leírnia, a félrevezető jelölés pedig kézi intézkedést vonhat maga után. A Google Merchant Center külön is ellenőrzi az ár egyezését, eltérésnél a terméket elutasíthatja.
Szakmai feltételezés: az AI-alapú keresők és válaszmotorok a terméklap szövegét és a strukturált adatot egyaránt feldolgozhatják. Ha a kettő mást mond, jó eséllyel egyiket sem kezelik teljesen megbízhatóként, vagy épp az elavult árat idézik.
Melyik árat írd a price mezőbe, ha akció van?
Az Offer price mezőjébe mindig azt az árat írd, amelyet a vásárló ténylegesen kifizet, vagyis az akciós árat.
Hivatalosan igazolt: a Google kereskedői listázásra vonatkozó dokumentációja szerint a price az ajánlat ára, az eredeti, áthúzott ár pedig külön tulajdonságba kerül. Az akció alatt tehát nem az alapár marad a fő mezőben, és nem is a kettő átlaga.
Ha az akció csak kuponkóddal, hűségprogrammal vagy regisztráció után érhető el, a price mezőbe az az ár való, amelyet bárki megkap kód és belépés nélkül. Szakmai feltételezés, amely a Merchant Center árszabályaiból következik, hogy a kuponos ár nem általános ajánlat, a hűségárra pedig külön mezők szolgálnak.
Hivatalosan igazolt: Magyarországon a fogyasztónak szóló eladási árat az általános forgalmi adóval együtt, bruttó árként kell feltüntetni, így a jelölésben is a bruttó érték szerepeljen. B2B boltban, ahol nettó árat mutatsz, a jelölés a látható árat kövesse, és a valueAddedTaxIncluded tulajdonsággal jelezheted, hogy az ár tartalmaz-e áfát.
Hogyan jelölöd az áthúzott, eredeti árat?
Az áthúzott árat az Offer priceSpecification tulajdonságában, egy UnitPriceSpecification elemként adod meg, amelynek priceType értéke https://schema.org/StrikethroughPrice.
Hivatalosan igazolt: a Google kereskedői listázási dokumentációja ezt a szerkezetet írja le az áthúzott ár megadására. A Google ugyanakkor nem ígéri, hogy az áthúzott árat minden esetben meg is jeleníti, ez a találati felülettől és más jelektől is függ.
Régebbi megoldásokban gyakran két Offer szerepel egymás mellett, egy a régi és egy az új árral. Szakmai feltételezés: ez a feldolgozó számára két különálló ajánlatnak látszik, ezért könnyen előfordulhat, hogy a régi árat tekinti érvényesnek, vagy ársávként értelmezi a kettőt.
A schema.org ismer ListPrice típust is, amely a listaárat jelöli. Hazai akciónál ezt ne keverd össze az áthúzott árral, mert a jogszabály szerinti korábbi ár nem feltétlenül egyezik a listaárral vagy a gyártó ajánlott árával.
Mit mond a hazai árfeltüntetési szabály az áthúzott árról?
Árcsökkentés bejelentésekor korábbi árként az árcsökkentést megelőző 30 napban alkalmazott legalacsonyabb árat kell feltüntetni, és a jelölésben is ennek kell áthúzott árként szerepelnie.
Hivatalosan igazolt: ezt a szabályt az (EU) 2019/2161 irányelv (más néven Omnibus-irányelv) vezette be az árfeltüntetési irányelvbe, Magyarországon pedig a 4/2009. (I. 30.) NFGM-SZMM együttes rendelet 2022-es módosítása ültette át. A szabályozás kivételeket is ismer, például a fokozatosan növekvő árcsökkentésre. Ezekben az esetekben, és minden vitás helyzetben kérj jogi véleményt, mert ez a cikk nem jogi tanácsadás.
A gyakorlatban ez azt jelenti, hogy az áthúzott árat a rendszernek az árnaplóból kell számolnia. Ha a bolt egy kézzel kitöltött „régi ár” mezőből dolgozik, akkor a látható oldal és a jelölés egyszerre lehet szabálytalan, csak éppen egymással összhangban.
Saját tapasztalat: a kézzel karbantartott „eredeti ár” mező a hazai webshopokban gyakori, és ritkán követi a 30 napos szabályt.
Szakmai feltételezés: a jelölésben nincs külön mező a kedvezmény százalékára. Ha a termékképen látható százalékos címke más alapárból számol, mint az áthúzott ár, a vásárló két, egymásnak ellentmondó információt kap, és ezt a jelölés nem javítja ki.
Hogyan add meg az akció érvényességi idejét?
A priceValidUntil mezőbe az akció utolsó napját írd ISO 8601 formátumban (például 2026-11-30), és gondoskodj róla, hogy a lejáratkor a jelölés automatikusan visszaálljon.
Hivatalosan igazolt: a Google dokumentációja szerint a priceValidUntil azt a dátumot jelöli, amely után az ár már nem érvényes, és ha ez a dátum a múltban van, a Google nem feltétlenül jeleníti meg a bővített találatot. A UnitPriceSpecification elemen a validFrom és validThrough tulajdonság is használható, ezek időpontot is elfogadnak időzónával (Budapesten télen +01:00, nyáron +02:00).
Saját tapasztalat: két hibát látunk rendszeresen. Az egyik, hogy a sablon minden termékre egy évvel későbbi dátumot ír, akciótól függetlenül. A másik, hogy egy régi akció lejárt dátuma bent marad.
Szakmai feltételezés: határozatlan ideig tartó akciónál jobb elhagyni a mezőt, mint kitalálni egy dátumot. Az akció végén pedig ürítsd az oldal-gyorsítótárat is, különben a kiszolgált HTML még órákig a régi árat és a régi jelölést mutathatja.
Hogyan kell megadni a devizát és az ár formátumát?
A priceCurrency mezőbe háromjegyű ISO 4217 kód kerül (forintnál HUF), a price mezőbe pedig csak szám, pont tizedeselválasztóval, ezres tagolás és pénznemjel nélkül.
Hivatalosan igazolt: a schema.org az ár értékére pontot ír elő tizedeselválasztóként, és a pénznemet külön mezőben, ISO 4217 kóddal várja. A magyar megjelenítés szóközzel tagol és vesszővel választja el a tizedeseket, ezért a „8 990” látható alakból a jelölésben 8990 lesz, a „12,50” alakból pedig 12.50.
Saját tapasztalat: gyakori, hogy a sablon a formázott, szöveges árat írja ki a mezőbe, szóközzel és pénznemjellel együtt. Ilyenkor a validátor hibát jelez, vagy rossz számot olvas ki. Ugyanilyen gyakori, hogy a deviza mezőben „Ft” áll HUF helyett.
Ha a webshop több devizában árul, egy URL-en egy deviza szerepeljen, és a jelölés ugyanazt mutassa, amit az adott oldalváltozat. Szakmai feltételezés: az IP-cím alapján automatikusan váltott deviza kockázatos, mert a feltérképező robot jellemzően nem magyar IP-címről érkezik, így más devizát láthat, mint a hazai vásárló.
Mi a teendő az ársávos és variánsos termékeknél?
Ha a változatok különböző áron kaphatók, vagy minden változat saját Offer elemet kap, vagy a termék szintjén egy AggregateOffer adja meg a legalacsonyabb és a legmagasabb árat. A kereskedői megjelenésekhez az egyedi Offer a biztosabb.
Hivatalosan igazolt: a Google a termékrészletekhez elfogadja az AggregateOffer elemet (lowPrice, highPrice, offerCount), a kereskedői listázáshoz viszont Offer kell. A változatokat ProductGroup elemmel, hasVariant és variesBy tulajdonsággal is leírhatod, amelyet a Google szintén támogat.
Gyakorlati szabályok ársávos terméknél:
- Ha a változat URL-paraméterrel választható ki, az adott URL jelölése a kiválasztott változat árát mutassa.
- Ha csak néhány változat akciós, az áthúzott ár csak ezeknek az
Offerelemében szerepeljen. - Ha egy akció miatt egy változat lesz a legolcsóbb, a
lowPriceértéknek is követnie kell ezt. - Mennyiségi kedvezménynél a
UnitPriceSpecificationeligibleQuantitytulajdonsága írja le a sávot.
Szakmai feltételezés: a mennyiségi sávok megjelenítését a keresők korlátozottan támogatják, ezért a fő Offer az egy darabra vonatkozó árat adja meg, a sávos kedvezmény pedig a látható szövegben is legyen ott.
Hogyan néz ki egy helyes példakód?
Egy akciós termék minimális, helyes jelölése egyetlen Offer, benne az akciós árral, a devizával, az érvényességgel, az elérhetőséggel és egy StrikethroughPrice típusú áthúzott árral.
A kódot egy application/ld+json típusú script blokkba teszed a termékoldalon. Az értékek illusztrációk.
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Kerámia teáskanna, 1 liter",
"sku": "TEA-1000",
"image": "https://www.pelda.hu/kepek/teaskanna.jpg",
"offers": {
"@type": "Offer",
"url": "https://www.pelda.hu/keramia-teaskanna",
"price": 7990,
"priceCurrency": "HUF",
"priceValidUntil": "2026-11-30",
"availability": "https://schema.org/InStock",
"itemCondition": "https://schema.org/NewCondition",
"priceSpecification": {
"@type": "UnitPriceSpecification",
"priceType": "https://schema.org/StrikethroughPrice",
"price": 9990,
"priceCurrency": "HUF"
}
}
}
A 7990-es érték a kosárban fizetendő bruttó akciós ár, a 9990-es pedig az áthúzott ár, amelynek az árcsökkentést megelőző 30 nap legalacsonyabb árának kell lennie. Mindkettőnek pontosan így kell látszania a termékoldalon is. Az akció lejártakor a priceSpecification blokk eltűnik, a price visszaáll az alapárra, a priceValidUntil pedig kikerül vagy frissül.
Hogyan teszteld a jelölést lépésről lépésre?
A tesztelés lényege, hogy a jelölés minden ármezőjét összeveted a látható oldallal és a kosárral, az akció előtt, alatt és után is.
- Nyisd meg a termékoldalt privát ablakban, és írd fel a látható akciós árat, az áthúzott árat és a kedvezmény százalékát.
- Futtasd le az oldalt a Google Kiválasztott találatok tesztjével URL alapján, és nézd meg a termék és a kereskedői listázás elemeit, a hibákat és a figyelmeztetéseket.
- A Schema Markup Validatorral ellenőrizd a schema.org szerinti szintaxist, és azt, hogy csak egy
Productblokk van-e az oldalon. - Vesd össze a
priceértéket a fizetendő bruttó árral, aStrikethroughPriceértéket a látható áthúzott árral, a devizát pedig aHUFkóddal. - Az árnaplóból ellenőrizd, hogy az áthúzott ár valóban az elmúlt 30 nap legalacsonyabb ára.
- Nézd meg, hogy a
priceValidUntilaz akció valódi utolsó napja, és jövőbeli dátum. - Variánsos terméknél válts méretet vagy színt, és nézd meg, követi-e a jelölés az árat.
- Tedd a terméket kosárba, és ellenőrizd, hogy ott is ugyanaz az ár jelenik meg.
- Az akció vége utáni napon, gyorsítótár-ürítés után ismételd meg a tesztet, és győződj meg róla, hogy az áthúzott ár az oldalról és a jelölésből is eltűnt.
- Kövesd a Search Console kereskedői listázási és termékrészlet-jelentéseit, valamint a Merchant Center áreltérés-figyelmeztetéseit.
Melyek a leggyakoribb hibák az akciós ár jelölésében?
A legtöbb hiba abból fakad, hogy a jelölés nem ugyanabból az adatból töltődik, mint a látható ár, ezért akció idején a kettő elválik egymástól.
- Akció alatt is az alapár szerepel a
pricemezőben. - Az áthúzott ár listaár vagy kézzel beírt „eredeti ár”, és nem a 30 napos legalacsonyabb ár.
- A
pricemezőben formázott szöveg áll szóközzel és pénznemjellel. - A deviza hiányzik, vagy „Ft” szerepel
HUFhelyett. - A
priceValidUntillejárt, vagy minden terméken ugyanaz a távoli dátum áll. - Két
Offerszerepel egymás mellett a régi és az új árral. - A téma és egy SEO-bővítmény egyszerre generál
Productjelölést, eltérő árral. - Az
AggregateOfferlowPriceértéke nem követi az akciót. - A jelölés nettó árat mutat, az oldal bruttót.
- Az akciós árat JavaScript tölti be utólag, a jelölés viszont a szerveroldali alapárat tartalmazza.
Saját tapasztalat: a felsoroltak közül a dupla jelölés és a formázott szövegként kiírt ár fordul elő a leggyakrabban. Mindkettő egy beállítással vagy a sablon egy sorával javítható.
A helyes árjelölés önmagában nem garantál jobb helyezést, és azt sem, hogy az áthúzott ár megjelenik a találatok között. Amit biztosan elérhetsz vele, hogy a kereső, a válaszmotor és a vásárló ugyanazt az árat lássa. Érdemes ezért az akciós naptárhoz kötött, ismétlődő ellenőrzéssé tenni, amely minden akció indulásakor és lejártakor lefut.
Források és további olvasnivalók
- Google Search Central, Termék (Product) strukturált adatok és kereskedői listázás dokumentációja
- Google Search Central, Általános strukturáltadat-irányelvek
- Google Merchant Center súgó, ár és akciós ár attribútumok
- Schema.org, Offer, AggregateOffer, UnitPriceSpecification, PriceTypeEnumeration és ProductGroup típusok
- Az Európai Parlament és a Tanács (EU) 2019/2161 irányelve (Omnibus-irányelv)
- 4/2009. (I. 30.) NFGM-SZMM együttes rendelet az áruk eladási árának és egységárának feltüntetéséről
- ISO 4217 pénznemkódok és ISO 8601 dátumformátum szabvány
- W3C, JSON-LD 1.1 ajánlás
Gyakori kérdések
Melyik árat kell a price mezőbe írni akció idején?
Azt a bruttó árat, amelyet a vásárló ténylegesen kifizet a kosárban, és amely kuponkód vagy regisztráció nélkül bárki számára elérhető. Az eredeti ár külön, StrikethroughPrice típusú UnitPriceSpecification elembe kerül.
Mi számít áthúzott árnak a magyar szabály szerint?
Árcsökkentés bejelentésekor korábbi árként az árcsökkentést megelőző 30 napban alkalmazott legalacsonyabb árat kell feltüntetni. A szabályt a 4/2009. (I. 30.) NFGM-SZMM együttes rendelet tartalmazza, a kivételes eseteknél érdemes jogi véleményt kérni.
Kötelező megadni a priceValidUntil mezőt?
Nem kötelező, de akciónál érdemes az akció utolsó napjával kitölteni. Lejárt dátum esetén a Google nem feltétlenül jeleníti meg a bővített találatot, határozatlan akciónál pedig jobb elhagyni, mint kitalálni egy dátumot.
Hogyan írjam be a forintos árat a jelölésbe?
A priceCurrency mezőbe HUF kerül, a price mezőbe pedig csak szám, ezres tagolás és pénznemjel nélkül, tizedesnél ponttal. A „8 990” látható alakból a jelölésben 8990 lesz.
Mit tegyek, ha a termék változatai más-más áron kaphatók?
Adj minden változatnak saját Offer elemet, vagy használj ProductGroup jelölést hasVariant tulajdonsággal. Az AggregateOffer a termékrészletekhez elfogadott, de a kereskedői listázáshoz az egyedi Offer a biztosabb, és a lowPrice értéknek az akciót is követnie kell.
Garantálja a helyes jelölés, hogy megjelenik az áthúzott ár a Google-ben?
Nem garantálja. A Google a jelölés alapján megjelenítheti az áthúzott árat, de ez a találati felülettől és más jelektől is függ. A helyes jelölés annyit biztosít, hogy ne legyen ellentmondás a látható ár és a strukturált adat között.
Források és további olvasnivalók
Ezen az oldalon a hivatalosan igazolt információt elsődleges forrásokból építjük fel; a saját tapasztalatot és a szakmai becslést mindig külön jelöljük a szövegben.