Custom labels Google Shopping to jeden z najbardziej niedocenianych elementów feedu produktowego. Większość polskich sklepów używa ich pasywnie — wrzuca sezonowe oznaczenie („zima“/„lato”) i uznaje temat za zamknięty. Tymczasem custom labels to właściwie jedyny mechanizm, który pozwala reklamodawcy narzucić Google własną logikę biznesową i strategicznie podzielić budżet kampanii PMax czy Shopping. Bez nich algorytm traktuje produkt za 50 zł z marżą 15% identycznie jak produkt za 500 zł z marżą 45%. Z nimi — możemy prowadzić osobne kampanie per segment marży, z osobnymi celami ROAS. Ten artykuł pokazuje, jak zbudować system custom labels, który realnie poprawia rentowność konta.
Czym są custom labels i gdzie działają
Custom labels to pięć atrybutów feedu produktowego w Google Merchant Center — custom_label_0, custom_label_1, custom_label_2, custom_label_3 i custom_label_4. Każdy może przyjąć dowolną wartość tekstową do 100 znaków. Przypisane wartości są używane przez reklamodawcę do filtrowania produktów w kampaniach Shopping, Performance Max i (od 2026 roku) Demand Gen. Google nie wykorzystuje ich do matchingu z zapytaniami — to znaczy, że custom labels same w sobie nie poprawiają widoczności produktów. Są wyłącznie narzędziem organizacji kampanii z perspektywy reklamodawcy.
To znacząca różnica wobec tytułów i opisów: tam każdy znak potencjalnie wpływa na CTR i rank produktu. Custom labels są z kolei całkowicie transparentne dla algorytmu w sensie matchingu — nie wpływają na to, komu Google pokaże reklamę. Wpływają tylko na to, z których kampanii / asset groups Google może tę reklamę wyciągnąć. Dla reklamodawcy oznacza to wolność w etykietowaniu: nie ma „prawidłowego” zestawu wartości, liczy się spójność z logiką biznesową konta.
Limit ilościowy: pięć etykiet per produkt. Każda etykieta to jedno pole, jedna wartość — nie można wpisać w custom_label_0 wartości „high_margin;bestseller” jako kombinacji. Jeśli potrzebujemy sześciu wymiarów segmentacji, jedno pole musi służyć dwóm wymiarom jednocześnie (np. „HIGH_BESTSELLER” jako zbita wartość) albo trzeba zejść z granularności. W praktyce pięć etykiet pokrywa 90% potrzeb polskich e-commerce’ów — trudność leży w wyborze, które wymiary segmentacji są najważniejsze.
Pięć najmocniejszych wymiarów segmentacji custom labels
W kontach klientów kampanii PPC powtarza się zestaw pięciu wymiarów, które dają największą operacyjną wartość. Każdy z nich może trafić do osobnego custom label, ale w praktyce przydatne są cztery najmocniejsze — piąty zostaje „na rezerwę” dla sezonowych promocji albo testów.
- Marża — wartości typu high_margin / mid_margin / low_margin. Progi: marża powyżej 40% / 20-40% / poniżej 20%. Podstawa do osobnych kampanii PMax z różnymi celami ROAS.
- Rotacja — wartości bestseller / standard / slow_mover. Kryterium: sprzedaż z ostatnich 30 dni. Top 10% SKU to bestsellerzy, dolne 20% to slow-mover. Podstawa do priorytetyzacji w asset groups.
- Wiek stocku — wartości new (<30 dni w ofercie) / standard / clearance (>180 dni). Podstawa do kampanii wyprzedażowej z mocno obniżonym celem ROAS.
- Cena — wartości low_price (<100 zł) / mid_price (100-500 zł) / high_price (>500 zł). Podstawa do kampanii z różnym progiem pozyskania i różnym poziomem remarketingu.
- Sezon — wartości spring_summer / autumn_winter / all_year. Podstawa do wyłączania i włączania kampanii według kalendarza sezonowego.
Matryca przypisania do custom label zwykle wygląda tak: custom_label_0 = marża, custom_label_1 = rotacja, custom_label_2 = wiek stocku, custom_label_3 = cena. custom_label_4 zostaje do ad-hoc akcji — np. „kolekcja_black_friday“, „collab_marka_X” — co daje możliwość szybkiego uruchomienia dedykowanej kampanii bez rewizji całego feedu.

