Odoo-Website: Cookies, Google Fonts und Datenschutz
Kurz gesagt
Für eine Website in Deutschland verlangt § 25 Abs. 1 TDDDG die Einwilligung, bevor Informationen auf dem Gerät des Besuchers gespeichert oder von dort ausgelesen werden; ohne sie zulässig ist nur, was Absatz 2 nennt. In Odoo 20.0 sind dafür Cookies Bar, lokal ausgelieferte Schriftarten und geprüfte Formularfelder samt Spam-Schutz die Hebel. Stand 14. Oktober 2026.
Das Wichtigste
- § 25 Abs. 1 TDDDG verlangt die Einwilligung für Speichern und Auslesen auf dem Endgerät; Absatz 2 nennt die zwei Ausnahmen.
- Verstoß gegen § 25 Abs. 1 Satz 1 TDDDG: Ordnungswidrigkeit nach § 28 Abs. 1 Nr. 13 TDDDG, Geldbuße bis 300.000 Euro (§ 28 Abs. 2 TDDDG).
- LG München I, 20. Januar 2022, 3 O 17493/20 (erste Instanz): Weitergabe der Besucher-IP an Google über Google Fonts ohne Einwilligung rechtswidrig; 100,00 Euro Schadensersatz.
- Odoo 20.0 schaltet die Cookies Bar unter Website ▸ Configuration ▸ Settings im Abschnitt Tracking & SEO ein.
- Für selbst hinzugefügte Google-Schriften entscheidet der Schalter „Serve font from Google servers“, woher der Browser die Schrift lädt.
- Formulare erzeugen je nach Action Datensätze wie Opportunity oder Ticket; ein eigenes Einwilligungsfeld nennt die Dokumentation 20.0 nicht.
Was § 25 TDDDG und die DSGVO verlangen
Zwei Regeln treffen Ihre Website, und sie schützen Verschiedenes. Das TDDDG schützt das Gerät des Besuchers: Ohne dessen Einwilligung darf Ihre Seite dort keine Informationen speichern und keine auslesen (§ 25 Abs. 1 Satz 1 TDDDG). Die Einwilligung muss auf klaren und umfassenden Informationen beruhen und richtet sich nach der Verordnung (EU) 2016/679 (DSGVO). Erlaubt bleiben nach § 25 Abs. 2 TDDDG nur zwei Fälle: die Durchführung der Übertragung einer Nachricht über ein öffentliches Telekommunikationsnetz und die unbedingt erforderliche Speicherung oder der unbedingt erforderliche Zugriff für einen vom Nutzer ausdrücklich gewünschten digitalen Dienst.
Die DSGVO greift, sobald personenbezogene Daten verarbeitet werden; dann braucht die Verarbeitung eine Rechtsgrundlage nach Art. 6 Abs. 1 DSGVO. Personenbezogen ist alles, was sich auf eine identifizierte oder identifizierbare Person bezieht; dazu gehören nach Art. 4 Nr. 1 DSGVO auch Online-Kennungen.
Für Schriftarten, Cookies und Formulare greifen beide Spuren zusammen.
| Bereich | Was zu regeln ist | Stelle in Odoo 20.0; Menübezeichnungen der englischen Dokumentation 20.0 |
|---|---|---|
| Schriftarten | Rechtsgrundlage nach Art. 6 Abs. 1 DSGVO, wenn der Seitenaufruf die IP-Adresse an einen Schriftanbieter übermittelt | Website-Editor, Tab Theme, Abschnitt Fonts, Feld Font Family |
| Cookies und Analyse | Einwilligung nach § 25 Abs. 1 TDDDG, Ausnahmen nach Abs. 2 | Website ▸ Configuration ▸ Settings, Abschnitt Tracking & SEO |
| Formulare | Rechtsgrundlage nach Art. 6 Abs. 1 DSGVO und Informationen nach Art. 13 DSGVO | Baustein Contact & Forms, Reiter Style, dort Action und Fields |
| Datenschutzerklärung | Pflichtangaben nach Art. 13 Abs. 1 und 2 DSGVO | Website ▸ Site ▸ Pages, Verlinkung im Footer |
Für wen die Einstellungen gelten
Das TDDDG gilt nach § 1 Abs. 3 TDDDG für alle Unternehmen und Personen, die im Geltungsbereich eine Niederlassung haben, dort Dienstleistungen erbringen, daran mitwirken oder Waren auf dem Markt bereitstellen. Eine Umsatzgrenze kennt § 25 TDDDG nicht, und geschützt ist nicht nur der Verbraucher: Endnutzer ist nach § 3 Nr. 13 TKG jeder Nutzer, der weder öffentliche Telekommunikationsnetze betreibt noch öffentlich zugängliche Telekommunikationsdienste erbringt; § 2 Abs. 1 TDDDG verweist dafür auf das TKG. Auch ein Geschäftskunde auf einer B2B-Seite ist damit Endnutzer.
§ 25 TDDDG knüpft nicht an eine öffentliche Website an, sondern an den Speicher- und Zugriffsvorgang: Ohne Einwilligung zulässig ist weder das Speichern von Informationen in der Endeinrichtung des Endnutzers noch der Zugriff auf dort gespeicherte Informationen (§ 25 Abs. 1 Satz 1 TDDDG). Maßgeblich ist damit, ob Ihre Website oder App auf dem Gerät des Nutzers speichert oder von dort ausliest, nicht die Öffentlichkeit des Angebots; ob ein Fall des § 25 Abs. 2 TDDDG vorliegt, entscheidet der Zweck der Speicherung oder des Zugriffs. Endeinrichtung ist nach § 2 Abs. 2 Nr. 6 TDDDG jede direkt oder indirekt an die Schnittstelle eines öffentlichen Telekommunikationsnetzes angeschlossene Einrichtung zum Aussenden, Verarbeiten oder Empfangen von Nachrichten. Verarbeitet eine rein intern genutzte Odoo-Datenbank personenbezogene Daten, richtet sich das nach der DSGVO (DSGVO in Odoo umsetzen). Wo eine Einwilligung nötig ist, muss sie freiwillig und für den konkreten Fall erfolgen; der Widerruf muss so einfach sein wie ihre Erteilung (Art. 7 Abs. 3 DSGVO).
Schriftarten: Google Fonts und der Schalter im Editor
Das Landgericht München I hat am 20. Januar 2022 entschieden (3 O 17493/20), dass der Betreiber einer Website das Persönlichkeitsrecht in Form des Rechts auf informationelle Selbstbestimmung verletzt, wenn er beim Seitenaufruf die dynamische IP-Adresse des Besuchers durch das Ausliefern einer Schriftart von Google an Google offenlegt. Eine Einwilligung lag nicht vor, und ein berechtigtes Interesse nach Art. 6 Abs. 1 Buchst. f DSGVO verneinte das Gericht, weil sich Google Fonts auch ohne Verbindung zu einem Google-Server nutzen lässt. Es untersagte die Weitergabe bei einem Ordnungsgeld bis 250.000 Euro und sprach 100,00 Euro Schadensersatz nach Art. 82 Abs. 1 DSGVO zu. Die Entscheidung erging in erster Instanz.
In Odoo 20.0 hängt die Schriftauslieferung am Theme: Die Entwicklerdokumentation beschreibt, dass Themes ihre Schriften mit Familie und zugehöriger Google-Fonts-URL deklarieren. Im Editor stehen unter Theme im Abschnitt Fonts, Feld Font Family drei Wege offen: System Fonts nutzt die Schriften des Besuchergeräts; über Add a Custom Font fügen Sie eine Google-Schrift hinzu; oder Sie laden eine eigene Schriftdatei hoch.
Für eine so hinzugefügte Google-Schrift gibt es den Schalter „Serve font from Google servers“. Schalten Sie ihn aus, liegt die Schrift nach der Dokumentation auf dem Server der Website und nicht bei Google; Odoo rät dazu, wenn Vorgaben wie die DSGVO gelten. Prüfen Sie anschließend im Netzwerk-Bereich der Entwicklerwerkzeuge, ob noch Anfragen an fonts.googleapis.com oder fonts.gstatic.com gehen. Für die Schriften eines Themes nennt die Dokumentation 20.0 keinen solchen Schalter; System Fonts und eine eigene Schriftdatei kommen ohne Anfrage an einen Schriftserver aus.
Cookie-Banner: was Odoo kann und was nicht
Die Cookies Bar schalten Sie unter Website ▸ Configuration ▸ Settings im Abschnitt Tracking & SEO ein. Damit aktiviert Odoo die Option Block tracking 3rd-party services, die unter anderem soziale Netzwerke, Videoplattformen und Google-Dienste blockiert, bis der Besucher optionale Cookies akzeptiert; über Add domains to the block list kommen weitere Domains dazu. Ohne Cookies Bar lassen sich Drittanbieter-Cookies nach der Dokumentation nicht aufhalten.
Beim Einschalten legt Odoo die Seite Cookie Policy unter /cookie-policy an. Sie führt die voreingestellten Cookies mit Kategorie und Zweck, darunter session_id und frontend_lang als Essential sowie _ga, _gat und _gid als Optional - Analytics. Eigene Cookies tragen Sie dort mit Name, Rolle, Kategorie und Dauer nach.
Zwei Punkte hält die Dokumentation ausdrücklich fest: Besucher können nicht auswählen, welche optionalen Cookies sie zulassen, und Odoo bezeichnet sich selbst als konform mit dem Google consent mode v2. Ob ein Banner ohne Auswahl nach Zweck den Anforderungen an eine Einwilligung nach der DSGVO genügt, ist eine Rechtsfrage; klären Sie sie mit Ihrer Rechtsberatung.
Die Analyse schalten Sie im selben Abschnitt zu: Odoo beschreibt dort Plausible Analytics und alternativ Google Tag Manager beziehungsweise Google Analytics. Die Google-Variante bringt die genannten Analyse-Cookies mit. Die Datenschutzerklärung nach Art. 13 DSGVO ist eine eigene Seite; wie Sie Seiten anlegen und im Footer verlinken, steht in Odoo-Website aufbauen.
Formulare: Daten, Zweck und Spam-Schutz
Formulare entstehen über den Baustein Contact & Forms. Nach der Dokumentation sammelt der Form-Baustein Informationen von Besuchern und legt, abhängig von den installierten Apps, Datensätze an; ohne weitere Einrichtung versendet er die Eingaben per E-Mail. Zur Auswahl stehen Actions wie Create an Opportunity (CRM), Create a Customer oder Subscribe to Newsletter. Jede verarbeitet personenbezogene Daten; die Rechtsgrundlage folgt aus dem Zweck: Bei einer Anfrage, die auf einen Vertragsabschluss oder vorvertragliche Maßnahmen gerichtet ist, trägt Art. 6 Abs. 1 Buchst. b DSGVO. Für eine sonstige Kontaktanfrage trägt Buchst. f nur, wenn die Verarbeitung zur Wahrung der berechtigten Interessen des Verantwortlichen oder eines Dritten erforderlich ist und die Interessen oder Grundrechte und Grundfreiheiten der betroffenen Person nicht überwiegen (Art. 6 Abs. 1 Buchst. f DSGVO); Erforderlichkeit und Abwägung müssen Sie belegen können, und die berechtigten Interessen gehören nach Art. 13 Abs. 1 Buchst. d DSGVO in die Datenschutzerklärung.
Die Informationspflicht trifft Sie zum Zeitpunkt der Erhebung (Art. 13 Abs. 1 DSGVO): Verantwortlicher, Zwecke, Rechtsgrundlagen und Empfänger; dazu Speicherdauer oder ihre Kriterien, Betroffenenrechte und Beschwerderecht (Art. 13 Abs. 2 DSGVO). Ein eigenes Feld für eine Einwilligung nennt die Dokumentation 20.0 nicht. Das Reduzieren auf die nötigen Felder ist eine redaktionelle Empfehlung. Verlangt sind die Informationen nach Art. 13 DSGVO: die Zwecke und die Rechtsgrundlagen der Verarbeitung (Art. 13 Abs. 1 Buchst. c DSGVO) sowie für Pflichtfelder die Angabe, ob die Bereitstellung gesetzlich oder vertraglich vorgeschrieben oder für einen Vertragsabschluss erforderlich ist, ob eine Pflicht zur Bereitstellung besteht und welche Folgen die Nichtbereitstellung hätte (Art. 13 Abs. 2 Buchst. e DSGVO).
Für den Spam-Schutz bindet Odoo 20.0 Cloudflare Turnstile oder Google reCAPTCHA v3 ein, unter anderem in Form- und Newsletter-Bausteinen. Odoo empfiehlt Turnstile und warnt bei reCAPTCHA v3, es sei je nach Auslegung nicht mit den örtlichen Datenschutzvorgaben vereinbar. Beides sind Drittanbieterdienste; nennen Sie den eingesetzten Dienst als Empfänger (Art. 13 Abs. 1 Buchst. e DSGVO) und schalten Sie im Formular Show ReCAPTCHA Policy ein, wenn Sie reCAPTCHA behalten. Was aus den Eingaben als Lead oder Kontakt in der Datenbank wird, behandelt CRM-Daten in Odoo und die DSGVO.
Was bei einem Verstoß droht
Wer entgegen § 25 Abs. 1 Satz 1 TDDDG eine Information speichert oder auf eine Information zugreift, handelt nach § 28 Abs. 1 Nr. 13 TDDDG ordnungswidrig, vorsätzlich wie fahrlässig; § 28 Abs. 2 TDDDG sieht eine Geldbuße bis 300.000 Euro vor.
Dazu treten die Folgen aus der DSGVO. Nach Art. 82 Abs. 1 DSGVO hat jede Person, der durch einen Verstoß ein materieller oder immaterieller Schaden entstanden ist, Anspruch auf Schadenersatz; das Landgericht München I hat im Verfahren 3 O 17493/20 100,00 Euro für den Kontrollverlust über die IP-Adresse zugesprochen. Für Verstöße gegen die DSGVO selbst gilt der Bußgeldrahmen des Art. 83 Abs. 4 und 5 DSGVO: bis 20 Mio. Euro oder 4 Prozent beziehungsweise bis 10 Mio. Euro oder 2 Prozent des gesamten weltweit erzielten Jahresumsatzes des vorangegangenen Geschäftsjahrs, bei einem Unternehmen und je nachdem, welcher Betrag höher ist.
Checkliste für Ihre Odoo-Website
- Prüfen Sie im Browser, von welcher Domain die Schriftdateien Ihrer Seite geladen werden, und wiederholen Sie die Prüfung nach jeder Änderung an Theme, Banner oder Formular.
- Wählen Sie für Text und Überschriften System Fonts oder laden Sie eine eigene Schriftdatei hoch, wenn Sie keine externe Schriftauslieferung wollen; bei einer hinzugefügten Google-Schrift schalten Sie den Schalter „Serve font from Google servers“ aus.
- Schalten Sie unter Website ▸ Configuration ▸ Settings im Abschnitt Tracking & SEO die Cookies Bar ein und tragen Sie eigene Domains in die Blockliste ein.
- Nehmen Sie jedes selbst gesetzte Cookie mit Name, Rolle, Kategorie und Dauer in die Seite /cookie-policy auf.
- Legen Sie unter Website ▸ Site ▸ Pages eine Seite mit den Angaben nach Art. 13 Abs. 1 und 2 DSGVO an und verlinken Sie sie im Footer.
- Reduzieren Sie die Formularfelder auf das Nötige, prüfen Sie die Action des Formulars und ob Sie statt reCAPTCHA Cloudflare Turnstile einsetzen. Nehmen Sie für die Pflichtfelder die Angaben nach Art. 13 Abs. 2 Buchst. e DSGVO in die Datenschutzerklärung auf, und dokumentieren Sie bei einer sonstigen Kontaktanfrage Erforderlichkeit und Abwägung nach Art. 6 Abs. 1 Buchst. f DSGVO.