Atrybuty produktowe
Okres obowiązywania ceny promocyjnej [sale_price_effective_date]: planowanie wyprzedaży w Google Shopping
Przewodnik po atrybucie sale_price_effective_date w Google Merchant Center: format zakresu dat, który włącza i wyłącza cenę promocyjną, oraz częste błędy.
Sandały Zara na słupku – jasnobrązowe
Wyprzedaż ograniczona w czasie → wygasa automatycznie → historia ceny podstawowej pozostaje wiarygodna → przekreślona cena wyświetla się poprawnie
Sandały Zara na słupku – jasnobrązowe
sale_price ustawiona, ale bez okresu obowiązywania → wyprzedaż nigdy nie wygasa sama → przypadkiem trwa „stała” wyprzedaż → wiarygodność ceny spada, warunki przekreślenia ceny podstawowej nie są spełnione
sale_price_effective_date określa, kiedy wyprzedaż się zaczyna i kończy. Bez tego atrybutu wyprzedaż trwa bez końca – a to podkopuje wymóg dotyczący ceny podstawowej (żeby pojawiło się przekreślenie, cena musi obowiązywać przez 30+ dni) i może powodować problemy z zasadami, jeśli „pierwotna” cena w praktyce nigdy nie obowiązuje.
Czym jest sale_price_effective_date?
Atrybut sale_price_effective_date określa zakres dat, w którym obowiązuje sale_price produktu. Działa jak harmonogram: cena promocyjna włącza się w momencie startu i automatycznie wyłącza w momencie zakończenia – wtedy wyświetlana cena wraca do zwykłej wartości price. Poza tym oknem Google całkowicie ignoruje pole sale_price.
Bez tego atrybutu przesłana sale_price obowiązuje na stałe – nigdy nie wygasa. To zdecydowanie najczęstsza przyczyna wyprzedaży, które przypadkiem trwają bez końca, i może po cichu odebrać Ci możliwość wyświetlania przekreślonej ceny (która wymaga, żeby cena podstawowa obowiązywała przez co najmniej 30 z ostatnich 200 dni).
Specyfikacja techniczna
| Nazwa w feedzie | sale_price_effective_date |
| Wymagany | Zalecany (formalnie niewymagany, ale bardzo wskazany, gdy używasz sale_price) |
| Format | Zakres ISO 8601: start/end – np. 2025-06-01T00:00:00+00:00/2025-06-30T23:59:59+00:00 |
| Format z samą datą | 2025-06-01/2025-06-30 również jest akceptowany |
| Separator | Ukośnik / między początkiem a końcem |
| Strefa czasowa | Podaj przesunięcie (np. +02:00, -05:00 albo +00:00 dla UTC) |
Jak działa para sale_price + sale_price_effective_date
-
Przed momentem startu: Google pokazuje zwykłą
price. Cena promocyjna jest w feedzie, ale się nie wyświetla. -
Między startem a zakończeniem: Google pokazuje
sale_price, a obok przekreślonąprice(jeśli spełniony jest warunek 30 dni dla ceny podstawowej). -
Po zakończeniu: Google wraca do zwykłej
price. Wartość ceny promocyjnej zostaje w feedzie, ale jest ignorowana. -
Brak okresu obowiązywania: cena promocyjna obowiązuje bez końca, dopóki nie usuniesz jej z feedu.
Reguła 30 dni dla przekreślonej ceny
Żeby pojawiła się przekreślona cena (cena pierwotna skreślona obok ceny promocyjnej), podstawowa price musi być faktyczną ceną produktu przez co najmniej 30 z ostatnich 200 dni. W praktyce oznacza to, że:
-
Wyprzedaż trwająca 30+ dni bez daty zakończenia osłabia historię ceny podstawowej i może wyłączyć przekreślenie
-
Wyprzedaże jedna po drugiej (jedna się kończy, od razu zaczyna się kolejna) również skracają czas obowiązywania ceny podstawowej
-
Sztuczne podniesienie
pricetuż przed wyprzedażą – i natychmiastowa obniżka – nie spełnia tego wymogu i narusza zasady -
Dobrze zaplanowana wyprzedaż z określonym końcem (np. 7–14 dni) chroni historię ceny podstawowej i sprawia, że przekreślenie pojawi się przy kolejnej wyprzedaży
Zasady
-
Start musi przypadać przed zakończeniem – przy odwróconym zakresie cena promocyjna nigdy się nie włączy
-
sale_pricemusi być niższa niżprice -
Tylko jeden zakres dat na produkt (nie kilka zakresów)
-
Nie ustawiaj daty zakończenia w przeszłości – cena promocyjna od razu zostanie uznana za wygasłą
-
Jeśli podajesz godzinę, przesunięcie strefy czasowej jest obowiązkowe – bez niego wyprzedaż może się włączyć lub wygasnąć o nieoczekiwanej porze
Dobre praktyki
-
Zawsze ustawiaj datę zakończenia – prawie nigdy nie ma biznesowego powodu, żeby wyprzedaż trwała bez końca. Jeśli w procesie generowania feedu każda wyprzedaż musi mieć datę końca, unikniesz przypadkowo przedłużonych promocji.
-
Planuj wyprzedaże w feedzie z wyprzedzeniem – prześlij
sale_price+sale_price_effective_datez przyszłą datą startu jeszcze przed rozpoczęciem wyprzedaży. Unikniesz pośpiechu z feedem w dniu startu, a wyprzedaż włączy się dokładnie na czas. -
Do dynamicznego planowania wyprzedaży używaj dodatkowego feedu – jeśli często robisz krótkie promocje (np. flash sale), dodatkowy feed obejmujący tylko produkty objęte wyprzedażą odświeża się szybciej niż pełny feed i pozwala włączać i wyłączać wyprzedaże w krótszych odstępach czasu.
-
Traktuj regułę 30 dni jako ograniczenie w kalendarzu promocji – po każdej wyprzedaży odczekaj co najmniej 30 dni z pełną
price, zanim uruchomisz kolejną wyprzedaż na te same produkty. Dzięki temu przy następnych promocjach nadal będziesz mieć prawo do przekreślonej ceny.
Najczęstsze błędy
-
sale_pricebezsale_price_effective_date– wyprzedaż nigdy nie wygasa sama -
Zamienione daty startu i zakończenia – wyprzedaż nigdy się nie włącza
-
Format bez ukośnika (np. dwa osobne pola z datami) – nieprawidłowy; musi to być jeden ciąg
start/end -
Brak przesunięcia strefy czasowej – wyprzedaż włącza się lub wygasa o nieoczekiwanej porze
-
Data zakończenia w przeszłości – Google uznaje wyprzedaż za zakończoną i od razu pokazuje zwykłą cenę
-
Wyprzedaże tak częste, że historia ceny podstawowej spada poniżej 30 dni – przekreślona cena przestaje się wyświetlać
-
sale_pricerównaprice– brak rabatu, brak przekreślenia, możliwe ostrzeżenie o jakości danych
Często zadawane pytania
Jaki dokładnie jest format sale_price_effective_date?
YYYY-MM-DDThh:mm:ss+HH:MM/YYYY-MM-DDThh:mm:ss+HH:MM. Przykład: 2025-06-01T00:00:00+00:00/2025-06-30T23:59:59+00:00. Oznacza to, że wyprzedaż startuje o północy UTC 1 czerwca i kończy się z końcem 30 czerwca. Zawsze podawaj przesunięcie strefy czasowej. Format z samą datą (bez godziny) też jest akceptowany: 2025-06-01/2025-06-30, ale dopiero godzina daje Ci precyzyjną kontrolę nad tym, kiedy wyprzedaż się włącza i wygasa.Czy sale_price_effective_date jest wymagany, gdy używam sale_price?
sale_price bez sale_price_effective_date, cena promocyjna zacznie obowiązywać od razu i nigdy nie wygaśnie sama – będzie aktywna, dopóki nie usuniesz sale_price z feedu. To najczęstsza przyczyna wyprzedaży, które przypadkiem trwają dłużej, niż miały. Zawsze ustawiaj zakres dat, żeby promocja na pewno wygasła automatycznie.Czym jest reguła 30 dni dla ceny podstawowej i jaki ma związek z tym atrybutem?
price) była faktyczną ceną produktu przez co najmniej 30 z ostatnich 200 dni. Jeśli wyprzedaż trwa za długo – zwłaszcza przez brak sale_price_effective_date – obniżona cena w praktyce staje się ceną „prawdziwą”, warunek 30 dni nie jest spełniony, a przekreślenie znika. Wyprzedaż z jasno określonym końcem chroni historię ceny podstawowej.Czy mogę zaplanować przyszłą wyprzedaż za pomocą tego atrybutu?
sale_price i sale_price_effective_date z datą startu w przyszłości, a Google samo włączy cenę promocyjną, gdy ta data nadejdzie. Do tego czasu wyświetla się aktualna wartość price. To idealne rozwiązanie przy planowanych promocjach (Black Friday, wyprzedaże sezonowe): prześlij dane o wyprzedaży wcześniej, a promocja wystartuje zgodnie z harmonogramem – bez aktualizowania feedu w dniu startu.Co się dzieje, gdy minie czas zakończenia z sale_price_effective_date?
sale_price_effective_date, Google automatycznie wraca do wyświetlania zwykłej wartości price i usuwa oznaczenie wyprzedaży. Wartość sale_price zostaje w feedzie – Google po prostu ją ignoruje, bo okres obowiązywania minął. Nie musisz usuwać sale_price z feedu po zakończeniu wyprzedaży, choć dla porządku warto to zrobić przy najbliższej pełnej aktualizacji feedu.Czy sale_price może być wyższa niż zwykła cena?
sale_price była niższa niż price. Jeśli sale_price jest równa price albo wyższa, oznaczenie wyprzedaży się nie pojawi, a produkt może dostać ostrzeżenie o jakości danych. Upewnij się, że rabat jest prawdziwy (choćby niewielki). Google monitoruje też powtarzające się schematy i nie pokazuje przekreślonej ceny przy produktach ze sztucznie zawyżoną ceną podstawową.Powiązane poradniki
- Atrybuty produktoweCena promocyjna [sale_price] w Google Shopping: przekreślona cena i wpływ na CTR
- Atrybuty produktoweMiara ceny jednostkowej [unit_pricing_measure] w Google Shopping: wymagania i przykłady
- Atrybuty produktowePodstawowa miara ceny jednostkowej [unit_pricing_base_measure] w Google Shopping: wymagania i przykłady