Zgodność cen w Google Merchant Center (brutto vs netto)
Problem
Google Merchant Center porównuje cenę z feeda produktowego z ceną odczytaną ze strony produktu. Jeśli na stronie widoczne są dwie ceny (np. netto i brutto), Google może:
- odczytać nieprawidłową cenę (np. netto),
- uznać ją za właściwą,
- zgłosić błąd “Mismatched value (page crawl) [price]” albo nawet nadpisać cenę z feeda.
Najczęściej dotyczy to sklepów B2C w Polsce, gdzie cena brutto (z VAT) jest tą, którą klient faktycznie płaci.
Jak Google odczytuje cenę
Google korzysta z kilku źródeł jednocześnie:
- Feed produktowy (Merchant Center)
- Dane strukturalne na stronie (Schema.org: Product / Offer)
- Treść strony (DOM) – tzw. advanced data extraction
Jeśli ceny się różnią, Google wybiera jedną z nich (często niższą), co prowadzi do konfliktu.
Prawidłowa konfiguracja (rekomendowana)
1. Jedna cena ofertowa w danych strukturalnych
- W danych strukturalnych (
Offer.price) musi znajdować się tylko jedna cena. - Powinna to być cena brutto, zgodna z feedem.
- Waluta:
PLN
Zalecane: użycie JSON-LD zamiast microdata.
Przykład (JSON-LD):
{
"@context": "https://schema.org",
"@type": "Product",
"name": "Nazwa produktu",
"offers": {
"@type": "Offer",
"price": "123.00",
"priceCurrency": "PLN",
"availability": "https://schema.org/InStock"
}
}
2. Cena netto jako informacja pomocnicza
-
Cena netto nie może:
- mieć
itemprop="price", - znajdować się w
Offer, - być częścią
AggregateOffer(lowPrice,highPrice).
- mieć
-
Najlepiej opisać ją tekstowo, np.:
Cena netto (dla firm): 100,00 zł
Google musi jednoznacznie widzieć, że nie jest to cena oferty.
3. Unikaj wielu Offerów
Częste błędy:
- dwa
Offer(netto i brutto), -
AggregateOfferzlowPrice = 100, - osobny Offer dla B2B.
➡ Google często wybiera najniższą cenę jako obowiązującą.
4. Automatyczne aktualizacje cen w Merchant Center
W Merchant Center:
- Produkty → Ustawienia → Automatyczne aktualizacje
- Jeśli włączona jest aktualizacja ceny, Google może nadpisywać cenę z feeda tym, co odczyta ze strony.
Na czas testów warto:
- tymczasowo wyłączyć aktualizacje ceny,
- sprawdzić, czy problem nadal występuje.
5. Po zmianach – ponowne sprawdzenie
Po poprawkach:
- użyj inspekcji URL w Merchant Center,
- albo poczekaj na ponowny crawl (zwykle 1–3 dni),
- upewnij się, że cena w feedzie = cena brutto na stronie = cena w structured data.
Checklist (TL;DR)
✔ Jedna cena w Offer.price
✔ Cena brutto zgodna z feedem
✔ Cena netto bez znaczników ceny
✔ Brak AggregateOffer z niższą ceną
✔ Sprawdzone automatyczne aktualizacje w GMC
Oficjalne źródła Google
-
Zgodność ceny (Merchant Center): https://support.google.com/merchants/answer/12159029
-
Dane strukturalne produktów: https://support.google.com/merchants/answer/7331077
-
Automatyczne aktualizacje elementów: https://support.google.com/merchants/answer/12157888
Jeśli pojawiają się dalej problemy mimo poprawnej konfiguracji, najczęściej oznacza to, że gdzieś na stronie nadal istnieje druga cena, którą Google interpretuje jako ofertową (nawet jeśli wizualnie wygląda niegroźnie).