Przykładowy raport z audytu SEO i GEO

Tak wygląda raport, który dostajesz po audycie. Pokazujemy go na zmyślonym sklepie, więc nazwy i liczby są przykładowe. Układ, rodzaj dowodów i sposób opisu zadań są takie same jak w raportach dla klientów.

Przykładowy raport · sklep.example · stan na 28 października 2026 · wszystkie liczby zmyślone

1

Podsumowanie dla zarządu

Zarząd
  1. 412 z 640 stron kategorii jest poza indeksem Google. Wszystkie wskazują w kodzie stronę główną jako kanoniczną, a Google przyjął to wskazanie. Źródłem jest szablon kategorii (zadanie T-01).
  2. Roboty skanują około 38 000 adresów tworzonych przez filtry. Nowe produkty dłużej czekają na wizytę Googlebota (T-02).
  3. Na 20 pytań kupujących marka pojawia się w 14% wyników asystentów AI. Trzej główni konkurenci: od 18% do 34%.

Decyzje po stronie firmy

  • Około 10 dni pracy programisty w pierwszym miesiącu.
  • Osoba, która napisze lub zatwierdzi teksty 20 kategorii.
  • Jedna wersja danych firmy: nazwa, adres, godziny.
  • Krytyczny 2
  • Wysoki 6
  • Średni 11
  • Niski 8

27 zadań według priorytetu (dane przykładowe).

2

Punkt startu

Marketing

Mierzymy tylko widoczność: pozycje, indeks i obecność marki w odpowiedziach AI. Te same wskaźniki i ta sama metoda wracają w pomiarach kontrolnych.

Frazy w TOP10 Google
214narzędzie do śledzenia pozycji: 300 fraz, Polska, telefonKolejny pomiar: co miesiąc
Widoczność domeny
1 240wskaźnik widoczności w narzędziu (np. Senuto)Kolejny pomiar: co miesiąc
Kategorie w indeksie Google
228 z 640Search Console, raport StronyKolejny pomiar: w 6. i 13. tygodniu
Obecność marki w odpowiedziach AI
14%11 z 80 wyników (wzmianka lub link)Kolejny pomiar: w 13. tygodniu
Odpowiedzi AI z linkiem do sklepu
7 z 80te same wynikiKolejny pomiar: w 13. tygodniu
3

Lista problemów

Wszyscy

Fragment listy: 8 z 27 zadań. Adresy, których dotyczy zadanie, są w pliku Excel, w arkuszu o numerze zadania. Przy każdym zadaniu podajemy też źródło: dokumentację Google albo, przy botach AI, dokumentację firmy, która je prowadzi. Kolejność wyznacza wpływ na widoczność, pilność, nakład pracy i zależności między zadaniami.

Źródła sprawdzono 3 listopada 2026.

NrProblemObszarSkalaPriorytetKtoNakładŹródło
T-01 Kategorie wskazują stronę główną jako kanoniczną Indeksacja 412 adresów Krytyczny Programista 1 dzień Google: duplikaty i adres kanoniczny
T-02 Filtry tworzą adresy dostępne dla robotów bez ograniczeń Skanowanie ok. 38 000 adresów Krytyczny Programista 2–3 dni Google: nawigacja fasetowa
T-03 Opis produktu jest w kodzie dopiero po wykonaniu JavaScriptu Renderowanie 2 900 produktów Wysoki Programista 3–5 dni Google: podstawy SEO JavaScriptu
T-04 Brak danych strukturalnych produktu z ceną i dostępnością Dane strukturalne 2 900 produktów Wysoki Programista 2 dni Google: dane strukturalne produktu
T-05 Kategorie bez tekstu, który odpowiada na pytania kupujących Treści 20 kategorii Wysoki Treści 6 tygodni Google: przydatne treści
T-06 Różne dane firmy w stopce, kontakcie i wizytówce Google Dane firmy i Profil Firmy 3 miejsca Średni Marketing 1 dzień Google: wytyczne Profilu Firmy
T-07 Plik robots.txt blokuje OAI-SearchBot, bota wyszukiwarki ChatGPT Dostęp botów AI cały serwis Średni Programista 1 godzina OpenAI: boty OpenAI
T-08 Mapa witryny zawiera adresy z przekierowaniem 301 Mapa witryny 186 adresów Niski Programista pół dnia Google: tworzenie mapy witryny
4

