DeutschlandRecht

Odoo-Website: Cookies, Google Fonts und Datenschutz

Rechtsstand: · Aktualisiert:

Gilt für: Odoo 20.0; Apps Website Builder (Modul website) und CRM; Community und Enterprise; Odoo Online, Odoo.sh und On-Premise

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.

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

  1. 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.
  2. 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.
  3. Schalten Sie unter Website ▸ Configuration ▸ Settings im Abschnitt Tracking & SEO die Cookies Bar ein und tragen Sie eigene Domains in die Blockliste ein.
  4. Nehmen Sie jedes selbst gesetzte Cookie mit Name, Rolle, Kategorie und Dauer in die Seite /cookie-policy auf.
  5. 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.
  6. 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.

Häufige Fragen

Brauche ich die Cookies Bar, wenn meine Seite nur technisch notwendige Zugriffe nutzt?

Nein. Nach der Dokumentation 20.0 verlangt die Cookies Bar eine Einwilligung nur für optionale Cookies. Ohne Einwilligung zulässig bleibt nach § 25 Abs. 2 Nr. 2 TDDDG, was unbedingt erforderlich ist, damit ein vom Nutzer ausdrücklich gewünschter digitaler Dienst funktioniert, etwa das Sitzungs-Cookie session_id. Die Cookies Bar führt solche Zugriffe in der Kategorie Essential.

Lädt Odoo ohne mein Zutun Schriften von Google?

Welche Schriften ein Theme verwendet, ist im Theme festgelegt; die Entwicklerdokumentation beschreibt, dass Themes ihre Schriften über eine Google-Fonts-URL deklarieren. Was Ihre Seite wirklich lädt, zeigt der Netzwerk-Bereich der Entwicklerwerkzeuge im Browser: Erscheinen dort Anfragen an fonts.googleapis.com oder fonts.gstatic.com, kommt keine Schrift vom eigenen Server.

Muss ich weiter reCAPTCHA verwenden?

Nein. Odoo empfiehlt in der Dokumentation 20.0 Cloudflare Turnstile und warnt zugleich, dass reCAPTCHA v3 je nach Auslegung nicht mit den örtlichen Datenschutzvorgaben vereinbar ist. Turnstile ist ebenso ein Drittanbieterdienst: Nennen Sie ihn in der Datenschutzerklärung, und schalten Sie im Formular den Hinweis Show ReCAPTCHA Policy ein, wenn Sie reCAPTCHA behalten.

Ersetzt die Seite /cookie-policy meine Datenschutzerklärung?

Nein. Die von Odoo angelegte Seite listet Cookies nach Kategorie, Zweck und Dauer auf. Die Datenschutzerklärung muss zusätzlich die Angaben nach Art. 13 Abs. 1 und 2 DSGVO enthalten: Verantwortlicher, Zwecke, Rechtsgrundlagen, Empfänger, Speicherdauer sowie Rechte auf Auskunft, Berichtigung, Löschung, Einschränkung, Datenübertragbarkeit und Widerspruch, dazu das Beschwerderecht bei einer Aufsichtsbehörde. Bei Pflichtfeldern im Formular kommt die Angabe nach Art. 13 Abs. 2 Buchst. e DSGVO hinzu: 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.

Quellen

  1. Telekommunikation-Digitale-Dienste-Datenschutz-Gesetz (TDDDG), § 25 Schutz der Privatsphäre bei EndeinrichtungenBundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  2. TDDDG, § 28 BußgeldvorschriftenBundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  3. TDDDG, § 1 Anwendungsbereich des GesetzesBundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  4. TDDDG, § 2 Begriffsbestimmungen (Nr. 6 Endeinrichtung)Bundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  5. TDDDG, Gesamtausgabe (Ausfertigungsdatum 23. Juni 2021; Textnachweis ab 1. Dezember 2021; zuletzt geändert durch Artikel 3 des Gesetzes vom 10. März 2026, BGBl. 2026 I Nr. 64)Bundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  6. Telekommunikationsgesetz (TKG), § 3 Begriffsbestimmungen (Nr. 13 Endnutzer)Bundesministerium der Justiz und für Verbraucherschutz, Gesetze im Internet · abgerufen am
  7. Verordnung (EU) 2016/679 (Datenschutz-Grundverordnung), Art. 4 Begriffsbestimmungen und Art. 6 Rechtmäßigkeit der Verarbeitung, deutsche Fassung, Amtsblatt der Europäischen Union L 119 vom 4. Mai 2016, S. 1Amt für Veröffentlichungen der Europäischen Union · abgerufen am
  8. Verordnung (EU) 2016/679 (Datenschutz-Grundverordnung), Art. 7 Bedingungen für die Einwilligung und Art. 13 Informationspflicht bei Erhebung von personenbezogenen Daten bei der betroffenen PersonAmt für Veröffentlichungen der Europäischen Union · abgerufen am
  9. Verordnung (EU) 2016/679 (Datenschutz-Grundverordnung), Art. 82 Recht auf SchadenersatzAmt für Veröffentlichungen der Europäischen Union · abgerufen am
  10. LG München I, Endurteil vom 20. Januar 2022, 3 O 17493/20 (Verletzung des Persönlichkeitsrechts durch Datenschutzverstoß), VolltextBayerisches Staatsministerium der Justiz, BAYERN.RECHT, Bürgerservice · abgerufen am
  11. Cookies bar (Odoo 20.0): Cookies Bar, Block tracking 3rd-party services, Cookie Policy pageOdoo S.A., Dokumentation 20.0 · abgerufen am
  12. General theme (Odoo 20.0): Fonts, Font Family, System Fonts, Add a Custom Font, Serve font from Google serversOdoo S.A., Dokumentation 20.0 · abgerufen am
  13. Forms spam protection (Odoo 20.0): Cloudflare Turnstile, Google reCAPTCHA v3, Show ReCAPTCHA PolicyOdoo S.A., Dokumentation 20.0 · abgerufen am
  14. Building blocks (Odoo 20.0): Form, Action, FieldsOdoo S.A., Dokumentation 20.0 · abgerufen am
  15. Website analytics (Odoo 20.0): Plausible.io, Google Analytics, Google Tag ManagerOdoo S.A., Dokumentation 20.0 · abgerufen am
  16. Pages (Odoo 20.0): Seite anlegen und veröffentlichen; Headers and footers (Odoo 20.0): Footer anpassenOdoo S.A., Dokumentation 20.0 · abgerufen am
  17. Theming (Odoo 20.0, Entwicklerdokumentation): Fonts, Google fonts, url der Theme-SchriftOdoo S.A., Dokumentation 20.0 · abgerufen am
  18. Switch from Community to Enterprise (Odoo 20.0): web_enterprise wird auf der Community-Datenbank installiertOdoo S.A., Dokumentation 20.0 · abgerufen am
  19. Odoo Quelltext Branch 20.0, addons/website (Community): Einstellung website_cookies_bar_setting mit Feld website.cookies_barOdoo S.A., github.com/odoo/odoo · abgerufen am
  20. Release Notes: Version 20, veröffentlicht im September 2026Odoo S.A. · abgerufen am