Jak mierzymy widoczność w AI
Uczciwe liczby albo żadne. Ta strona opisuje dokładnie, skąd biorą się nasze dane — łącznie z ograniczeniami.
Silniki i dokładne wersje modeli
Ta tabela jest generowana z tego samego rejestru modeli, którego używa kod produktu. Gdy zmieniamy model, zmienia się i ona, a na wykresach pojawia się adnotacja.
| Silnik | Model | Od |
|---|---|---|
| ChatGPT | gpt-5.4-mini | 5 lipca 2026 |
| Perplexity | perplexity/sonar | 31 sierpnia 2026 |
| Google AI Overviews | google-aio | 5 lipca 2026 |
| Gemini | gemini-3.5-flash | 5 lipca 2026 |
| Claude | claude-sonnet-5 | 31 sierpnia 2026 |
1 odpowiedź na silnik na przebieg
Każdy prompt wysyłamy do każdego silnika dokładnie raz na przebieg pomiarowy — to standard branżowy.
Wielokrotne próbkowanie tej samej odpowiedzi wygląda naukowo, ale w praktyce to teatr pewności: wielokrotnie podnosi koszty, a dzienne serie i tak wygładzają losowość. Jedna odpowiedź na silnik na przebieg daje porównywalne, uczciwe trendy.
Parametry geograficzne per silnik
- ChatGPT (API): user_location ustawione na Polskę (Warszawa).
- Perplexity (API): kraj wyszukiwania ustawiony na PL.
- Google AI Overviews: wyniki pobierane z google.pl.
- Gemini: API nie udostępnia parametru geolokalizacji — mówimy to wprost. Wyniki Gemini nie są geo-targetowane.
- Claude (API): wyszukiwanie z user_location ustawionym na Polskę (Warszawa, strefa Europe/Warsaw).
Źródła w odpowiedziach — i co znaczy „cytowanie”
Przy każdej odpowiedzi zapisujemy adresy źródeł dokładnie tak, jak zwraca je API danego silnika — niczego nie doklejamy z zewnątrz i niczego nie dopisujemy. Znaczenie tej listy nie jest jednak w każdym silniku takie samo, więc mówimy o tym wprost:
- ChatGPT: adnotacje url_citation przypięte do fragmentów odpowiedzi — adresy, na które powołuje się sama treść.
- Perplexity: od 31 sierpnia 2026 lista wyników wyszukiwania, które silnik pobrał — czyli źródła znalezione, nie cytowane. Szczegóły w nocie pod listą.
- Google AI Overviews: odnośniki pokazane w samym bloku AI Overview na google.pl.
- Gemini: cytowania z groundingu Google Search — adresy powiązane z fragmentami odpowiedzi.
- Claude: adnotacje web_search_result_location. Wyjątek, który nazywamy: gdy odpowiedź nie zacytowała wprost żadnego adresu, pokazujemy wyniki, które silnik pobrał — zamiast zostawiać pustą listę przy odpowiedzi jawnie opartej na sieci.
Perplexity — zmiana znaczenia metryki, 31 sierpnia 2026. Perplexity wygasza stare API (/chat/completions przestaje działać 27 września 2026) i przenosi ruch na /v1/agent; tego dnia przenieśliśmy tam nasz pomiar. Zmierzyliśmy nowe API na żywo, na produkcyjnym endpoincie — nie odczytaliśmy tego z dokumentacji: dla modelu perplexity/sonar odpowiedź nie zawiera już ani znaczników [n] w treści, ani pola annotations. Nie da się z niej odczytać, których źródeł odpowiedź faktycznie użyła — zostaje lista wyników wyszukiwania, które silnik pobrał (ok. 15 na odpowiedź; wcześniej cytowań bywało od 4 do 20). Dlatego liczba źródeł Perplexity znaczy od 31 sierpnia 2026 „to znalazł przebieg”, a nie „na to powołała się odpowiedź”. To zmiana znaczenia metryki, nie drobiazg techniczny, i tak ją nazywamy. Konsekwencje: dane Perplexity zebrane przed 31 sierpnia 2026 pochodzą ze starego API i nadal znaczą „cytowane” — nie unieważniamy ich; liczb cytowań Perplexity sprzed i po tej dacie nie porównujemy i nie zestawiamy ich na wykresach jako jednej serii; ChatGPT, Gemini i Claude są tą zmianą nietknięte i ich liczby znaczą to samo, co wcześniej.
Częstotliwość pomiarów per plan i per silnik
Tabela jest generowana z tej samej konfiguracji planów, z której korzysta harmonogram. Liczba w komórce to przebiegi na tydzień, pod nią dni tygodnia. Kreska znaczy, że w tym planie tego silnika nie ma — i tak to piszemy, zamiast zostawiać puste pole.
| Silnik | Trial | Start | Pro | Agencja |
|---|---|---|---|---|
| ChatGPT | 7 ×/tydz.codziennie | 3 ×/tydz.pn / śr / pt | 7 ×/tydz.codziennie | 7 ×/tydz.codziennie |
| Perplexity | 7 ×/tydz.codziennie | 3 ×/tydz.pn / śr / pt | 7 ×/tydz.codziennie | 7 ×/tydz.codziennie |
| Google AI Overviews | 1 ×/tydz.poniedziałki | 1 ×/tydz.poniedziałki | 1 ×/tydz.poniedziałki | 1 ×/tydz.poniedziałki |
| Gemini | 1 ×/tydz.poniedziałki | — | 1 ×/tydz.poniedziałki | 1 ×/tydz.poniedziałki |
| Claude | 1 ×/tydz.poniedziałki | — | 1 ×/tydz.poniedziałki | 1 ×/tydz.poniedziałki |
Trial trwa 14 dni i ma funkcje planu Pro na 20 promptach — dlatego jego kolumna wygląda jak kolumna Pro.
Beta — wyjątek dla Google AI Overviews: w okresie bety mierzymy je raz w tygodniu (poniedziałek) we wszystkich planach, także tam, gdzie wyżej podajemy pomiar codzienny. Powód podajemy wprost: każde zapytanie o AI Overviews kupujemy z góry u zewnętrznego dostawcy danych i na czas bety ograniczamy ten koszt. Pozostałe silniki działają z częstotliwością opisaną powyżej, a wykresy AI Overviews mają w tym okresie punkty tygodniowe, nie dzienne.
Jednostka pomiaru: jedna komórka = prompt × silnik × dzień
Wszystko, co widzisz w produkcie, jest liczone z komórek. Jedna komórka to jeden prompt zadany jednemu silnikowi jednego dnia przebiegu — czyli dokładnie jedna zapisana odpowiedź. Widoczność marki, pozycja, udział w głosie i sentyment to różne sposoby zsumowania tych samych komórek.
„Dzień” w naszych wzorach zawsze znaczy DZIEŃ PRZEBIEGU, czyli dzień, w którym pomiar faktycznie się odbył — nie dzień kalendarzowy. Bez tego plan Start (pomiar w poniedziałek, środę i piątek) miałby cztery sztuczne zera w każdym tygodniu, a jego średnie i alerty byłyby fałszywe.
Jak rozpoznajemy wzmiankę o marce
Wzmianka to licznik widoczności, więc jej definicja jest najważniejszą definicją na tej stronie. Rozpoznajemy ją dwiema warstwami, które sprawdzają się nawzajem:
- Warstwa 1 — deterministyczny skan aliasów. Dopasowanie musi mieć granicę tokenu: litera lub cyfra tuż przy nazwie unieważnia trafienie, więc „mevrotech.com” nie jest wzmianką o marce Mevro, a „(Mevro),” już tak. Skanujemy wyłącznie treść odpowiedzi — nigdy adresów źródeł, bo to, co silnik pobrał, nie jest tym, co powiedział.
- Nie składamy diakrytyków. „Łaska” i „laska” to dwa różne słowa, a fałszywa wzmianka jest gorsza niż brakująca. Warianty bez polskich znaków istnieją tylko wtedy, gdy ktoś dopisze je jako osobny alias — i widać je na liście aliasów razem z licznikiem trafień.
- Warstwa 2 — jedno wywołanie modelu na odpowiedź, ze sztywnym schematem wyniku. Zwraca listę marek, kolejność ich pierwszego wystąpienia, sentyment z dosłownym cytatem i przypisanie źródeł do marek.
- Aliasy dwuznaczne (nazwa marki, która jest zwykłym słowem — problem „Metro”) liczą się dopiero, gdy warstwa 2 potwierdzi wzmiankę. Same z siebie nie podnoszą widoczności.
- Weto homonimu: jeśli warstwa 2 zadziałała, uznała markę za nieobecną i przypisała trafiony ciąg INNEJ marce (tak samo nazwana firma z innej branży), trafienie odpada. Gdy warstwa 2 nie zadziałała, warstwa 1 pracuje sama — wolimy policzyć wzmiankę i pokazać ją do weryfikacji niż ją po cichu zgubić.
- Komórka ma wzmiankę, gdy warstwa 2 mówi „tak” ALBO został co najmniej jeden potwierdzony alias. Liczba trafień w jednej odpowiedzi nie ma znaczenia — jedna odpowiedź to najwyżej jedna wzmianka.
Definicje metryk — zawsze z mianownikiem
Każdy procent w produkcie ma widoczny mianownik, np. „80% (4 z 5 silników)”. Procent bez mianownika to marketing, nie pomiar.
- Widoczność %
- odpowiedzi ze wzmianką o marce ÷ wszystkie udane odpowiedzi w oknie pomiaru.
- Śr. pozycja
- średnia ranga marki liczona wyłącznie tam, gdzie marka została wymieniona — brak wzmianki nie zaniża średniej.
- SoV %
- wzmianki Twojej marki ÷ wzmianki wszystkich wykrytych marek (maksymalnie 1 wzmianka na markę na odpowiedź).
Wzory — dokładnie to, co robi kod
Poniżej są wzory przepisane z kodu produktu, a nie ich uproszczone opisy. Wszędzie, gdzie kod zwraca „brak danych”, piszemy to wprost — bo to jest różnica między luką a zerem.
| Metryka | Wzór | Zaokrąglenie | Brak danych, gdy… |
|---|---|---|---|
| Widoczność % | 100 × komórki ze wzmianką ÷ komórki, w których silnik odpowiedział | 0,1 pkt | żaden silnik nie odpowiedział w oknie |
| Śr. pozycja | średnia rangi marki, liczona wyłącznie po komórkach, w których marka wystąpiła | 0,01 | marka nie wystąpiła ani razu |
| Udział w głosie (SoV) % | 100 × odpowiedzi ze wzmianką o Twojej marce ÷ odpowiedzi ze wzmianką o jakiejkolwiek wykrytej marce (maks. 1 na markę na odpowiedź) | 0,1 pkt | nie wykryto żadnej marki |
| Sentyment | średnia ocena od −100 do +100 po ODPOWIEDZIACH ze wzmianką, nie po wierszach wzmianek | 0,1 | żadna odpowiedź nie została oceniona |
| Trend | średnia z 7 ostatnich dni przebiegów − średnia z 7 poprzedzających dni przebiegów | 0,1 pkt | któreś z dwóch okien jest puste |
| Baza alertu | średnia widoczności z 7 ostatnich dni przebiegów ŚCIŚLE PRZED dniem dzisiejszym (dzisiaj nie wchodzi do własnej bazy) | 0,1 pkt | historia krótsza niż 3 dni przebiegów |
Udział w głosie liczymy obecnością, nie liczbą powtórzeń: odpowiedź, która wymienia markę pięć razy, waży tyle samo co ta, która wymienia ją raz. Inaczej gadatliwość silnika udawałaby popularność. Ta sama zasada rządzi sentymentem — jedna odpowiedź to jeden głos, choćby wygenerowała pięć wierszy wzmianek.
Przypadki brzegowe — co robimy, gdy coś pójdzie nie tak
To jest lista sytuacji, w których łatwo skłamać liczbą. Opisujemy je, bo różnica między „silnik nie odpowiedział” a „silnik odpowiedział i Cię nie wymienił” decyduje o tym, czy wykres pokazuje spadek, którego nie było.
Silnik zwrócił błąd (awaria, limit, przekroczony czas)
Komórka zostaje zapisana jako nieudana i nie wchodzi do żadnego mianownika ani do bazy alertu. Nigdy nie liczymy jej jako zera — zero „bo silnik leżał” to fałszywy spadek. Na wykresie taki dzień jest przerwą w linii, nie punktem przy zerze.
Google nie pokazał AI Overview
AI Overviews nie wyzwala się dla każdego zapytania. Brak bloku traktujemy jako pomiar udany z wynikiem zero: pytanie zadaliśmy, blok się nie pojawił, więc Twojej marki tam nie było. Konsekwencja, którą trzeba znać: widoczność w AI Overviews liczy się względem WSZYSTKICH zapytań, także tych, na które Google w ogóle nie pokazał podsumowania — dlatego bywa niższa niż w pozostałych silnikach i nie jest to błąd pomiaru. Na karcie odpowiedzi piszemy wprost: „Google nie pokazał AI Overview dla tego pytania”.
Silnik odpowiedział pusto albo odmówił odpowiedzi
To też jest pomiar udany z wynikiem zero — silnik został zapytany i nie wymienił marki. Powód zapisujemy przy odpowiedzi, więc widać różnicę między „odmówił” a „nie wymienił Cię”.
Nie zapytaliśmy w ogóle (brak klucza do silnika, wyczerpany dzienny budżet)
Nie zapisujemy nawet komórki nieudanej — wiersz „nieudana” twierdziłby, że silnik był pytany. Brak wiersza to jedyny uczciwy zapis zdania „tego dnia tego pomiaru nie było”. Silnik, którego ta instalacja nie może odpytać, nie pojawia się też jako pusta karta w darmowym sprawdzeniu.
Warstwa 2 (model ekstrakcji) nie zadziałała
Zostaje deterministyczny skan aliasów: wzmianka nadal może zostać policzona, ale ta odpowiedź nie dostaje sentymentu, rangi ani listy konkurentów. Te pola zostają puste — nie zerowe i nie „neutralne”.
Marka nie wystąpiła w odpowiedzi
Pozycji nie dopisujemy nigdy: brak wzmianki to brak pozycji, a nie „ostatnie miejsce” ani zero. Dlatego średnia pozycja nie spada, gdy marka znika z odpowiedzi — spada widoczność. Mylenie tych dwóch rzeczy to najczęstszy sposób, w jaki narzędzia tej kategorii rysują nieprawdziwy wykres.
Prompt dodany lub wstrzymany w środku okna
Liczymy tylko dni, w których prompt naprawdę biegł — nie dorabiamy historii wstecz. Edycję treści promptu zaznaczamy na wykresie adnotacją, żeby skok dało się odróżnić od zmiany pytania.
Eksport CSV
Eksport zawiera kolumnę ze statusem komórki, łącznie z komórkami nieudanymi. Nie czyścimy danych przed wysłaniem ich do Ciebie — inaczej Twoje własne liczby nie zgadzałyby się z naszymi.
Progi próby — od ilu obserwacji w ogóle coś mówimy
Progi są w kodzie w jednym miejscu i obowiązują tak samo w rankingu konkurencji, na kaflach pulpitu, w sentymencie i w kalkulatorze promptów. „n” to liczba odpowiedzi, na których stoi dana liczba.
- n poniżej 10 — liczbę pokazujemy z chipem „wstępne”. To jest sygnał, żeby na niej niczego nie opierać.
- n od 10 do 29 — chip „mało danych”.
- n co najmniej 30 — chip znika. Żadnych etykiet w rodzaju „lider” poniżej tego progu.
- Trend pokazujemy dopiero przy co najmniej 12 dniach przebiegów, czyli przy co najmniej 5 dniach w każdym z dwóch porównywanych okien siedmiodniowych. Krócej — nie ma z czym porównywać.
- Alert spadku: baza z 7 ostatnich dni przebiegów, minimum 3 dni historii, a dzisiejszy dzień musi mieć co najmniej 2 udane silniki. Domyślne progi to 15 punktów dla marki i 20 punktów dla pojedynczego promptu.
- Nie ma bazy — nie ma alertu. Cisza jest uczciwsza niż alarm wyliczony z dwóch dni.
Skąd te liczby: 10 i 30 to progi zaufania do próby (poniżej 10 pojedyncza odpowiedź przesuwa wynik o ponad 10 punktów), 7 dni przebiegów to tydzień pracy silnika przy każdej kadencji, a wymóg 2 udanych silników dzisiaj chroni przed alarmem wywołanym awarią jednego dostawcy.
Czemu odpowiedź w Twoim ChatGPT może się różnić
- Personalizacja: Twój ChatGPT zna Twoją historię rozmów, pamięć i preferencje — my pytamy neutralnie, bez żadnego kontekstu.
- Model konsumencki vs API: aplikacja ChatGPT i API mogą używać innych wariantów modeli i innych ustawień wyszukiwania.
- Losowość: modele próbkują odpowiedzi — to samo pytanie może dać różne wyniki. Dlatego patrzymy na trendy w czasie, nie na pojedyncze odpowiedzi.
Czego ta metoda NIE mierzy
Najkrótsza droga do nieufności to narzędzie, które udaje, że mierzy wszystko. Poniżej jest lista rzeczy, których nasze liczby nie mówią — nawet jeśli wyglądają, jakby mówiły.
Nie mierzy tego, co widzi konkretny użytkownik
Pytamy neutralnie: bez historii rozmów, bez pamięci, bez zalogowanego konta, z lokalizacją ustawioną na Polskę. Czyjś prywatny ChatGPT ma to wszystko i może odpowiedzieć inaczej. Nasza liczba opisuje zachowanie silnika wobec pytania, nie doświadczenie jednej osoby.
Nie mierzy ruchu, kliknięć ani sprzedaży
Wzmianka to nie wizyta. Nie wiemy, ile osób weszło na Twoją stronę z odpowiedzi asystenta — to widać w logach serwera i w analityce, nie tutaj. Nasz audyt botów AI mówi tylko, czy boty w ogóle mają wstęp na stronę.
Nie mierzy „popularności marki” w oderwaniu od pytań
Widoczność jest liczona na Twojej liście promptów. Zmienisz listę — zmienią się liczby, i to jest poprawne zachowanie, a nie usterka. Dlatego prompty są jawne, a ich edycje widać na wykresie jako adnotacje. Z tego samego powodu nie porównujemy widoczności dwóch marek mierzonych innymi zestawami pytań.
Nie mierzy przyczyny
Widzimy, ŻE marka zniknęła z odpowiedzi. Dlaczego — bo zmienił się model, bo źródło wypadło z indeksu, bo konkurent opublikował lepszy materiał — tego pomiar nie rozstrzyga. Nasze rekomendacje nazywamy rekomendacjami, a nie diagnozą.
Nie mierzy pozycji w Google ani udziału w rynku
AI Overviews to blok podsumowania nad wynikami, nie ranking organiczny. Widoczność w AI i pozycje w wyszukiwarce to dwa różne pomiary i nie sumujemy ich w jedną liczbę.
Nie mierzy przedziału ufności
Nie liczymy istotności statystycznej ani przedziałów ufności — przy jednej odpowiedzi na silnik dziennie byłyby ozdobą, nie informacją. Zamiast tego podajemy jawnie n, oznaczamy cienką próbę chipem, a alert odzywa się dopiero przy spadku o co najmniej 15 punktów wobec bazy z 7 dni przebiegów. Mniejsze wahania traktujemy jako szum i nie robimy z nich zdarzenia.
Nie mierzy, których źródeł użyła odpowiedź Perplexity
Od 31 sierpnia 2026 API Perplexity nie oznacza już cytowań, więc jej lista źródeł znaczy „to znalazł przebieg”, a nie „na to powołała się odpowiedź”. Szczegóły są w sekcji o źródłach powyżej. Gemini z kolei nie ma parametru geolokalizacji — jego odpowiedzi nie są targetowane na Polskę.
Adnotacje na wykresach
Edycje promptów i zmiany wersji modeli zaznaczamy na wykresach jako adnotacje — żeby skok na wykresie dało się odróżnić od zmiany metodologii.
Retencja danych
- Surowe odpowiedzi silników: 90 dni, potem archiwum.
- Teksty odpowiedzi i ekstrakcje wzmianek: 24 miesiące.
- Zagregowane metryki dzienne: bezterminowo.
Sprawdź to na własnej marce
Metodologia jest po to, żeby dało się ją zweryfikować. Darmowe sprawdzenie zadaje jedno pytanie trzem silnikom i pokazuje surowe odpowiedzi razem ze źródłami — dokładnie tym samym kodem, który opisuje ta strona.