Ustalenia z dowodami

Wszyscy

Każde zadanie z listy ma w raporcie taką kartę: opis problemu, dowód ze strony, źródło w dokumentacji Google, wpływ na widoczność i poprawka. Poniżej karta zadania T-01.

Dwa roboty przy dwóch podobnych stronach, jedna z koroną strony kanonicznej

T-01 · Indeksacja

Kategorie wskazują stronę główną jako kanoniczną

Krytyczny412 adresówProgramista, 1 dzień

Problem

412 z 640 stron kategorii ma w kodzie adres kanoniczny ustawiony na stronę główną. Google przyjął to wskazanie: w Search Console te kategorie są poza indeksem, a jako adres kanoniczny wybrany przez Google widnieje strona główna.

Dowód

Kod strony https://sklep.example/garnki/

<head>
  <title>Garnki – sklep.example</title>
  <link rel="canonical" href="https://sklep.example/">
</head>
Kategoria „Garnki” wskazuje stronę główną. Tak samo 411 innych kategorii (pełna lista w arkuszu T-01).

w indeksiepoza indeksem, kanoniczna = strona główna

  • Kategorie w indeksie228
  • Kategorie poza indeksem412
Strony kategorii według statusu w Search Console (dane przykładowe).

W raporcie dla klienta w tym miejscu są też zrzuty z Search Console: status strony („Alternatywna strona zawierająca prawidłowy tag strony kanonicznej”) oraz pola „Adres kanoniczny określony przez użytkownika” i „Adres kanoniczny wybrany przez Google”, oba ze stroną główną.

Co mówi Google

Lista adresów

Wszystkie 412 adresów do poprawy są w pliku Excel dołączonym do raportu (audyt-sklep.example-adresy.xlsx), w arkuszu „T-01 Kategorie”. Każde zadanie z listą adresów ma w tym pliku własny arkusz.

audyt-sklep.example-adresy.xlsx

AdresKanoniczny dziśKanoniczny docelowy
https://sklep.example/garnki/https://sklep.example/https://sklep.example/garnki/
https://sklep.example/noze/https://sklep.example/https://sklep.example/noze/
https://sklep.example/patelnie/https://sklep.example/https://sklep.example/patelnie/
… i 409 kolejnych wierszy

Spis zadańT-01 KategorieT-02 FiltryT-03 ProduktyT-04 Dane…

Dlaczego to ważne

Kategorie odpowiadają na ogólne zapytania, takie jak „garnki indukcyjne” czy „noże kuchenne”. Kategorie poza indeksem nie budują własnej widoczności na te zapytania. Błędny adres kanoniczny ogranicza też efekt pracy nad opisami i linkami do kategorii, dlatego to zadanie jest pierwsze w planie.

Co poprawić

Każda podstawowa kategoria wskazuje jako kanoniczny własny adres. Kolejne strony listy wskazują siebie, na przykład /garnki/?page=2. Zasady dla stron z filtrami ustalamy osobno w zadaniu T-02.

Propozycja poprawki

Zmiana w szablonie kategorii opisana jako zadanie dla programisty: stan obecny, stan docelowy, kryteria odbioru i test. Zobacz zadanie T-01.

Kto wdraża

Programista: jedna zmiana w szablonie kategorii, około 1 dnia. Odbiór: my.

Jak sprawdzić

  1. Zaraz po wdrożeniu: skanujemy wszystkie 412 adresów z arkusza i sprawdzamy, że każdy wskazuje sam siebie.
  2. Gdy Google ponownie odwiedzi strony: w Search Console sprawdzamy dla próbki kategorii pole „Adres kanoniczny wybrany przez Google”.
  3. Po kilku tygodniach: liczba kategorii w indeksie w raporcie Strony.
5

Zadania dla programisty

Programista

Zadania techniczne zapisujemy tak, żeby dało się je skopiować do systemu zadań bez tłumaczenia z języka SEO.

T-01 · szablon kategorii

Kategoria: link kanoniczny na własny adres

Jest
<link rel="canonical" href="https://sklep.example/">
Ma być
<link rel="canonical" href="https://sklep.example/garnki/">
Strona 2 listy
<link rel="canonical" href="https://sklep.example/garnki/?page=2">

