Ein Script-Tag. Der Rest ist Konfiguration.
noolo läuft ohne Build-Schritt auf jeder Website, die einen Head hat. Du bindest das Snippet ein, noolo erkennt die Dienste, Besucher entscheiden pro Dienst oder Kategorie.
Einbindung
Das Snippet kommt aus deinem Kundenbereich in der App, je Website eines. Es gehört in den Head, möglichst vor andere Scripts, damit noolo blockieren kann, bevor etwas lädt. noolo bestätigt die Einbindung und prüft sie danach jede Stunde. Die Beispiele auf dieser Website zeigen nur den Aufbau, die echte URL siehst du nach der Anmeldung.
<!doctype html>
<html lang="de">
<head>
<meta charset="utf-8">
<script src="https://app.noolo.at/…/noolo.js" defer></script>
<!-- Beispiel: echte URL im Kundenbereich. Weitere Scripts erst danach. -->
</head>Dienste und Kategorien
Besucher entscheiden pro Dienst und pro Kategorie. noolo kennt Notwendig, Funktional, Statistik und Marketing. Dienste, die noolo nicht zuordnen kann, erscheinen als nicht klassifiziert und zur Prüfung in der App.
- Notwendig: immer aktiv
- Funktional: z. B. Karten, Turnstile
- Statistik: z. B. Google Analytics
- Marketing: z. B. Werbe- und Video-Einbettungen
Was noolo erkennt
Beispiele aus den Nachweisen: cloudflare-turnstile, google-maps, google-analytics-4, google-tag-manager, google-ads-consent-mode, google-recaptcha, google-fonts, hcaptcha, stripe, wp_travel_engine_session. Die Liste wächst mit den geprüften Websites.
Was im Nachweis steht
- Zeitpunkt der Entscheidung
- Kennung, die der Besucher im Banner sieht (8 Hex-Zeichen)
- Besucher-ID, eine zufällige Kennung des Browsers
- Auswahl je Kategorie
- Erkannte Dienste
- Banner-Version
- Gerätetyp (mobil, desktop)
Felder wie in der App und im CSV-Export. Die Darstellung rechts ist ein Beispiel, kein API-Format. [OFFEN: Doku]
{
"zeitpunkt": "2026-10-11T07:32:21+02:00",
"kennung": "3f9a2c1e",
"besucherId": "v_o87cgvk6ltkmv2tebjh",
"auswahl": { "notwendig": true, "funktional": true, "statistik": false, "marketing": false },
"dienste": ["google-maps", "google-analytics-4", "cloudflare-turnstile"],
"version": 2,
"geraet": "mobil"
}Weitere Dokumentation
Diese Seite wächst mit den Fragen aus dem Support. [OFFEN: weitere Doku-Inhalte von Thomas, z. B. Einstellungsdialog per Link öffnen, Google Consent Mode, Ereignisse im Browser]
Fragen von Entwicklern
Brauche ich einen Build-Schritt oder ein Plugin?
Nein. Das Snippet ist ein Script-Tag im Head. Es funktioniert in statischen Seiten, CMS-Systemen und Shops gleichermaßen.
Was passiert mit Scripts, die vor noolo laden?
Das Snippet sollte möglichst früh im Head stehen, damit noolo blockieren kann, bevor Drittinhalte laden. [OFFEN: technische Details der Blockierung aus der Doku ergänzen]
Gibt es eine Browser-API für den Einwilligungsstand?
[OFFEN: Ereignis- oder Callback-API bestätigen und dokumentieren.]
Welche Daten gehen an noolo?
Zeitpunkt, Kennung, Besucher-ID, Auswahl, erkannte Dienste, Banner-Version und Gerätetyp der Entscheidung. Keine Namen, keine E-Mail-Adressen.

Konto anlegen und das Snippet holen.
Website anlegen, Snippet kopieren, einbauen. Die Bestätigung siehst du in der App.