Modelowane listy odbiorców nie zawierają konkretnych osób, tylko prawdopodobieństwa. Wyjaśniam, jak powstają, gdzie ich szukać w panelu i jak czytać ich raporty.
To pytanie zadaje mi prawie każdy właściciel sklepu, który przeszedł na Performance Max. Zwykle brzmi ostrzej: „płacę codziennie kilkaset złotych i nie wiem, za co”. Rozumiem tę frustrację, bo przez lata praca nad kampanią produktową polegała między innymi na czytaniu zapytań i wykluczaniu tych bezsensownych.
Zła wiadomość jest taka, że w kwietniu 2024 nie ma sposobu, żeby zobaczyć wszystkie zapytania z kampanii produktowej razem z kosztem przy każdym z nich. Dobra jest taka, że pytanie „na jakie frazy się wyświetlam” można w sklepie internetowym rozłożyć na kilka pytań, na które odpowiedzi już są — tylko leżą w czterech różnych miejscach.
W tym tekście składam je razem: co pokazuje panel, co Merchant Center, co daje równoległa kampania w wyszukiwarce i czego dowiemy się z danych własnych sklepu. Zakładam przy tym, że celem nie jest sama ciekawość, a decyzja o pieniądzach.
Zacznę od rzeczy, która zmienia sposób myślenia o całym problemie. W kampanii tekstowej dopasowanie do zapytania odbywa się przez słowa kluczowe, które sami wpisujemy. W części produktowej Performance Max nie ma słów kluczowych — Google dopasowuje konkretny produkt z pliku danych do zapytania, opierając się głównie na jego tytule, atrybutach i kategorii.
Z tego wynika praktyczny wniosek: pytanie „na jakie frazy się wyświetlam” jest w sklepie mniej użyteczne niż pytanie „które produkty zbierają wyświetlenia i czy to te, na których zarabiam”. Drugie pytanie ma pełną odpowiedź w raportach, pierwsze tylko częściową.
Nie znaczy to, że zapytania są nieważne. Znaczy, że dźwignia leży po stronie asortymentu i opisów, a nie po stronie listy wykluczeń. Kiedy przejmuję sklep, w którym kampania „sprzedaje nie to, co powinna”, w dziewięciu przypadkach na dziesięć problem widać w pliku produktowym, nie w zapytaniach.
W kampanii Performance Max jest sekcja statystyk, a w niej podgląd zapytań pogrupowanych w kategorie tematyczne. To nie lista haseł, a zbiór etykiet, którym Google opisuje grupy podobnych zapytań, z liczbą wyświetleń, kliknięć i konwersji.
Da się z tego wyczytać trzy rzeczy. Czy kampania w ogóle wchodzi w obszary, o które nam chodzi. Jak duży udział ma nasza własna nazwa. Czy pojawiły się nowe obszary, których wcześniej nie było — na przykład kategoria produktowa, której nie sprzedajemy, ale która językowo przypomina naszą.
Czego z tego nie wyczytamy: kosztu przypisanego do kategorii, pełnej listy haseł i tego, który produkt wyświetlił się na dane zapytanie. Te braki są istotne, więc panel traktuję jako pierwszy przystanek, nie jako źródło rozstrzygające. Kto chce mieć tę samą tabelę cyklicznie i w jednym arkuszu dla wielu kampanii, sięga po skrypt korzystający z tego samego zasobu w interfejsie programistycznym Google Ads.
Ta metoda jest pracochłonniejsza, ale daje coś, czego nie da żaden raport z Performance Max: prawdziwe zapytania, z kosztem, w pełnym raporcie.
Pomysł polega na tym, że obok kampanii produktowej prowadzimy kampanię w sieci wyszukiwania na kluczowe kategorie asortymentu, w dopasowaniu do frazy albo przybliżonym. Ta kampania ma normalny raport zapytań, więc czytamy z niej to, jak rynek pyta o nasze produkty — jakich słów używa, w jakich odmianach, z jakimi dodatkami w rodzaju „opinie”, „tanio”, „zamiennik”.
Zasada rozstrzygania konfliktów między takimi kampaniami działa na naszą korzyść. Jeśli zapytanie pokrywa się dokładnie ze słowem kluczowym w kampanii tekstowej, wyświetli się ta kampania, a nie Performance Max. Gdy nie ma dokładnego dopasowania, decyduje ranking. Dzięki temu można świadomie przejmować do kampanii tekstowej te obszary, które chcemy kontrolować, i zostawiać resztę automatowi.
Traktuję to również jako narzędzie do nauki o asortymencie. Zapytania z kampanii sondującej pokazują, jakim językiem klienci mówią o produktach — a ten język powinien potem trafić do tytułów w pliku danych.
Skoro w kampanii produktowej dopasowanie idzie przez produkt, to najbliżej odpowiedzi na pytanie o pieniądze jesteśmy w raportach produktowych, nie w raportach zapytań.
W Google Ads sprawdzam wyniki na poziomie pojedynczych identyfikatorów produktów: co zbiera wyświetlenia, co kliknięcia, co sprzedaje. Ustawiam sortowanie po koszcie i patrzę na produkty, które kosztują, a nie sprzedają. Dziewięć razy z dziesięciu wyjaśnienie jest banalne — źle opisany tytuł, brakujący atrybut, zła kategoria, cena wyraźnie odbiegająca od rynku.
W Merchant Center mam do tego dwa raporty, które w sklepie mówią więcej niż lista fraz. Najczęściej sprzedawane produkty w kategorii pokazują, czego ludzie faktycznie szukają w mojej branży — również wtedy, gdy tego nie mam w ofercie. Konkurencyjność ceny pokazuje, dlaczego produkt zbiera wyświetlenia i nie zbiera kliknięć.
Do tego dochodzi kwestia, o której łatwo zapomnieć: jeśli produkt ma braki w danych albo jest odrzucony, nie pojawi się na żadne zapytanie. Zanim zacznę analizować dopasowanie, sprawdzam diagnostykę pliku danych.
Trzecie źródło jest w sklepie i najczęściej stoi nieużywane.
Wyszukiwarka wewnętrzna sklepu to najuczciwszy zbiór zapytań, jaki mamy — bez kategoryzowania, bez progów, z pełną historią. Nie są to te same zapytania, które ludzie wpisują w Google, ale pokrycie jest duże, a wnioski o nazewnictwie natychmiast użyteczne przy poprawianiu tytułów produktów.
W analityce patrzę na strony docelowe, na które kampania sprowadza ruch. Jeśli Performance Max wysyła ludzi głównie na jedną kategorię, wiem, w którym obszarze się porusza, nawet nie znając haseł. Zestawienie stron docelowych ze współczynnikiem konwersji pokazuje z kolei, gdzie ruch jest wyłącznie ruchem.
Ostatni element to dane z systemu sklepowego: co się sprzedało, z jaką marżą i ile z tego wróciło jako zwrot. To one rozstrzygają, czy kampania działa, i to na nich opieram rozmowę z klientem, gdy raporty w panelu i w analityce pokazują różne liczby — co przy dzisiejszych ograniczeniach pomiaru jest normą, nie usterką.
Osobny akapit, bo to najczęstsze źródło złudzeń przy ocenie kampanii produktowej.
Nazwa sklepu i nazwy marek, których jesteśmy dystrybutorem, generują zapytania o bardzo wysokiej skuteczności. Wrzucone do jednego worka z resztą ruchu podnoszą wynik całej kampanii i skutecznie zasłaniają to, że część niebrandowa nie zarabia.
Kolejność działania, którą stosuję: najpierw sprawdzam w statystykach, jaki udział mają kategorie brandowe. Potem zakładam osobną kampanię w wyszukiwarce na markę, żeby przejąć te zapytania w kontrolowany sposób. Na koniec włączam w Performance Max wykluczenie własnej marki, dostępne w ustawieniach kampanii od końca 2023 roku, i obserwuję, jak zmieniają się wyniki części niebrandowej.
Efekt bywa nieprzyjemny: zwrot z nakładów spada, bo znika z niego darmowa premia. Ale dopiero od tego momentu wiem, ile naprawdę kosztuje mnie zdobycie nowego klienta.
Nie ma sensu grzebać w tym codziennie. Raz w miesiącu przechodzę tę samą ścieżkę i to wystarcza na koncie sklepowym średniej wielkości.
Jeśli ktoś oczekuje, że po takim przeglądzie będzie miał listę wszystkich fraz, zawiedzie się. Ale będzie wiedział, które produkty ciągną kampanię, jakim językiem mówią klienci i gdzie wyciekają pieniądze — a to jest właśnie ta wiedza, po którą sięgaliśmy w raporcie zapytań, tylko zdobyta z innej strony.
Używamy plików cookies, aby ułatwić Ci nawigację oraz wykonywanie określonych funkcji. Szczegółowe informacje o wszystkich plikach cookies znajdziesz w każdej kategorii zgody poniżej.
Pliki cookies oznaczone jako "Niezbędne" są przechowywane w Twojej przeglądarce, ponieważ są one kluczowe dla zapewnienia podstawowych funkcji strony.
Używamy również plików cookies firm trzecich, które pomagają nam analizować, w jaki sposób korzystasz z tej strony, zapamiętują Twoje preferencje oraz dostarczają treści i reklamy odpowiednie dla Ciebie. Te pliki cookies będą przechowywane w Twojej przeglądarce tylko za Twoją uprzednią zgodą.
Możesz zdecydować, czy chcesz włączyć lub wyłączyć niektóre bądź wszystkie te pliki cookies, jednak wyłączenie niektórych z nich może wpłynąć na Twoje doświadczenia podczas przeglądania strony.
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| __cf_bm | 13 minutes | Cloudflare bot management — distinguishes humans from bots. |
| rc::* | Persistent | Google reCAPTCHA — localStorage holding anti-bot challenge state. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| wpEmojiSettingsSupports | Session | WordPress — sessionStorage flag caching whether the browser can render emoji (feature detection). |
| ytidb* | Persistent | YouTube — IndexedDB storing playback/search state for embedded videos. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| _ga_* | 400 days | Google Analytics 4 — persists session state per property. |
| _ga | 400 days | Google Analytics — distinguishes unique users via a client id. |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| NID | 183 days | Google — stores preferences for personalized ads. |
| fr | 90 days | Meta — encrypted Facebook id and browser id for ads. |
| _gcl_au | 90 days | Google AdSense/Ads — experiments with advertising efficiency (conversion linker). |
| Cookie | Czas przechowywania | Opis |
|---|---|---|
| __Secure-YNID | 180 days | |
| YSC | Session | |
| __Secure-ROLLOUT_TOKEN | 180 days | |
| VISITOR_INFO1_LIVE | 180 days | |
| VISITOR_PRIVACY_METADATA | 180 days | |
| datr | 400 days | |
| sb | 400 days | |
| wd | 7 days |