Dobrá praxe: cookies podle české legislativy

Česko přešlo na striktní opt-in v roce 2022. Tady je vše, co potřebujete vědět — a jak vám Waulter pomůže to splnit.

Co česká legislativa vyžaduje

  • Striktní opt-in — žádné předvyplněné checkboxy, žádný implicitní souhlas.
  • Rovnocenné tlačítka — Accept a Reject musí být vizuálně rovnocenné.
  • Granulární volba — návštěvník si musí moci vybrat kategorie cookies.
  • Zákaz cookie walls — nesmí podmiňovat přístup k obsahu souhlasem.
  • 12měsíční obnova — souhlas platí maximálně 12 měsíců, pak je nutná obnova.
  • Audit-ready logy — každý souhlas musí být zaznamenán s časovým razítkem a ID.

Jak Waulter zajišťuje soulad

  • Správná implementace opt-in — Waulter ve výchozím nastavení splňuje všechna česká pravidla.
  • Rovnocenné tlačítka — design lišty neupřednostňuje jedno tlačítko na úkor druhého.
  • Granulární souhlas — návštěvník vidí kategorie a volí jednotlivě.
  • Automatická obnova — Waulter sleduje expiraci souhlasu a vyzve k obnově.
  • Audit logy — každý souhlas je uložen server-side s transakčním ID, časovým razítkem a detailem volby.

Časté chyby a jak se jim vyhnout

  • Předvyplněný souhlas — nesmí být. Waulter to neumí ani omylem.
  • Skryté tlačítko Odmítnout — Bývá považováno za dark pattern. Waulter zobrazuje obě tlačítka stejně výrazně.
  • Chybějící informace o cookies — Waulter automaticky generuje přehled cookies z databáze.
  • Nezaznamenané souhlasy — bez logů nemáte důkaz. Waulter ukládá vše automaticky.

Scénář: Running Permissions — progresivní souhlas

Souhlas s cookies není brána. Je to vztah. A vztahy se budují postupně.

Lidé chtějí být na internetu v bezpečí, ale nechtějí s tím strávit celý den. Nerozumí tomu, co sdílejí s webovými stránkami, ani tomu, s čím souhlasí — a právě proto pochybují o svém bezpečí online. Řešení není méně ptát se. Řešení je ptát se srozumitelně, ve správný čas a jen o to, co právě dává smysl.

Většina CMP nástrojů funguje jako výběrčí mýta: ukáže jeden velký dialog se vším, co potřebuje, a doufá, že návštěvník klikne na „Přijmout vše". Výsledek? Nízká míra souhlasu, vysoká míra odmítnutí a ztracená data.

Waulter Running Permissions funguje jinak. Nežádáte o všechno najednou — žádáte jen o to, co je právě teď relevantní. A jak se vztah s návštěvníkem prohlubuje, žádáte o víc.

Jak to vypadá v praxi

1. První návštěva: nezbytné + analytika

Návštěvník přichází poprvé. Nezná vás, nemá důvod vám důvěřovat. Zobrazte minimální lištu:

  • Nezbytné cookies (vždy aktivní).
  • Analytické cookies — s vysvětlením: „Pomáhá nám zlepšovat obsah, který čtete."
  • Žádné marketingové, žádný remarketing.

Pravidlo scénáře: acceptance equals "empty" → minimální konfigurace (jen PU046 — základní analytika).

2. Návštěvník přečetl 3+ články: personalizace

Návštěvník se vrací, čte další obsah. Projevuje zájem. Teď je správný čas požádat o personalizaci:

  • Nový banner s vysvětlením: „Chcete vidět obsah přizpůsobený vašim zájmům?"
  • Kategorie: personalizace (PU072).

Pravidlo scénáře: pageview > 3 AND purposes not-contains "PU072" → personalizační konfigurace s forceStartCB: true.

3. Uživatel si vytvoří účet: marketing

Uživatel se registruje. Důvěra je na vyšší úrovni — dal vám svůj e-mail. Teď je správný čas požádat o marketingový souhlas:

  • Banner po registraci: „Chcete dostávat tipy a novinky? Povolte marketingové cookies."
  • Kategorie: marketing/remarketing (PU047, PU073).

Pravidlo scénáře: customField1 equals "registered" AND purposes not-contains "PU047" → marketingová konfigurace s forceStartCB: true.

4. Uživatel provede nákup: plný tracking

Zákazník dokončil objednávku. Vztah je nejsilnější. Poslední krok:

  • Banner po nákupu: „Díky za objednávku! Povolte měření reklam, abychom vám ukazovali relevantní nabídky."
  • Kategorie: měření reklam, remarketingová publika (PU074, PU073).

