Aktualizacja: 30 września 2026 · Autor: Szymon Sanecznik, SEMownia
Scenariusz znam z wielu audytów: liczba sesji z kampanii się nie zmienia, CPC rośnie lekko albo wcale, a sklep sprzedaje wyraźnie mniej. Zarząd pyta, co się stało z kampaniami. Agencja zmienia stawki, cele ROAS i strukturę, co zwykle pogarsza sytuację, bo algorytm traci stabilność, a przyczyna leży gdzie indziej. Gdzie? Często w cenie, dostępności towaru, koszyku albo szybkości strony.
W tym artykule pokazuję proces audytu, który oddziela problemy reklamowe od problemów sklepu: pomiar, cena, dostępność, koszyk i szybkość. Dostajesz matrycę diagnostyczną, dane z badań o porzuceniach koszyka i szybkości oraz symulację, która izoluje wpływ braków magazynowych od zmian w wydatkach reklamowych i pokazuje, że wzrost udziału ruchu na niedostępne produkty z 5% do 30% potrafi sam wytłumaczyć cały spadek współczynnika konwersji z 2,10% do 1,60%. Zanim cokolwiek zmienisz w Google Ads, wyklucz błąd pomiaru.
Jak rozpoznać, że spadek konwersji nie wynika z kampanii?
Spadek konwersji nie wynika z kampanii, gdy jakość i struktura ruchu się nie zmieniły (te same źródła, zapytania, urządzenia, podobny CPC i odsetek nowych użytkowników), a pogorszyło się zachowanie użytkowników na stronie: rzadziej dodają do koszyka, częściej porzucają checkout albo trafiają na niedostępne produkty. Wtedy naprawiasz sklep, a nie stawki.
Sprawdzam to w prostym porównaniu dwóch okresów o tej samej długości (np. 4 tygodnie wobec 4 tygodni lub rok do roku przy sezonowości). Jeśli zapytania, kanały i urządzenia są podobne, a spada odsetek sesji z dodaniem do koszyka lub przejściem do płatności, szukaj przyczyny w ofercie lub na stronie. Jeśli zmienił się miks ruchu (np. PMax przesunął budżet do sieci reklamowej), to jest problem kampanii i opisuję go w tekście o spadku ROAS w Performance Max.
Krok zero: czy spadek jest w ogóle prawdziwy?
Zanim zaczniesz audyt UX, porównaj zamówienia w GA4 i w Google Ads z zamówieniami w systemie sklepu. Sklep sprzedaje tyle samo, a spada tylko liczba konwersji w raportach? Wtedy problem dotyczy pomiaru. Sprzedaż jest w porządku.
Najczęstsze przyczyny takiego „spadku”: zmiana banera zgód, nowa bramka płatności nadpisująca źródło sesji, wdrożenie nowego motywu bez tagów, zdublowane lub zgubione zdarzenie purchase. Pełną listę opisuję w artykule o rozbieżnościach GA4 i CRM. Pamiętaj też, że od 15 czerwca 2026 przekazywanie danych z GA4 do Google Ads zależy wyłącznie od ad_storage w Consent Mode, więc zmiana konfiguracji zgód potrafi obniżyć konwersje w Ads bez zmiany sprzedaży.
Trzy rozłączne źródła spadku po stronie sklepu
Jeśli pomiar jest szczelny, a ruch się nie zmienił, przyczyny dzielę na trzy rozłączne grupy, które razem obejmują wszystko, co dzieje się po kliknięciu: oferta (co sprzedajesz: cena, dostępność), ścieżka zakupu (jak sprzedajesz: koszyk, dostawa, płatności, zaufanie) i technika (czy strona działa: szybkość, błędy). Każda zostawia w danych inne ślady.
| Grupa | Typowy sygnał w danych | Gdzie sprawdzić | Pierwsze pytanie |
|---|---|---|---|
| Oferta: cena | spada odsetek dodań do koszyka na kartach produktów, mimo stabilnego ruchu | raport konkurencyjności cenowej w Merchant Center, porównanie z marketplace’ami | czy konkurencja obniżyła ceny lub koszty dostawy? |
| Oferta: dostępność | rośnie udział sesji na produktach niedostępnych; spada liczba wyświetleń bestsellerów w Zakupach | eksport stanów z systemu sklepu, raport produktów w Merchant Center, GA4 na poziomie produktu | czy bestsellery są dostępne i czy feed to odzwierciedla? |
| Ścieżka zakupu | stabilne dodania do koszyka, spadek przejść z koszyka do zakupu | lejek w GA4 (add_to_cart → begin_checkout → add_payment_info → purchase), nagrania sesji |
co zmieniło się w kosztach dostawy, płatnościach, formularzu? |
| Technika | spadek konwersji tylko na jednym urządzeniu lub przeglądarce; wzrost błędów | Core Web Vitals w Search Console, PageSpeed Insights, logi błędów JavaScript | czy było wdrożenie, nowa wtyczka lub skrypt zewnętrzny? |
Kolejność sprawdzania ma znaczenie. Dostępność i cena są najszybsze do zweryfikowania i najczęściej tłumaczą nagłe spadki, podczas gdy ścieżka zakupu i technika wymagają więcej danych i w moich audytach częściej odpowiadają za spadki powolne, rozłożone na miesiące, których nikt nie łączy z konkretnym wdrożeniem. W tej samej kolejności przechodzę sklep, gdy prowadzę dla klienta optymalizację konwersji.
Tarcie w koszyku: co mówią dane o porzuceniach?
Baymard Institute zestawia 50 badań porzuceń koszyka i szacuje średni odsetek na 70,22%. Dużo? Sama liczba niewiele mówi, bo część osób dodaje produkty do koszyka tylko po to, żeby sprawdzić cenę z dostawą. Ważniejsze są przyczyny porzuceń w samym procesie zamówienia. Według badania Baymard (odpowiedzi osób, które porzuciły zamówienie, z wyłączeniem tych, którzy „tylko przeglądali”):
- zbyt wysokie dodatkowe koszty (dostawa, podatki, opłaty): 40%,
- zbyt długi czas dostawy: 20%,
- brak zaufania do strony przy podawaniu danych karty: 19%,
- wymuszone zakładanie konta: 18%,
- zbyt długi lub skomplikowany proces zamówienia: 17%,
- błędy lub awarie strony: 17%,
- niezadowalająca polityka zwrotów: 13%,
- brak możliwości sprawdzenia łącznego kosztu z góry: 12%,
- odrzucona karta: 10%,
- za mało metod płatności: 9%.
Baymard szacuje też, że przeciętny duży sklep może podnieść współczynnik konwersji o 35,26% dzięki lepszemu projektowi checkoutu. To potencjał wyliczony na podstawie testów dużych sklepów w USA i UE. Obietnicą dla każdego sklepu nie jest. Badanie dotyczy głównie rynku amerykańskiego, więc w Polsce część przyczyn wygląda inaczej, a metoda płatności ma u nas zupełnie inną wagę, bo klienci oczekują szybkich przelewów i płatności mobilnych, a karta to tylko jedna z kilku opcji.
Na co patrzę w pierwszej kolejności, gdy spadają przejścia z koszyka do zakupu:
- Koszt dostawy i próg darmowej dostawy. Czy zmienił się cennik kuriera lub próg? Czy koszt jest widoczny przed checkoutem?
- Metody płatności. Czy któraś metoda przestała działać lub zniknęła? Porównaj udział metod płatności w zamówieniach przed i po spadku.
- Formularz. Czy dodano obowiązkowe pole, weryfikację, wymuszone konto?
- Czas dostawy. Czy termin wysyłki na karcie produktu się wydłużył, np. przez przejście na towar z magazynu dostawcy?
Brak konkurencyjności cenowej: jak to zmierzyć?
Klient z reklamy produktowej porównuje ceny w kilka sekund. Jeśli konkurent lub marketplace obniżył cenę albo koszt dostawy, Twoja reklama nadal zbiera kliknięcia, tyle że coraz rzadziej zamienia je w zakup, a w panelu wygląda to po prostu jak spadek CR przy stabilnym CTR, który łatwo zrzucić na kampanię.
Narzędziem pierwszego wyboru jest raport konkurencyjności cenowej w Merchant Center (dostępny dla sklepów spełniających wymagania programu). Pokazuje cenę referencyjną (benchmark) dla Twoich produktów i dzieli je na trzy grupy: powyżej ceny referencyjnej (o ponad 1%), na jej poziomie (±1%) i poniżej (o co najmniej 1%). Obok widzisz kliknięcia na produkt, więc łatwo znaleźć bestsellery, które wypadły z konkurencyjnego przedziału.
Jak używam tego raportu w diagnozie:
- Eksport produktów z największą liczbą kliknięć z ostatnich 30 dni.
- Porównanie różnicy cenowej wobec benchmarku z okresem sprzed spadku.
- Zestawienie z CR na poziomie produktu w GA4 lub Google Ads.
- Decyzja per produkt: zmiana ceny, zmiana kosztu dostawy, ograniczenie stawek albo wyłączenie z kampanii do czasu zmiany ceny.
Ostatni punkt jest ważny finansowo. Jeśli produkt jest o 15% droższy niż rynek, a marża nie pozwala obniżyć ceny, dalsze kupowanie kliknięć tylko obniża ROAS całego konta. Takie decyzje łatwiej podejmować, gdy feed ma etykiety marży i cenowej konkurencyjności, o czym piszę w tekście o optymalizacji feedu produktowego.
Błędy szybkości: kiedy strona naprawdę hamuje sprzedaż?
Core Web Vitals to trzy wskaźniki Google opisujące doświadczenie użytkownika: szybkość wczytania głównej treści (LCP), stabilność układu (CLS) i responsywność na interakcje (INP). INP zastąpił wcześniejszy wskaźnik FID. Za dobry wynik uznaje się INP do 200 ms, 200–500 ms wymaga poprawy, powyżej 500 ms to wynik słaby. Ocenia się 75. percentyl odsłon, osobno dla urządzeń mobilnych i komputerów.
Dla sklepu INP jest szczególnie ważny, bo mierzy opóźnienie po kliknięciu w „Dodaj do koszyka”, wybór wariantu czy przejście do płatności. Najczęstsza przyczyna pogorszenia? Nowy skrypt zewnętrzny: czat, widżet opinii, narzędzie do testów A/B, dodatkowy tag marketingowy.
Ile to kosztuje? Badanie Deloitte Digital „Milliseconds Make Millions” (2020, 37 marek z Europy i USA) wykazało, że poprawa szybkości mobilnej strony o 0,1 s wiązała się ze wzrostem konwersji w handlu detalicznym o 8% i niemal 10% wyższymi wydatkami klientów. To korelacja z konkretnej próby. Stałym przelicznikiem nie jest. Dobrze pokazuje jednak skalę.
W diagnozie spadku szukam zbieżności w czasie: czy pogorszenie Core Web Vitals w Search Console lub wzrost błędów JavaScript nastąpiły w tym samym tygodniu co spadek CR, i czy spadek jest skupiony na jednym typie urządzenia. Jeśli CR spadł tylko na mobile, a na desktopie jest stabilny, technika jest pierwszym podejrzanym.
Braki magazynowe: jak odizolować ich wpływ od wydatków reklamowych?