Kryteria odbioru

  • Każda kategoria wskazuje swój adres, bez parametrów filtrów i sortowania.
  • Kolejne strony listy wskazują same siebie.
  • Adres kanoniczny jest w HTML z serwera, bez potrzeby uruchamiania JavaScriptu.

Jak przetestować

curl -fsS https://sklep.example/garnki/ | grep -i 'rel="canonical"'

Szybki podgląd jednej strony. Pełny odbiór obejmuje wszystkie adresy z arkusza T-01: jeden tag kanoniczny w sekcji head, wskazujący własny adres, także na kolejnych stronach listy.

6

Widoczność w odpowiedziach AI

Marketing

Każdemu z 4 asystentów zadajemy te same 20 pytań kupujących, każde 3 razy, z zapisem daty, modelu i trybu wyszukiwania. Wynik to to, co asystent zrobił w co najmniej 2 z 3 prób. Gdy każda próba dała co innego, wynik jest zmienny. Poniżej 5 z 20 pytań.

PytanieChatGPTGeminiPerplexityClaude
Jaki garnek wybrać na indukcję?Brak markiWymienia markęLink do sklepuWynik zmienny
Gdzie kupić japońskie noże kuchenne?Link do sklepuWymienia markęLink do sklepuBrak marki
Czy patelnia stalowa działa na indukcji?Brak markiBrak markiBrak markiBrak marki
Sklep z wyposażeniem kuchni z darmową dostawąWymienia markęBrak markiWymienia markęBrak marki
Jak dobrać garnek do pola grzewczego?Brak markiBrak markiLink do sklepuBrak marki
  • Link do sklepu
  • Wymienia markę
  • Brak marki
  • Wynik zmienny

audytowana markakonkurenci

  • Konkurent A34
  • Konkurent B28
  • Konkurent C18
  • sklep.example14
Obecność marki (wzmianka lub link), % z 80 wyników. Marka: 11 z 80, A: 27, B: 22, C: 14 (dane przykładowe).

Co z tego wynika

Na pytania poradnikowe asystenci cytują konkurenta A, który ma odpowiedź w treści kategorii. Teksty kategorii (T-05) i opis produktu w HTML (T-03) dają im materiał do cytowania.

7

Plan wdrożeń na 90 dni

Wszyscy
  1. Dni 1–30

    Usuwamy blokady indeksacji i skanowania.

  2. Dni 31–60

    Porządkujemy produkty, dane i treści kategorii.

  3. Dni 61–90

    Teksty kategorii, pomiar końcowy w 13. tygodniu.

Etapy planu. Kolejność wynika z zależności między zadaniami.
Zadanie 12345678910111213
T-01 Adres kanoniczny kategorii
T-07 Robots.txt dla botów AI
T-02 Filtry poza skanowaniem
T-04 Dane strukturalne produktu
T-03 Opis produktu w HTML
T-06 Jedna wersja danych firmy
T-05 Teksty 20 kategorii
Pomiar Pomiar kontrolny
Pomiar Pomiar końcowy
  • Praca programisty
  • Treści i dane firmy
  • Pomiar
8

Jak sprawdzimy efekt

Marketing
Po każdym wdrożeniu
Odbiór zadania według kryteriów z karty: skanowanie strony, kod strony, Search Console.
Tydzień 6
Pomiar kontrolny: kategorie w indeksie, frazy w TOP10, widoczność domeny.
Tydzień 13
Pomiar końcowy: te same wskaźniki i te same 20 pytań zadane każdemu asystentowi w tych samych ustawieniach.
9

Załączniki

Wszyscy
  • XLSXAdresy do poprawy: osobny arkusz dla każdego zadaniaaudyt-sklep.example-adresy.xlsx
  • XLSXWyniki skanowania strony41 300 adresów
  • XLSXOdpowiedzi asystentów AI z datą, modelem i treścią240 odpowiedzi
  • PDFZrzuty z Search Console14 stron

Fragmenty audytów innych stron