Pravidlo scénáře: customField2 equals "purchased" AND purposes not-contains "PU074" → plná konfigurace s forceStartCB: true.

Proč Running Permissions funguje

  • Vyšší celkový souhlas: Místo jednoho velkého „Přijmout vše / Odmítnout vše" získáváte postupné souhlasy v kontextu, kde dávají smysl. Celková míra souhlasu tak může růst.
  • Menší banner fatigue: Návštěvník nevidí obří dialog při první návštěvě. Každá žádost o souhlas je malá, kontextuální a relevantní.
  • Lepší data quality: Souhlasy získané v kontextu jsou kvalitnější — návštěvník věděl, co povoluje a proč.
  • Plný soulad s GDPR: Každý souhlas je granulární, informovaný a specifický. Žádné předvyplněné checkboxy, žádné dark patterns. ÚOOÚ nemá co vytknout.

Technická realizace

Running Permissions využívá tři klíčové funkce Waulter scénářového enginu:

  1. Purpose-based podmínky — pravidla vyhodnocují, které purpose kódy návštěvník již odsouhlasil (purposes contains/not-contains).
  2. forceStartCB flag — vynucené zobrazení banneru i když již existuje platný souhlas (pro žádost o další kategorie).
  3. Custom fields — SDK předává informace o stavu uživatele (registrovaný, nakoupil) přes customField1–customField10.
  4. Pageview tracking — pravidla reagují na počet zobrazených stránek v rámci session.

Výsledek: souhlas není jednorázová otázka. Je to konverzace, která se vyvíjí spolu se vztahem návštěvníka k vašemu webu.

Co musí platný souhlas splňovat

Souhlas s cookies není jen kliknutí na tlačítko. GDPR a česká legislativa stanovují šest podmínek, které musí být splněny současně — jinak souhlas neplatí a data zpracováváte bez právního základu.

1. Svobodně udělený

Návštěvník nesmí být nucen souhlasit. Žádné cookie walls blokující obsah, žádné dark patterns, žádné „přijměte, nebo odejděte."

Waulter toto zajišťuje ve výchozím nastavení: tlačítka Přijmout a Odmítnout jsou vždy vizuálně rovnocenná. Přístup k obsahu není podmíněn souhlasem.

2. Konkrétní

Souhlas musí být udělený pro konkrétní účel, ne paušálně. „Přijmout vše" bez možnosti volby po kategoriích nestačí.

Waulter zobrazuje granulární volbu — návštěvník vidí jednotlivé kategorie (analytika, marketing, personalizace) a rozhoduje se za každou zvlášť.

3. Informovaný

Návštěvník musí vědět: jaká data sbíráte, kdo je zpracovává, jak dlouho, a za jakým účelem. Srozumitelně, ne právnickou hantýrkou.

Waulter automaticky generuje přehled cookies z databáze a propojuje ho s právními dokumenty — zásadami ochrany osobních údajů a cookie policy.

4. Jednoznačný

Aktivní opt-in. Žádné předvyplněné checkboxy, žádný implicitní souhlas pokračováním v prohlížení. Návštěvník musí provést aktivní akci.

Waulter neumí předvyplnit checkboxy ani omylem — design to technicky neumožňuje.

5. Odvolatelný

Odvolání souhlasu musí být stejně snadné jako jeho udělení. Jedno kliknutí na změnu preferencí, kdykoliv.

Waulter zobrazuje widget pro správu preferencí přístupný z každé stránky. Odvolání je okamžité a promítne se do celého consent stavu.

6. Zdokumentovaný

Každý souhlas musí být zaznamenán: kdo, kdy, co, jaká verze lišty. Bez audit trail nemáte důkaz.

Waulter ukládá každý souhlas server-side s transakčním ID, časovým razítkem, verzí konfigurace a detailní volbou návštěvníka. Audit-ready od prvního dne.

Proč na tom záleží

Neplatný souhlas = žádný souhlas. Pokud nesplníte byť jednu z šesti podmínek, zpracováváte data bez právního základu. ÚOOÚ provádí kontroly a může uložit pokutu. Waulter zajišťuje všech šest podmínek ve výchozím nastavení — nemusíte se spoléhat na to, že váš tým nic nepřehlédne.

Permission Transaction — souhlas jako transakce

Každý souhlas s cookies je transakce. Žádáte návštěvníka o něco cenného — přístup k jeho datům. Na oplátku byste měli nabídnout transparentnost, důvěru a hodnotu.