Braki magazynowe działają w kampaniach na dwa sposoby. W reklamach produktowych produkt oznaczony w feedzie jako out_of_stock przestaje się wyświetlać, więc widzisz spadek wyświetleń i przychodu. CR stoi. W reklamach tekstowych, kampaniach kierujących na kategorie i przy opóźnionej aktualizacji feedu użytkownik nadal trafia na niedostępny produkt, więc płacisz za kliknięcie, które nie może zakończyć się zakupem. Wtedy spada CR.
Google wymaga zgodności dostępności w feedzie, na stronie docelowej i w checkoucie. Niezgodność kończy się odrzuceniem produktów, a przy powtarzających się problemach może eskalować. Opisuję to w artykule o zawieszeniu konta Merchant Center. Pomaga funkcja automatycznych aktualizacji produktów, która koryguje dostępność na podstawie strony docelowej.
Symulacja: rozdzielenie efektu braków i efektu kampanii
Policzmy to na sklepie ze średnim koszykiem 300 zł. To przykład liczbowy zbudowany na założeniach. Danych klienta tu nie ma. Założenia: dwa okresy po 4 tygodnie, 50 000 sesji z kampanii w każdym, średnia wartość zamówienia 300 zł. CR na produktach dostępnych 2,2%, na niedostępnych 0,2% (część osób kupuje zamiennik). W okresie A 5% sesji trafia na niedostępne produkty, w okresie B 30%. CPC rośnie z 1,20 zł do 1,26 zł.
| Wskaźnik | Okres A | Okres B | Zmiana |
|---|---|---|---|
| Wydatki | 60 000 zł | 63 000 zł | +5,0% |
| Sesje z kampanii | 50 000 | 50 000 | 0,0% |
| Sesje na produktach dostępnych | 47 500 | 35 000 | −26,3% |
| Sesje na produktach niedostępnych | 2 500 | 15 000 | +500% |
| CR na produktach dostępnych | 2,20% | 2,20% | bez zmian |
| CR na produktach niedostępnych | 0,20% | 0,20% | bez zmian |
| Zamówienia | 1 050 | 800 | −23,8% |
| CR łączny | 2,10% | 1,60% | −0,50 pp |
| CPA | 57,14 zł | 78,75 zł | +37,8% |
| Przychód | 315 000 zł | 240 000 zł | −23,8% |
| ROAS | 5,25 | 3,81 | −27,4% |
CR na produktach dostępnych się nie zmienił. Cały spadek łącznego CR wynika ze zmiany struktury ruchu: większa część płatnych sesji trafia na towar, którego nie ma. Rozkład wzrostu CPA na dwa czynniki:
| Scenariusz kontrfaktyczny | Zamówienia | CPA | Wniosek |
|---|---|---|---|
| Okres A (punkt wyjścia) | 1 050 | 57,14 zł | — |
| Okres B, ale udział braków jak w A (5%) | 1 050 | 60,00 zł | efekt CPC: +5% |
| Okres B, ale CPC jak w A (1,20 zł) | 800 | 75,00 zł | efekt braków: +31,25% |
| Okres B (rzeczywisty) | 800 | 78,75 zł | łącznie +37,8% (1,05 × 1,3125) |
W tym przykładzie braki magazynowe kosztują 250 zamówień i 75 000 zł przychodu w 4 tygodnie. Na sesje na niedostępnych produktach poszło 18 900 zł budżetu (15 000 × 1,26 zł), które przyniosły 30 zamówień, czyli mniej więcej tyle, ile sklep sprzedaje z kampanii w jeden dzień, przy koszcie ponad tygodnia jej działania. Czy zmiana stawek albo celu ROAS by to naprawiła? Nie. Naprawa to aktualny feed, wyłączenie reklam tekstowych kierujących na niedostępne produkty i przekierowanie ruchu na zamienniki.
Jak zrobić tę analizę na własnych danych?
- Wyeksportuj dzienny stan magazynowy per produkt (SKU) z systemu sklepu za oba okresy.
- Z GA4 pobierz sesje z kampanii i zakupy według strony docelowej lub produktu (
item_id), osobno dla każdego dnia. - Połącz dane po produkcie i dniu, oznacz każdą sesję jako „dostępny” lub „niedostępny” w dniu wizyty.
- Policz CR osobno dla obu grup i udział sesji na niedostępnych produktach.
- Jeśli CR w grupie dostępnych jest stabilny, spadek tłumaczy dostępność. Jeśli spada też w tej grupie, szukaj przyczyny w cenie, koszyku lub technice.
Przy dużej liczbie produktów rób to w hurtowni danych lub arkuszu z eksportu BigQuery. Jeśli dane o stanach nie są nigdzie archiwizowane, to jest pierwszy element do naprawy. Porządkowanie takich luk opisuję w tekście o audycie infrastruktury marketingowej.
Audyt w 10 krokach, w kolejności, którą stosuję
- Zamówienia w systemie sklepu vs GA4 vs Google Ads w obu okresach. Jeśli różnica jest tylko w raportach, napraw pomiar.
- Struktura ruchu: kanały, zapytania, urządzenia, nowi/powracający. Jeśli się zmieniła, zacznij od kampanii.
- Lejek GA4 od wyświetlenia produktu do zakupu: gdzie dokładnie spadł odsetek przejść.
- Dostępność: udział sesji na niedostępnych produktach, stan bestsellerów, zgodność feedu ze stroną.
- Cena: raport konkurencyjności cenowej dla produktów z największą liczbą kliknięć.
- Koszty dostawy i próg darmowej dostawy wobec głównych konkurentów.
- Płatności: udział metod w zamówieniach, błędy bramki, odrzucenia.
- Checkout: zmiany w formularzu, obowiązkowe konto, nowe pola, komunikaty błędów.
- Technika: Core Web Vitals (INP, LCP, CLS) w Search Console, błędy JavaScript, lista wdrożeń z ostatnich tygodni.
- Decyzja i test: jedna zmiana naraz, z pomiarem przed i po, zamiast równoległych poprawek, których efektów nie da się rozdzielić.
Kampanii nie wstrzymuję w trakcie diagnozy. Ograniczam tylko wydatki na produkty niedostępne lub niekonkurencyjne cenowo, a stawki i cele zostawiam bez zmian, dopóki nie wiem, czy problem leży po stronie reklam, bo każda taka zmiana wprowadza algorytm w fazę uczenia i nie przywróci sprzedaży, jeśli przyczyna siedzi w sklepie.
Mini-słownik pojęć
- CR (współczynnik konwersji) — odsetek sesji zakończonych zakupem.
- Porzucenie koszyka — dodanie produktu do koszyka bez złożenia zamówienia.
- Core Web Vitals — wskaźniki Google oceniające szybkość, stabilność i responsywność strony.
- INP (Interaction to Next Paint) — opóźnienie reakcji strony na kliknięcie lub dotknięcie.
- Cena referencyjna (benchmark) — punkt odniesienia w raporcie konkurencyjności cenowej Merchant Center.
- Efekt struktury (miksu) — zmiana wskaźnika łącznego wynikająca ze zmiany udziałów grup, a nie z wyników w grupach.
- Automatyczne aktualizacje produktów — funkcja Merchant Center korygująca cenę i dostępność na podstawie strony produktu.
Na czym opieram ten tekst
- Baymard Institute: Cart Abandonment Rate Statistics
- web.dev: Interaction to Next Paint (INP)
- WARC / Deloitte Digital: Milliseconds make millions
- Google Merchant Center Help: Availability [availability]
- Search Engine Land: How to use Google’s price competitiveness report in Merchant Center
Co zrobić dalej
Sprawdźmy, Gdzie Naprawdę Gubisz Sprzedaż
W 30 minut przejdziemy przez dane z kampanii, lejek w GA4 i dostępność produktów, a ja wskażę, czy spadek konwersji wynika z reklam, oferty czy sklepu. Bez zobowiązań.