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:
- Purpose-based podmínky — pravidla vyhodnocují, které purpose kódy návštěvník již odsouhlasil (
purposes contains/not-contains). forceStartCBflag — vynucené zobrazení banneru i když již existuje platný souhlas (pro žádost o další kategorie).- Custom fields — SDK předává informace o stavu uživatele (registrovaný, nakoupil) přes
customField1–customField10. - 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ům | Rozhoduje, zda ho udělí |
| Nabízíte transparentní informace | Očekává srozumitelnost |
| Dokumentujete každý souhlas | Očekává možnost kontroly a odvolání |
| Využíváte data k deklarovanému účelu | Dů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á kategorie | Obchodní aktivita (Waulter) |
|---|---|
| Analytické cookies | Vyhodnocování návštěvnosti |
| Marketingové cookies | Personalizace nabídek |
| Cookies pro remarketing | Zobrazování relevantní reklamy |
| Funkční cookies | Zapamatová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ý:
- Definujete obchodní aktivitu (co děláte s daty).
- Waulter přiřadí správné purpose kódy a cookie kategorie.
- Cookie lišta zobrazí srozumitelný účel návštěvníkovi.
- Google Consent Mode dostane správné signály.
- Právní dokumenty se aktualizují automaticky.
Žádné ruční mapování, žádné riziko nesouladu mezi lištou a dokumentací.
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.