Sklep meblowy WooCommerce, 122 SKU, dwa segmenty (premium tapicerowane + budget skandi). Klient po wcześniejszej agencji raportował 0 konwersji w Google Ads przy wydatku 8 100 zł miesięcznie. Po 60 dniach od przejęcia: 47 konwersji/mc, ROAS 15,8x na bestsellerach, łączny ROAS konta 6,2x. Pokazujemy dokładnie, co poszło źle i jak to naprawiliśmy — z liczbami.
| Obszar | Stan zastany |
|---|---|
| Conversion tracking | 5 tagów Google Ads Conversion w GTM raportujących do obcego AW-ID (17118183951) zamiast naszego konta. Klasyczny GTM hijack. |
| Offline conversions | Brak. Wszystkie konwersje liczone tylko z online checkout (~70% pokrycia, 30% transakcji „ginie”). |
| Feed Merchant Center | 122 produkty, ale 18 disapproved, 24 bez wymiarów, 0 z GTIN, 0 z cost_of_goods_sold. |
| Custom Labels | Wszystkie puste. Algorytm traktował 122 produkty identycznie, bez priorytetyzacji bestsellerów. |
| Struktura kampanii | 3 stare PMax z 2024, każda z asset group bez audience signals, jedna na cały katalog. Brak Hero/Rest podziału. |
Wniosek po audycie: algorytm Google nie miał jak się uczyć, bo nie widział własnych konwersji (hijack), nie miał danych offline (brak integracji), nie miał sygnałów priorytetyzacji (brak Custom Labels). Sytuacja typowa dla agencji, która „robi setup w pół godziny” i wystawia faktury miesiąc do miesiąca.
transaction_id przez SHA-256(order_id + AUTH_KEY salt) — eliminacja duplikatów konwersjiPełen guide implementacji w naszym poście Conversion tracking dla WooCommerce — GA4 + GTM setup.
Stworzyliśmy automatyczny generator Custom Labels (Python CLI uruchamiany co 24h), który ciągnie dane z WooCommerce (sprzedaż, marża, stan magazynu) i propaguje do feedu w Merchant Center. Mapowanie:
custom_label_0 = margin tier (high >50% / mid 30-50% / low <30%)custom_label_1 = performance (bestseller — top 20 / standard / longtail)custom_label_2 = price range (premium / mid / budget)custom_label_3 = seasonality (winter / summer / evergreen)custom_label_4 = strategy (loss_leader / standard / margin_max)Stare 3 kampanie spauzowane (historical data zostaje), nowa struktura:
custom_label_1 = bestseller, Max Conv Value, Customer Match audience (2000 emaili)Asset groups: 11 assets per kampanię (logo + 5 lifestyle + 2 video + 8 headlines + 5 descriptions + 4 long headlines).
| Metryka | Przed | Po 60 dniach | Zmiana |
|---|---|---|---|
| Wydatek/mc | 8 100 zł | 5 900 zł | −27% |
| Konwersje w Ads | 0 | 47 | +∞ |
| Przychód z Ads/mc | brak danych | 36 600 zł | — |
| ROAS PMax Hero | — | 15,8x | |
| ROAS konta łącznie | — | 6,2x | |
| CPA średni | — | 125 zł |
✓ Sprawdziło się: Podział Hero/Rest (Hero ciągnął cały rachunek z ROAS 15,8x), Customer Match jako audience signal (wzrost ROAS Hero z 8x do 15,8x w 3 tygodnie), offline conversions (match rate +26pp).
✗ Nie sprawdziło się: Shopping Discovery (ROAS 1,8x — spauzowany po 6 tygodniach), short video assets w PMax (CTR niższy niż statycznych obrazów dla branży meblowej), in-market „Home Improvement” (za szeroki, traffic DIY zamiast finished furniture).
Pełen pakiet — Google Ads dla e-commerce. Checklist audytu PMax — Performance Max audyt 30 punktów. Model rozliczeń — wycena.
Bezpłatny audyt 90 min + 8-stronicowy raport. Pokażemy konkretnie co naprawić w tym tygodniu, miesiącu, kwartale.
Umów bezpłatny audyt →