Spis treści
Ad fraud to celowe generowanie nieprawdziwych wyświetleń, kliknięć, instalacji lub konwersji po to, żeby przejąć część budżetu reklamowego. Stoją za nim boty, farmy kliknięć, manipulacje w łańcuchu programmatic i nieuczciwi partnerzy afiliacyjni. W danych kampanii objawia się rozjazdem między kliknięciami a sesjami, sesjami bez zaangażowania, nietypową geografią, godzinami i urządzeniami oraz konwersjami, za którymi nie stoi realny klient. Najwięcej szkody wyrządza nie sam stracony budżet, ale fałszywe sygnały, na których uczą się algorytmy stawek.
Najważniejsze w skrócie
- Standardy branżowe dzielą nieprawidłowy ruch na ogólny (GIVT), który da się odfiltrować listami, i wyrafinowany (SIVT), wymagający zaawansowanej analizy.
- Google Ads automatycznie filtruje nieprawidłowe kliknięcia i nie pobiera za nie opłat, a kolumny „Nieprawidłowe kliknięcia” i „Współczynnik nieprawidłowych kliknięć” pokazują skalę zjawiska.
- Najprostszy test to porównanie kliknięć z platformy z sesjami w GA4 i z czasem zaangażowania według źródła, kampanii i kraju.
- Fałszywe leady są groźniejsze niż fałszywe kliknięcia, bo uczą Smart Bidding szukać kolejnych botów.
- Do Google Ads i Meta przekazuj tylko zweryfikowane konwersje, najlepiej leady zakwalifikowane w CRM.
Rodzaje ad fraudu i gdzie występują
Ad fraud nie jest jednym zjawiskiem, tylko zbiorem technik dopasowanych do sposobu rozliczania kampanii. Tam, gdzie płacisz za wyświetlenia, oszuści generują wyświetlenia; tam, gdzie za kliknięcia lub instalacje – kliknięcia i instalacje.
| Rodzaj | Jak działa | Gdzie | Objaw w danych |
|---|---|---|---|
| Ruch botów | skrypty i przeglądarki sterowane automatycznie, często z serwerowni lub przez sieci proxy | sieć reklamowa, wyszukiwarka, strony docelowe | sesje bez zaangażowania, nietypowe przeglądarki, skoki ruchu o stałych porach |
| Farmy kliknięć | ludzie klikający reklamy za opłatą | wyszukiwarka, social media | krótkie sesje z jednego regionu, brak konwersji |
| Ad stacking i pixel stuffing | reklamy nałożone na siebie lub wyświetlane w niewidocznym boksie 1×1 px | display, aplikacje | wyświetlenia bez kliknięć, zerowa widoczność |
| Domain spoofing | podszywanie się pod znaną domenę w licytacji | programmatic | domena z raportu nie zgadza się z ads.txt wydawcy |
| Click injection i click spamming | fałszywe kliknięcia przypisywane do instalacji | aplikacje mobilne | instalacje sekundy po kliknięciu albo masowe kliknięcia bez instalacji |
| Cookie stuffing | podrzucanie plików cookie partnera bez kliknięcia | programy afiliacyjne | prowizje za sprzedaż, która wydarzyłaby się i tak |
| Fałszywe leady | boty lub ludzie wypełniający formularze | kampanie leadowe | niepoprawne e-maile, powtarzające się dane, brak kontaktu |
| Podszywanie się pod urządzenia CTV | fałszywe wyświetlenia udające Smart TV | CTV | nierealne wolumeny, nietypowe identyfikatory urządzeń |
Ostatni wiersz jest szczególnie istotny przy wysokich stawkach w telewizji internetowej – metody kontroli opisujemy w tekście o pomiarze kampanii CTV. Pokrewnym, ale odrębnym problemem są strony MFA, które generują ludzkie, lecz bezwartościowe odsłony; omawiamy je w artykule o stronach made for advertising.
GIVT i SIVT: jak platformy filtrują nieprawidłowy ruch
Nieprawidłowy ruch (IVT) dzieli się na dwie kategorie. GIVT to ruch ogólny – znane roboty, crawlery wyszukiwarek, adresy serwerowni – który odfiltrowuje się na podstawie list i prostych reguł. SIVT to ruch wyrafinowany: boty naśladujące ludzi, przejęte urządzenia, złośliwe oprogramowanie, manipulacje w aplikacjach. Wykrycie go wymaga analizy wielu sygnałów.
Duże platformy filtrują GIVT i część SIVT automatycznie. W Google Ads kliknięcia uznane za nieprawidłowe nie są wliczane do kosztów, a jeśli system wykryje nieprawidłową aktywność już po rozliczeniu, w płatnościach pojawia się korekta na korzyść reklamodawcy. Kolumny „Nieprawidłowe kliknięcia” i „Współczynnik nieprawidłowych kliknięć” możesz dodać do tabeli kampanii, żeby zobaczyć, gdzie problem jest największy. Jeśli podejrzewasz nadużycie, którego filtry nie wychwyciły, możesz zgłosić je do Google z danymi z Twojej analizy.
Meta również filtruje nieprawidłową aktywność. Prostym testem po Twojej stronie jest porównanie kolumn „Kliknięcia w link” i „Wyświetlenia strony docelowej” – duża i rosnąca różnica w jednym miejscu docelowym lub zestawie reklam wymaga sprawdzenia. W programmatic filtrowanie przed licytacją zapewniają segmenty firm weryfikacyjnych, a pomiar po emisji pozwala domagać się od dostawców zwrotu za ruch nieprawidłowy.
Jak wykryć ad fraud w danych kampanii
Filtry platform nie zastąpią Twojej analizy, bo tylko Ty widzisz, co użytkownik zrobił po kliknięciu. Przejdź po kolei przez poniższe kontrole:
- Porównaj kliknięcia z sesjami. Pewna różnica jest normalna (brak zgody na cookies, zamknięcie strony przed załadowaniem tagu), ale nagły wzrost luki w jednej kampanii lub miejscu to sygnał ostrzegawczy. Typowe przyczyny rozbieżności opisujemy w tekście o różnicach w liczbie konwersji między GA4, Google Ads i Meta.
- Sprawdź zaangażowanie według źródła, kampanii i kraju. Wysoki udział sesji krótszych niż sekunda to typowy ślad automatów.
- Przejrzyj geografię. Ruch z krajów spoza kierowania albo duży udział lokalizacji „(not set)” wymaga wyjaśnienia.
- Przeanalizuj rozkład godzinowy. Równomierny ruch przez całą dobę lub skoki o stałych porach w nocy rzadko są ludzkie.
- Sprawdź urządzenia i przeglądarki. Bardzo stare wersje przeglądarek, nietypowe rozdzielczości i dominacja jednego modelu urządzenia to częste ślady botów.
- Zweryfikuj konwersje. Formularze wysłane kilka sekund po wejściu, powtarzające się dane, adresy z domen tymczasowych i numery telefonów bez sensu.
- Szukaj anomalii CTR. Bardzo wysoki współczynnik kliknięć w sieci reklamowej lub w aplikacjach przy zerowych konwersjach sugeruje przypadkowe lub sztuczne kliknięcia.
Do kroków 2 i 3 przyda się zapytanie do eksportu GA4 w BigQuery, które pokazuje udział sesji bez zaangażowania w podziale na źródło, medium i kraj:
-- Sesje o cechach ruchu automatycznego według źródła i kraju (eksport GA4)
WITH zdarzenia AS (
SELECT
user_pseudo_id,
(SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'ga_session_id') AS session_id,
(SELECT value.int_value FROM UNNEST(event_params) WHERE key = 'engagement_time_msec') AS czas_ms,
collected_traffic_source.manual_source AS zrodlo,
collected_traffic_source.manual_medium AS medium,
collected_traffic_source.gclid AS gclid,
geo.country AS kraj,
event_name
FROM `projekt.analytics_123456789.events_*`
WHERE _TABLE_SUFFIX BETWEEN '20261001' AND '20261026'
),
sesje AS (
SELECT
user_pseudo_id,
session_id,
IF(MAX(gclid) IS NOT NULL, 'google / cpc',
CONCAT(IFNULL(MAX(zrodlo), '(brak)'), ' / ', IFNULL(MAX(medium), '(brak)'))) AS zrodlo_medium,
MAX(kraj) AS kraj,
SUM(IFNULL(czas_ms, 0)) AS czas_ms,
COUNT(*) AS zdarzenia,
COUNTIF(event_name = 'generate_lead') AS leady
FROM zdarzenia
GROUP BY user_pseudo_id, session_id
)
SELECT
zrodlo_medium,
kraj,
COUNT(*) AS sesje,
ROUND(COUNTIF(czas_ms < 1000) / COUNT(*), 3) AS udzial_ponizej_1s,
ROUND(COUNTIF(zdarzenia <= 2) / COUNT(*), 3) AS udzial_max_2_zdarzenia,
SUM(leady) AS leady
FROM sesje
GROUP BY zrodlo_medium, kraj
HAVING COUNT(*) >= 50
ORDER BY udzial_ponizej_1s DESC;
Wynik porównuj między źródłami, a nie z jednym progiem – udział krótkich sesji zależy od typu strony i urządzeń. Jeśli chcesz odtworzyć pełną logikę źródeł ruchu z raportów GA4, przeczytaj tekst o sesjach i źródłach ruchu w BigQuery.
Fałszywe leady: jak nie uczyć algorytmów na botach
Bot, który wypełnia formularz, tworzy konwersję. Smart Bidding traktuje ją jak sukces i zaczyna szukać podobnych użytkowników, więc problem narasta z każdym tygodniem. Ochrona formularzy jest więc elementem optymalizacji kampanii, a nie tylko bezpieczeństwa strony.
Podstawowe zabezpieczenia to pole-pułapka (honeypot) niewidoczne dla ludzi, walidacja po stronie serwera, niewidoczna weryfikacja typu reCAPTCHA lub Cloudflare Turnstile i potwierdzanie adresu e-mail lub numeru telefonu. Najważniejsze jest jednak to, by zdarzenie konwersji wysyłać dopiero wtedy, gdy serwer przyjmie zgłoszenie jako poprawne:
<!-- Pole-pułapka: niewidoczne dla ludzi, wypełniane przez proste boty -->
<input type="text" name="strona_www" id="strona_www" tabindex="-1" autocomplete="off"
aria-hidden="true" style="position:absolute;left:-9999px">
// Zdarzenie generate_lead dopiero po pozytywnej odpowiedzi serwera
var form = document.querySelector('#formularz-kontakt');
form.addEventListener('submit', async function (e) {
e.preventDefault();
if (document.getElementById('strona_www').value !== '') return; // wypełnione przez bota
var odpowiedz = await fetch('/api/lead', { method: 'POST', body: new FormData(form) });
var wynik = await odpowiedz.json();
if (wynik.status === 'ok') {
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ event: 'generate_lead', form_id: 'kontakt', lead_id: wynik.lead_id });
}
});
Kolejny poziom to przekazywanie do platform tylko leadów zakwalifikowanych przez handlowców. W Google Ads służy do tego import konwersji offline i rozszerzone konwersje dla potencjalnych klientów – konfigurację opisujemy w tekście o Enhanced Conversions przez GTM. W Meta podobną rolę pełni Conversions API zasilane danymi z CRM, które omawiamy w poradniku o kampaniach leadowych w Meta Ads.
Co zrobić, gdy wykryjesz ad fraud
Reakcja zależy od tego, gdzie leży źródło problemu, ale zawsze zaczyna się od odcięcia złego ruchu i zabezpieczenia dowodów.
- Wyklucz miejsca i aplikacje. Dodaj podejrzane domeny i aplikacje do listy wykluczeń na poziomie konta.
- Wyklucz adresy IP. Gdy kliknięcia powtarzają się z tych samych adresów, np. konkurencji, Google Ads pozwala wykluczyć do 500 adresów IP w kampanii, w typach kampanii, które to obsługują.
- Zawęź kierowanie geograficzne. Wybierz opcję docierania do osób obecnych w lokalizacji docelowej zamiast osób nią zainteresowanych.
- Sprawdź sieci partnerskie. W kampaniach w sieci wyszukiwania oceń osobno ruch z partnerów wyszukiwania i w razie problemów wyłącz tę opcję.
- Zgłoś problem platformie. Przygotuj dane: zakres dat, kampanie, miejsca, wyniki analizy z GA4. Ułatwia to ewentualne korekty.
- Egzekwuj umowy w programmatic. Wpisz do umów z dostawcami limity ruchu nieprawidłowego mierzone przez niezależną firmę i zasadę rekompensaty za jego przekroczenie.
- Ustaw alerty. Nagły wzrost kliknięć lub kosztu bez wzrostu sesji wyłapią skrypty do wykrywania anomalii budżetu, a spadki lub skoki zdarzeń w GA4 – monitoring tagów z alertami.
W kampaniach aplikacji mobilnych korzystaj z modułów ochrony przed fraudem w narzędziach do pomiaru instalacji, a w programach afiliacyjnych regularnie audytuj partnerów i zasady przypisywania prowizji. Ograniczenie liczby pośredników w łańcuchu programmatic, opisane w tekście o Supply Path Optimization, zmniejsza też ryzyko domain spoofingu. Ruch niskiej jakości często idzie w parze z ryzykiem dla wizerunku marki, dlatego łącz te działania z polityką brand safety i oceną widoczności oraz uwagi odbiorców. Wszystkie teksty o jakości mediów znajdziesz w podtemacie Jakość mediów i native.
Najczęściej zadawane pytania
Czy Google Ads zwraca pieniądze za fałszywe kliknięcia?
Kliknięcia uznane przez Google za nieprawidłowe są filtrowane automatycznie i nie są wliczane do kosztów. Jeśli nieprawidłowa aktywność zostanie wykryta po rozliczeniu, w płatnościach pojawia się korekta na korzyść reklamodawcy. Skalę zjawiska pokazują kolumny „Nieprawidłowe kliknięcia” i „Współczynnik nieprawidłowych kliknięć”, a podejrzenia można zgłosić do Google.
Jak rozpoznać ruch botów w GA4?
Szukaj sesji bez zaangażowania lub krótszych niż sekunda, ruchu z krajów spoza kierowania, nietypowych przeglądarek i rozdzielczości oraz równomiernego rozkładu wizyt przez całą dobę. Najlepiej analizować te sygnały w podziale na źródło, kampanię i miejsce docelowe, np. w eksporcie do BigQuery, i porównywać źródła między sobą.
Czy konkurencja może klikać w moje reklamy?
Może, ale systemy Google wychwytują wiele powtarzających się kliknięć z tych samych urządzeń i adresów. Jeśli widzisz kliknięcia z konkretnych adresów IP, możesz je wykluczyć w ustawieniach kampanii. Zachowaj też dane z analizy, bo przydadzą się przy zgłoszeniu nieprawidłowej aktywności do Google.
Dlaczego fałszywe leady szkodzą bardziej niż fałszywe kliknięcia?
Fałszywe kliknięcie to jednorazowy koszt, a fałszywy lead to konwersja, na której uczy się Smart Bidding. Algorytm zaczyna szukać użytkowników podobnych do botów, więc problem narasta. Dlatego wysyłaj zdarzenie konwersji dopiero po walidacji formularza i przekazuj do platform leady zakwalifikowane w CRM.
Czym różni się GIVT od SIVT?
GIVT to ogólny nieprawidłowy ruch, np. znane roboty i adresy serwerowni, który filtruje się listami i prostymi regułami. SIVT to ruch wyrafinowany, np. boty naśladujące zachowanie ludzi, przejęte urządzenia czy manipulacje w aplikacjach. Jego wykrycie wymaga analizy wielu sygnałów i zwykle narzędzi wyspecjalizowanych firm weryfikacyjnych.