Dvě strany transakce

Vy (provozovatel webu)Návštěvník
Žádáte o přístup k datůmRozhoduje, zda ho udělí
Nabízíte transparentní informaceOčekává srozumitelnost
Dokumentujete každý souhlasOčekává možnost kontroly a odvolání
Využíváte data k deklarovanému účeluDůvěřuje, že dodržíte slovo

Transparentnost jako základ

Permission Transaction funguje jen tehdy, když obě strany rozumí podmínkám. To znamená:

  • Jasný jazyk — ne právnická šablona, ale srozumitelné vysvětlení. „Chceme měřit, kolik lidí čte naše články" místo „zpracování analytických cookies za účelem statistické analýzy."
  • Viditelný přehled — návštěvník může kdykoliv vidět, k čemu souhlasil, a změnit svá rozhodnutí.
  • Verzování — každá změna konfigurace lišty je verzována. Pokud změníte účely zpracování, návštěvník je vyzván k novému souhlasu.

Dokumentovaná transakce

Každá interakce se souhlasem ve Waulteru je zdokumentovaná transakce:

  • Transakční ID — unikátní identifikátor pro každý souhlas.
  • Časové razítko — přesný okamžik udělení nebo odvolání.
  • Verze konfigurace — jaká lišta byla zobrazena, s jakými účely.
  • Detail volby — co přesně návštěvník povolil a co odmítl.
  • Kontext — z jaké stránky, jaký scénář byl aktivní.

Tento záznam je váš důkaz při auditu. Bez něj je „souhlas" jen tvrzení bez opory.

Podrobný technický popis transakčního modelu najdete v dokumentaci Waulteru.

Business Activity jako účel — srozumitelné kategorie souhlasu

Většina cookie lišt zobrazuje technické kategorie: „analytické cookies", „marketingové cookies", „funkční cookies." Návštěvník nemá tušení, co to znamená. Klikne na „Odmítnout vše" a jde dál.

Waulter přistupuje k souhlasu jinak. Místo technických kategorií používá obchodní aktivity jako účely zpracování — přesně tak, jak to vyžaduje GDPR.

Technické kategorie vs. obchodní aktivity

Technická kategorieObchodní aktivita (Waulter)
Analytické cookiesVyhodnocování návštěvnosti
Marketingové cookiesPersonalizace nabídek
Cookies pro remarketingZobrazování relevantní reklamy
Funkční cookiesZapamatování preferencí
Cookies pro A/B testováníZlepšování uživatelského zážitku

Proč to funguje lépe

Pro návštěvníka: Rozumí, k čemu souhlasí. „Vyhodnocování návštěvnosti" je srozumitelné. „Analytické cookies třetích stran pro účely statistického zpracování" není.

Pro business: Obchodní aktivity odpovídají tomu, co firma reálně dělá s daty. Marketingový manažer rozumí „personalizace nabídek" — nemusí překládat z technického žargonu.

Pro compliance: GDPR vyžaduje, aby účely zpracování byly konkrétní a srozumitelné. Obchodní aktivity toto splňují přirozeně — jsou to reálné procesy, ne abstraktní kategorie.

Automatické mapování

Waulter automaticky mapuje obchodní aktivity na:

  • Purpose kódy (PU046, PU047, PU072...) — interní identifikátory pro technické zpracování.
  • Google Consent Mode signály — analytics_storage, ad_storage, ad_personalization.
  • Cookie kategorie — které konkrétní cookies spadají pod jakou aktivitu.
  • Právní dokumenty — propojení s cookie policy a zásadami ochrany osobních údajů.

Výsledek: nastavíte obchodní aktivity jednou a Waulter se postará o zbytek. Návštěvník vidí srozumitelné účely, technika dostane správné signály, právní dokumenty se generují automaticky.

Prakticky automatizovatelné

Protože obchodní aktivity přímo odpovídají účelům zpracování ve smyslu GDPR, celý řetězec je automatizovatelný:

  1. Definujete obchodní aktivitu (co děláte s daty).
  2. Waulter přiřadí správné purpose kódy a cookie kategorie.
  3. Cookie lišta zobrazí srozumitelný účel návštěvníkovi.
  4. Google Consent Mode dostane správné signály.
  5. Právní dokumenty se aktualizují automaticky.

Žádné ruční mapování, žádné riziko nesouladu mezi lištou a dokumentací.

Marketingové bannery — social proof a kampaňové kódy

Cookie lišta nemusí být jen compliance povinnost. S Waulterem je to marketingový nástroj, který aktivně zvyšuje míru souhlasu.