Jak przełożyć custom labels na strukturę kampanii PMax
Sama obecność custom labels w feedzie nic nie daje, dopóki nie zbudujemy na ich bazie osobnych kampanii lub asset groups. Filtrowanie po custom labels zachodzi na poziomie ustawień kampanii — w PMax w zakładce „Listing groups“, w Standard Shopping w zakładce „Product groups”. Dla sklepu z 2000 SKU i trzema poziomami marży standardowa struktura kampanii wygląda następująco:
| PMax High Margin | custom_label_0 = high_margin | 300% | 400 zł |
| PMax Mid Margin | custom_label_0 = mid_margin | 450% | 300 zł |
| PMax Low Margin | custom_label_0 = low_margin | 650% | 150 zł |
| PMax Clearance | custom_label_2 = clearance | 150% | 100 zł |
Logika budżetów i celów: dla produktów z wysoką marżą (high_margin) stać nas na niższy ROAS, bo marża 45% daje break-even ROAS 220% — cel 300% zostawia spory bufor. Dla low_margin break-even wynosi 670%, więc cel 650% jest na granicy opłacalności, ale pozostawia szansę na pozyskanie klienta z ewentualnym return buy. Dla clearance celowo akceptujemy sprzedaż poniżej marży (ROAS 150%), bo alternatywą jest sprzedaż przecenionego stocku z jeszcze większą stratą. Jak wyliczyć progi opłacalności dla konkretnej marki, opisujemy we wpisie co to jest ROAS i jak go obliczyć.
Alternatywna architektura dla mniejszych sklepów (mniej niż 300 konwersji miesięcznie): jedna kampania PMax z trzema asset groups podzielonymi po marży, bez osobnych budżetów, ale z różnymi kreacjami i sygnałami odbiorców. Z perspektywy learning period lepiej pracuje jedna kampania z trzema asset groups (wszystkie dzielą się konwersjami) niż trzy osobne kampanie, z których każda ma za mało danych. Próg decyzyjny: 300+ konwersji na kampanię miesięcznie uzasadnia podział na osobne kampanie per marża; poniżej — struktura w asset groups.
Zasilanie custom labels automatycznie — skrypty i reguły feedu
Ręczne utrzymywanie custom labels dla 1000+ SKU to praca, której nie da się zrobić regularnie. Dla sklepu, który dodaje i rotuje produkty, wartości custom labels muszą być aktualizowane co najmniej raz w tygodniu — wczoraj bestseller może być dziś przeciętniakiem. Standardowe rozwiązania automatyzacji:
- Reguły feedu w Google Merchant Center. Panel GMC pozwala ustawić warunki: „jeśli price między 100 a 500 → custom_label_3 = mid_price”. Proste reguły działają w 90% przypadków bez dodatkowego kodu.
- Formuły w arkuszu sheets jako źródło feedu. Dla sklepów, które trzymają feed w Google Sheets z synchronizacją, formuły IF/VLOOKUP mogą wyliczać custom labels na podstawie innych pól. Zero kosztów developerskich.
- Content API z własnym skryptem backendowym. Dla sklepów z Shopify/Presta/WooCommerce — skrypt codziennie pobiera dane sprzedaży z ostatnich 30 dni, liczy rotację per SKU, wrzuca wartości do feedu. Inwestycja 10-20 godzin programistycznych na start, potem minimalne utrzymanie.
- Dedykowane narzędzia typu DataFeedWatch, Channable. Dla sklepów z wieloma kanałami (Google, Facebook, Allegro) — narzędzie synchronizuje custom labels w różnych feedach. Koszt 50-300 euro miesięcznie, ale oszczędność czasu na dużą skalę.
Zalecana częstotliwość aktualizacji: marża i cena — codziennie lub przy każdej zmianie cennika; rotacja — tygodniowo; wiek stocku — codziennie (dla dobrej identyfikacji nowości); sezon — sezonowo, przy każdej zmianie kolekcji. Sklepy, które utrzymują custom labels w pełni automatycznie, robią po tej inwestycji drobne korekty raz na kwartał, zamiast tygodniowej pracy ręcznej.
Najczęstsze błędy w konfiguracji custom labels
Po 70+ audytach feedów produktowych w polskich sklepach wyłoniła się lista pięciu błędów, które powtarzają się niezależnie od branży i wielkości konta. Każdy z nich realnie obniża efektywność segmentacji kampanii — wystarczy 30 minut na audyt, żeby je wyłapać i poprawić.
- Jednowartościowe custom labels. Wszystkie produkty mają custom_label_0 = standard. Segmentacja iluzoryczna — kampania filtrowana po tej wartości obejmuje 100% feedu. Często zdarza się przy automatycznych importach z e-commerce platform, które wypełniają pole domyślną wartością.
- Sprzeczne wartości po aktualizacji. Produkt ma custom_label_0 = high_margin w feedzie głównym i custom_label_0 = mid_margin w uzupełniającym. Google bierze ostatnią pobraną wartość, co prowadzi do niestabilnej alokacji w kampaniach.
- Etykiety w różnych alfabetach. Mieszanka high_margin i High Margin (z wielkiej litery) traktowana jest jako dwie różne wartości. Spójność case’u (zawsze lowercase z podkreślnikami) zapobiega rozszczepieniu segmentów.
- Etykiety odnoszące się do produktu, nie strategii. Wartości typu footwear_red w custom_label_0 — dublują informację już obecną w atrybutach color i product_type. Custom label ma sens tylko wtedy, gdy niesie informację, której Google inaczej nie ma.
- Brak dokumentacji znaczenia etykiet. Po 6 miesiącach nikt w zespole nie pamięta, co znaczy custom_label_2 = seg_b. Rekomendacja: dokument z listą etykiet, definicji i właściciela aktualizacji — trzymany w Notion/Google Docs jako „gadżet” dla nowych osób.
Custom labels to tanie narzędzie o wartości wynikającej z dyscypliny użycia. Segmentacja w szerszym ujęciu feedu: analiza cen w Google Merchant Center.

