Compliance

RODO 2026 — co realnie sprawdza UODO przy stronie firmowej

Lista kontrolna zgodności RODO dla WordPress — na podstawie realnych kontroli UODO z 2024-2025. Consent Mode v2, cookie banner, rejestr przetwarzania, prawa użytkownika.

DDawid Penkala
12 min czytania
Kłódka i ochrona danych — RODO i bezpieczeństwo

RODO obowiązuje od maja 2018. Przez pierwsze 3 lata UODO (Urząd Ochrony Danych Osobowych) głównie edukował. Od 2022 zaczął nakładać realne kary (ostatnia wieloletnia trend — średnia kara 150 000 zł dla małej firmy, rekord 5,5 mln zł dla dużego podmiotu medialnego). W 2024-2025 UODO zaostrzył kontrole e-commerce, zwłaszcza po skargach użytkowników.

Poniżej — co realnie sprawdza inspektor UODO na stronie internetowej firmy, z perspektywy osób, które uczestniczyły w kilku procedurach kontrolnych u klientów. Lista kontrolna praktyczna, nie prawniczy.

Pierwsze 5 minut inspekcji — co sprawdza inspektor

Inspektor ląduje na Twoim sklepie / stronie anonimowo. Pierwsze wrażenie:

Oczekiwane:

  • Pojawia się natychmiast przy wejściu (nie po 10 sekundach).
  • Trzy równorzędne przyciski: „Akceptuję wszystkie”, „Odrzuć wszystkie”, „Dostosuj”. Każdy tak samo widoczny (rozmiar, kolor, kontrast).
  • Domyślnie nic nie jest zaznaczone (żadnych pre-checked „analityka włączona”).
  • Link do polityki prywatności.
  • Nazwa administratora danych (Twojej firmy).

Typowe failsy:

  • „Akceptuję wszystkie” w primary color (pomarańczowy duży przycisk) + „Odrzuć wszystkie” niewidoczny (szary, ukryty, pod „Dostosuj”). Kara.
  • Brak opcji „Odrzuć”. Kara.
  • Cookie banner ładuje się po 3s, w międzyczasie GTM już wystartował z tracking’iem. Kara.

Od marca 2024 Google wymaga Consent Mode v2 w GTM. UODO to sprawdza — otwiera DevTools → Application → Cookies, sprawdza czy _ga, _gid pojawiają się przed kliknięciem „Akceptuję”.

Nasz setup z Devance (standardowy dla klientów):

// W <head> przed GTM:
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}

gtag('consent', 'default', {
    'analytics_storage': 'denied',
    'ad_storage': 'denied',
    'ad_user_data': 'denied',
    'ad_personalization': 'denied',
    'wait_for_update': 500
});

User klika „Akceptuję” → cookie banner wywołuje:

gtag('consent', 'update', {
    'analytics_storage': 'granted',
    // ... itd.
});

Kluczowe: default MUSI być denied. User musi świadomie kliknąć „akceptuję” żeby cokolwiek zaczęło się trackować.

3. Polityka prywatności

Inspektor otwiera URL (zwykle /polityka-prywatnosci/). Szuka:

  • Nazwa i dane kontaktowe administratora (firma pełna, NIP, adres, email do inspektora ochrony danych jeśli wyznaczony).
  • Cel przetwarzania danych — konkretnie, per kategoria („kontakt przez formularz — odpowiedź na zapytanie”, „newsletter — wysyłka informacji marketingowych”).
  • Podstawa prawna — art. 6 RODO, konkretny punkt (a/b/c/d/e/f).
  • Odbiorcy danych — komu udostępniasz (np. „Google Analytics w USA”, „firma hostingowa XYZ”).
  • Okres przechowywania — ile lat trzymasz dane.
  • Prawa użytkownika — dostęp, sprostowanie, usunięcie, przenoszenie, sprzeciw, skarga do UODO.
  • Transfer do państw trzecich — jeśli korzystasz z Google Analytics, Meta Pixel — transfer do USA. Musi być wymieniony.

Typowe failsy:

  • Skopiowany szablon „polityka prywatności.pl” bez dostosowania (brak nazwy firmy, brak konkretów).
  • Brak wymienienia Google Analytics / Meta Pixel choć są na stronie (sprawdzone w DevTools).
  • Niedatowana („wersja z 2019”) — RODO wymaga aktualności.

4. Formularze kontaktowe

Każdy formularz (kontakt, zapis na newsletter, checkout) musi mieć:

  • Checkbox zgody (NIE pre-checked) — „Wyrażam zgodę na przetwarzanie danych w celu…”.
  • Link do polityki prywatności przy checkboxie.
  • Informacja o podstawie prawnej — krótki tekst nad/pod formularzem.

Dla newslettera: double opt-in obowiązkowy (wysyłasz email z linkiem potwierdzającym).

5. Rejestr czynności przetwarzania (RCPD)

Art. 30 RODO wymaga prowadzenia rejestru. Inspektor może go poprosić na miejscu.

Co to jest: dokument (Excel / PDF / system) z listą wszystkich procesów w firmie, w których przetwarzasz dane osobowe. Minimum: cel, kategorie danych, odbiorcy, okres retencji, środki bezpieczeństwa.

Szablon RCPD dla strony internetowej (minimum):