Social proof: aktuální míra souhlasu

Připojte k cookie liště aktuální míru souhlasu: „92 % návštěvníků nám důvěřuje." (příklad)

  • Reálné číslo — není to vymyšlená statistika. Waulter počítá skutečnou míru souhlasu z vašich dat.
  • Automaticky aktualizované — číslo se mění v reálném čase. Nemusíte nic nastavovat ani aktualizovat.
  • Váš text — formulaci kontrolujete vy. „92 % návštěvníků nám důvěřuje", „Většina našich čtenářů souhlasí s cookies" — vaše značka, váš hlas.
  • Chráněné — zobrazí se jen tehdy, když je míra souhlasu dostatečně vysoká, aby působila jako pozitivní signál.

Proč to funguje: lidé se řídí tím, co dělají ostatní. Když návštěvník vidí, že například 92 % lidí před ním souhlasilo, důvěra roste a míra souhlasu se dál zvyšuje. Pozitivní spirála.

Vlastní pobídkové bannery

Připojte k cookie liště vlastní marketing:

  • „Za souhlas získáte přístup k personalizovanému obsahu."
  • „Pomáháte nám zlepšovat služby, které používáte."
  • „Díky analytice vám přinášíme relevantnější obsah."

Každý banner je konfigurovatelný přes marketingMessage v konfiguraci CCID — text, barva, odkaz.

Měřitelné odkazy s kampaňovými kódy

Každý odkaz v marketingovém banneru může být:

  • Tagován kampaňovým kódem — identifikátor kampaně pro přesnou atribuci.
  • Měřen — kliknutí a konverze sledovány automaticky.
  • Signalizován do datalayeru — kampaňový kód se automaticky objeví jako event v Google Tag Manageru.
  • Propojitelný s analytics pipeline — data tečou přímo do vašich dashboardů.

Výsledek: cookie lišta není mrtvý compliance prvek, ale měřitelný marketingový touchpoint s reálnými daty.

Implementační detaily najdete v dokumentaci Waulteru.

Crawler a monitoring — co Waulter kontroluje

Dobrá praxe není jednorázové nastavení. Je to průběžný dohled. Waulter crawler pravidelně skenuje váš web a kontroluje šest klíčových oblastí — dohromady dávají doložitelný obraz o stavu souhlasů na vašem webu.

1. Kam tečou vaše data

Skenujeme síťový provoz (HAR soubory) a zjišťujeme, s jakými externími službami a třetími stranami váš web komunikuje. Jednoduše řečeno: kontrolujeme, s kým si váš web povídá za oponou. Každá služba, každý požadavek — víte přesně, kam data odcházejí.

2. Externí služby a skripty

Detekce všech skriptů třetích stran, trackerů a služeb načítaných na vašich stránkách. Facebook Pixel, Google Analytics, reklamní sítě, chat widgety — Waulter je najde všechny. Víte o každém skriptu, který na vašem webu běží?

3. Jak to vypadá — vizuální ověření

Pořizujeme screenshoty vaší cookie lišty na různých zařízeních a v různých prohlížečích. Desktop, tablet, mobil — vizuální důkaz, že váš consent banner vypadá správně, zobrazuje se korektně a funguje na všech platformách.

4. Přítomnost cookie lišty

Automatická kontrola, zda se váš consent banner skutečně zobrazuje na každé stránce — nejen na homepage. Překvapivě častý problém: lišta funguje na hlavní stránce, ale na landing pages z kampaní se nezobrazí.

5. Nastavení Google Consent Mode

Ověřujeme, že vaše Google Consent Mode 2.0 signály jsou správně nakonfigurované a spouštějí se korektně. Výchozí stav denied před souhlasem, granted po udělení — přesně jak Google vyžaduje. Kontrolujeme všechny čtyři signály: analytics_storage, ad_storage, ad_user_data, ad_personalization.

6. Detailní logování

Každá interakce se souhlasem je zaznamenána s časovým razítkem, verzí konfigurace, rozhodnutím uživatele a kontextem stránky. Transakční ID pro každý souhlas. Audit-ready záznamy pro regulatorní kontrolu — důkaz, ne tvrzení.

Ochranný štít, ne checkbox

Dohromady vám tyto kontroly dávají doložitelný obraz o tom, jaké cookies, skripty a souhlasy váš web používá. Nejde o jednorázový audit — jde o průběžný monitoring, který vás upozorní na problémy dříve, než je najde regulátor.

Buďte v souladu od prvního dne