Błędy znalezione na publicznych stronach dużych firm. Żadna z nich nie jest naszym klientem. Każdy fragment dotyczy innego problemu i innej strony i ma ten sam układ co karta T-01. Zamiast nazwy podajemy opis firmy, a przy każdym fragmencie datę sprawdzenia.

  1. Fragment 1 · sprawdzono 3 listopada 2026

    Kolejne strony listy produktów wskazują pierwszą stronę jako kanoniczną

    Jedna z największych sieci drogerii w Polsce, kategoria z ok. 3 500 produktami na 145 stronach

    Dowód
    GET /kategoria/perfumy,13264?Page=2    → 200
    <link rel="canonical" href="https://www.••••.pl/kategoria/perfumy,13264">
    
    GET /kategoria/perfumy,13264?Page=145  → 200
    <link rel="canonical" href="https://www.••••.pl/kategoria/perfumy,13264">
    
    Strona 1 i strona 2: po 24 produkty, żaden się nie powtarza.
    Sprawdzone strony: 2 i 145 (oraz 2 dla Googlebota).

    Co mówi Google

    Dlaczego to ważne

    Sprawdzone dalsze strony listy pokazują inne produkty niż strona 1, a mimo to wskazują ją jako wersję główną. To niezgodne z zaleceniami Google dla paginacji i może utrudniać indeksowanie dalszych stron listy oraz produktów, do których prowadzą.

    Co poprawić

    Ustawić na każdej stronie listy adres kanoniczny wskazujący tę samą stronę, np. na ?Page=2 adres ?Page=2.

    Zastrzeżenie: Sprawdzone produkty są też w mapie witryny, co daje Google drugą drogę do ich odkrycia. Nie sprawdziliśmy, jaki adres kanoniczny wybrało Google, ani stanu indeksacji, bo nie mamy dostępu do Search Console tej strony.

  2. Fragment 2 · sprawdzono 3 listopada 2026

    Błędne oznaczenia wersji językowych (hreflang)

    Polska marka galanterii skórzanej ze sklepami w kilku krajach Europy

    Dowód
    Strona główna wersji ukraińskiej:
    <link rel="alternate" hreflang="at" href="https://www.••••.at">
    (pozostałe domeny marki w tym miejscu: hreflang="de-AT")
    
    Kategoria „galanteria”, wersje PL, CZ, DE i RO:
    <link rel="alternate" hreflang="uk" href="https://www.••••.ua/halantereia">
    /halantereia → 308 → /halantereya  (adres kanoniczny strony UA)

    Co mówi Google

    • Kod w hreflang określa język w formacie ISO 639-1, opcjonalnie z regionem. Wskazania między wersjami muszą być wzajemne i obejmować samą stronę. Gdy strona Y nie wskazuje zwrotnie strony X, Google może pominąć te oznaczenia.

      Google Search Central: wersje strony w różnych językach

    Dlaczego to ważne

    „at” to kod kraju (Austria), a nie języka, więc Google nie dostaje prawidłowej informacji o wersji austriackiej. Wersja ukraińska kategorii jest wskazywana adresem z przekierowaniem, a nie swoim adresem kanonicznym, więc oznaczenia są niespójne. Może to utrudniać Google wybór właściwej wersji językowej w wynikach.

    Co poprawić

    Zamienić hreflang="at" na de-AT. W danych, z których powstają oznaczenia, wpisać ukraiński adres kanoniczny /halantereya i sprawdzić pozostałe adresy tej wersji.

    Zastrzeżenie: Sprawdziliśmy jedną kategorię z tą rozbieżnością i drugą, w której wskazanie wersji ukraińskiej było spójne. Nie wiemy, jak Google interpretuje wskazanie adresu z przekierowaniem 308.

  3. Fragment 3 · sprawdzono 3 listopada 2026

    Programom przedstawiającym się jako boty AI serwer zwraca HTML bez treści artykułu

    Duża sieć hipermarketów, serwis z blogiem poradnikowym

    Dowód
    Ten sam artykuł, różne programy pobierające:
    
    przeglądarka, GPTBot, OAI-SearchBot,
    ClaudeBot, PerplexityBot     → 200 · 2 032 B
      <div id="app"></div>   bez nagłówka H1 i bez tekstu
    
    Googlebot, bingbot           → 200 · 444 424 B
      pełny artykuł z nagłówkiem H1
    
    robots.txt nie blokuje tego artykułu dla testowanych botów AI.

    Co mówi Google

    Dlaczego to ważne

    Dla nazw Googlebota i bingbota serwer zwraca gotowy HTML z artykułem, dla pozostałych pusty szablon aplikacji. Roboty, które pobierają tę wersję i nie wykonują JavaScriptu, nie odczytają z niej treści. Może to ograniczać wykorzystanie poradników w odpowiedziach asystentów AI.

    Co poprawić

    Docelowo generować treść na serwerze dla wszystkich odwiedzających. Tymczasowo można rozszerzyć istniejące renderowanie o wybrane boty AI, pilnując, żeby dostawały tę samą, aktualną treść co użytkownicy.

    Zastrzeżenie: Test wykonaliśmy programem curl z ustawionym nagłówkiem User-Agent, z własnego adresu IP. Nie potwierdziliśmy odpowiedzi dla prawdziwych robotów ani stanu indeksacji artykułu.

  4. Fragment 4 · sprawdzono 3 listopada 2026

    Blokady z ogólnej grupy robots.txt nie obowiązują Googlebota

    Duży sklep odzieżowy należący do międzynarodowej grupy handlowej

    Dowód
    User-agent: *
    Disallow: /cart/*
    Disallow: /checkout/*
    Disallow: /koszyk/*
    Disallow: /szukaj/*
    Disallow: /api/
    …
    
    User-agent: Googlebot
    Allow: /api/

    Co mówi Google

    Dlaczego to ważne

    Googlebot stosuje tylko swoją grupę, a w niej jest wyłącznie zgoda na /api/. Żadna blokada z grupy ogólnej (koszyk, zamówienie, wyszukiwarka wewnętrzna) go nie dotyczy, więc może skanować te części serwisu.

    Co poprawić

    Jeśli blokady mają obowiązywać także Googlebota: zachować jego grupę, przenieść do niej potrzebne reguły Disallow z grupy ogólnej i zostawić Allow: /api/.

    Zastrzeżenie: Nie znamy zamiaru właściciela ani tego, ile takich adresów Googlebot faktycznie odwiedza. To wymaga logów serwera albo Search Console.

  5. Fragment 5 · sprawdzono 3 listopada 2026

    Zdjęcia innych produktów w danych strukturalnych produktu

    Duży internetowy supermarket

    Dowód
    Karta czekolady marki A, znacznik Product (microdata):
    image 1:  czekolada marki B
    image 2:  czekolada marki B, inny wariant
    image 3:  czekolada marki C
    …
    image 11: czekolada marki A  ← właściwy produkt
    razem 53 wartości image, 52 dotyczą innych produktów

    Co mówi Google

    Dlaczego to ważne

    Znacznik produktu obejmuje też karuzele z polecanymi produktami, więc przekazuje Google zdjęcia innych produktów. To narusza wymagania Google dla danych produktowych.

    Co poprawić

    Zawęzić znacznik produktu do bloku z informacjami o produkcie albo zastąpić błędne microdata poprawnym JSON-LD. Oznaczyć zdjęcie właściwego produktu i sprawdzić wynik w teście wyników z elementami rozszerzonymi.

    Zastrzeżenie: Cena, waluta, dostępność i ocena w znaczniku zgadzają się ze stroną. Nie sprawdziliśmy, czy Google wykorzystuje te zdjęcia ani jak wpływa to na wyświetlanie strony.

  6. Fragment 6 · sprawdzono 3 listopada 2026

    Mapa witryny zawiera adresy z błędem 404 i przekierowania na strony z noindex

    Duża sieć handlowa z e-sklepem, mapa stron treściowych i kategorii

    Dowód
    Mapa: 2 696 adresów, każdy z <lastmod>2026-11-03</lastmod>
    (data pobrania, także przy adresach z błędem 404)
    
    Losowa próba 25 adresów:
    19 × 200, adres kanoniczny = ten sam, index
     4 × 404
     2 × 301 → strona z <meta name="robots" content="noindex,follow">

    Co mówi Google

    • W mapie powinny być adresy, które mają się pokazywać w wynikach. Datę lastmod Google uwzględnia tylko wtedy, gdy jest konsekwentnie i sprawdzalnie zgodna z ostatnią istotną zmianą strony.

      Google Search Central: tworzenie mapy witryny

    Dlaczego to ważne

    Adresy z błędem 404 i przekierowania na strony z noindex nie powinny trafiać do mapy przeznaczonej do indeksowania, a w próbie było ich 6 z 25. Każdy wpis ma tę samą datę lastmod, także adresy z błędem 404. Jeśli nie odpowiada ona zmianom stron, Google może ją pomijać.

    Co poprawić

    Umieszczać w mapie docelowe adresy kanoniczne, które zwracają 200 i mogą być indeksowane. W lastmod wpisywać datę ostatniej istotnej zmiany danej strony.

    Zastrzeżenie: Wynik dotyczy próby 25 z 2 696 adresów i nie określa udziału błędnych adresów w całej mapie.

  7. Fragment 7 · sprawdzono 3 listopada 2026

    Sprawdzone nieistniejące adresy zwracają kod 200 ze stroną błędu

    Jeden z dużych banków działających w Polsce

    Dowód
    GET /to-nie-istnieje-xyz123            → 200 OK
    GET /kredyty/to-nie-istnieje-qwe987   → 200 OK
    <title>Wystąpił błąd portalu</title>
    „Wystąpił błąd nr: … prosimy o kontakt z naszą infolinią”
    
    Sprawdzone 3 wymyślone adresy, ten sam wynik w curl
    z nagłówkiem User-Agent przeglądarki i Googlebota.
    W HTML i nagłówkach brak noindex i adresu kanonicznego.

    Co mówi Google

    Dlaczego to ważne

    Dla sprawdzonych, wymyślonych adresów serwer zwraca kod powodzenia 200 mimo komunikatu o błędzie. Nie przekazuje więc jednoznacznego statusu 404 lub 410, a Google musi sam rozpoznać stronę błędu. Narzędzia sprawdzające tylko kod odpowiedzi mogą przeoczyć linki prowadzące do takich stron.

    Co poprawić

    Dla nieistniejących adresów zwracać kod 404 (opcjonalnie 410 dla treści usuniętych na stałe), z obecnym komunikatem jako treścią strony. Prawdziwe błędy serwera oznaczać właściwym kodem 5xx, np. 503 przy czasowej niedostępności.

    Zastrzeżenie: Nie mamy danych z Search Console tego banku, więc nie wiemy, czy takie adresy są w indeksie. Google może sam rozpoznać takie odpowiedzi jako soft 404.

  8. Fragment 8 · sprawdzono 4 listopada 2026

    Dwie kategorie z menu mają noindex, choć są wymienione w mapie witryny

    Duży ubezpieczyciel należący do międzynarodowej grupy

    Dowód
    /ubezpieczenia-auto    → 200
    /kategoria-turystyka   → 200
    <meta name="robots" content="noindex" />
    znacznik canonical wskazuje własny adres strony
    
    sitemap.xml:  oba adresy są w mapie
    strona główna: po 3 linki do każdej z tych kategorii
    pozostałe 3 kategorie (ten sam szablon): bez noindex

    Co mówi Google

    Dlaczego to ważne

    Oba adresy są w mapie witryny i mają linki z menu, a noindex nakazuje Google wykluczyć je z wyników po odczytaniu dyrektywy. To sprzeczne sygnały. W pozostałych trzech kategoriach z tego samego szablonu noindex nie ma.

    Co poprawić

    Jeśli obie kategorie mają pojawiać się w Google, usunąć noindex. Jeśli wykluczenie jest zamierzone, zostawić noindex i usunąć te adresy z mapy witryny.

    Zastrzeżenie: Nie znamy zamiaru właściciela i nie sprawdziliśmy obecnego stanu tych adresów w indeksie. Na dwóch sprawdzonych stronach produktów z tych kategorii noindex nie ma.

Raporty klientów zostają u klientów

Ten raport pokazuje układ i sposób pracy. Raporty dla klientów są poufne. Nie publikujemy:

  • nazw i adresów stron klientów
  • danych z Search Console i Analytics klienta
  • pełnych raportów i załączników

← Wróć do opisu audytu: co sprawdzamy, jak przebiega audyt i od czego zależy koszt

Chcesz taki raport dla swojej strony?

Na pierwszej rozmowie ustalimy zakres audytu i to, kto w Twoim zespole będzie wdrażał zmiany.

Zamów audyt
Zamów audyt