#ProcesDaneCelPodstawaRetencjaOdbiorcy
1Formularz kontaktowyimię, email, treśćOdpowiedź na zapytanieArt. 6.1.f2 lataHosting, email provider
2NewsletteremailMarketingArt. 6.1.a (zgoda)Do odwołania zgodyMailchimp, Brevo
3Google AnalyticsIP (zanonim.), cookieStatystykiArt. 6.1.f + zgoda26 miesięcyGoogle LLC (USA)
4Zamówienie w sklepieimię, adres, tel, emailRealizacja zamówieniaArt. 6.1.b5 lat (KSiR)Hosting, kurier, bramka płatności

Lista kontrolna techniczna WordPress / WooCommerce

Bezpieczeństwo

  • SSL na 100% ścieżek (nie tylko home, też /wp-admin, checkout, API).
  • Silne hasła administratorów + 2FA.
  • Regularne aktualizacje rdzenia / wtyczek (dokumentowane).
  • Backup offline (Art. 32 RODO wymaga „zdolności do szybkiego przywrócenia dostępności”).
  • Logi dostępu (minimum 30 dni — do ewentualnego incident response).

Formularze i zapisy

  • Wszystkie formularze z checkboxem zgody (nie pre-checked).
  • Każdy formularz z linkiem do polityki prywatności.
  • Newsletter: double opt-in (email potwierdzający).
  • Unsubscribe link w każdym mailingu marketingowym.
  • Mechanizm wyłączenia zgód z poziomu panelu użytkownika (dla sklepów).

Cookies i analityka

  • Cookie banner przy pierwszym wejściu.
  • Równorzędne „Akceptuję” / „Odrzuć” / „Dostosuj”.
  • Domyślnie wszystkie zgody = denied.
  • Consent Mode v2 w GTM.
  • Opcja zmiany zgody dostępna na każdej stronie (typowo link w stopce „Ustawienia cookies”).
  • Cookie policy w osobnej strony (osobno od polityki prywatności).

Dane użytkownika (WooCommerce)

  • /my-account/ — klient widzi wszystkie swoje dane.
  • Eksport danych (CSV / JSON) dostępny w panelu klienta.
  • Przycisk „Usuń konto” (realizacja prawa do bycia zapomnianym).
  • Po usunięciu konta: dane zamówień anonimizowane (pozostaje faktura zgodnie z KSiR, reszta usuwana).

umowa powierzenia danych osobowych z podwykonawcami

  • Podpisana DPA z hostingiem (większość polskich hostingów ma standardowy szablon).
  • DPA z email providerem (Mailchimp, Brevo, Postmark).
  • DPA z bramką płatności (Przelewy24, PayU, Stripe).
  • DPA z firmami kurierskimi (InPost, DPD, etc.).
  • Kopia każdej DPA trzymana w rejestrze.

Realne kary z ostatnich 2 lat (źródło UODO publicznie dostępne decyzje):

  • 2024, sklep internetowy: brak Consent Mode v2, brak „odrzuć” w cookie banner → 120 000 zł.
  • 2024, portal informacyjny: wyciek emaili z formularza na publiczne forum → 250 000 zł.
  • 2025, agencja marketingowa: nieautoryzowany transfer danych do USA (brak DPA z Google Analytics) → 80 000 zł.
  • 2025, sklep B2B: brak możliwości wypisania się z newslettera → 45 000 zł.

Co robić PRZED kontrolą

Jeśli dostaniesz pismo z UODO o wszczęciu postępowania:

  1. Nie panikuj. UODO zwykle daje 14-30 dni na odpowiedź.
  2. Skontaktuj z adwokatem specjalizującym się w RODO (nie ogólny prawnik).
  3. Uzupełnij braki — jeśli brakowało RCPD, stwórz. Brakowało polityki prywatności aktualnej, zaktualizuj. UODO preferuje „zauważyliśmy problem, naprawiliśmy” nad „nic nie zrobiliśmy”.
  4. Zdokumentuj środki bezpieczeństwa — backup schedule, lista aktualizacji, logi audytowe.
  5. Współpracuj. Próba ukrycia = największa okoliczność obciążająca.

Co robimy standardowo u klientów

W opiece Devance RODO compliance jest modułem standardowym:

  • Audyt początkowy (30-60 min) — checklist wyżej + dokumentacja stanu.
  • Pomoc w wypełnieniu luk (tworzenie RCPD, polityki, konfiguracja cookie banner).
  • Utrzymanie aktualności — po każdej większej zmianie na stronie (nowy formularz, nowa integracja) aktualizacja polityki i rejestru.
  • Przygotowanie do kontroli — jeśli klient dostanie pismo UODO, w ciągu 48h mamy komplet dokumentów do odpowiedzi.

Jeśli nie jesteś pewny czy Twoja strona spełnia RODO — darmowy audyt zawiera moduł compliance. Dostajesz checklist z tym co jest OK, co wymaga poprawy, i szacunek czasu na fix. Bez prawniczego żargonu, konkretnie.

Tagi:RODOGDPRUODOcompliancecookie consentconsent mode v2WordPress
Dawid Penkala
Dawid Penkala

Doświadczony WordPress Developer z ponad 14-letnim stażem w tworzeniu zaawansowanych stron i sklepów internetowych. Specjalizuje się w WordPressie, dedykowanych wtyczkach i motywach.

Więcej o autorze