{
    "schema": "https://saferpage.de/schemas/consent-nachweise.v1",
    "generated_at": "2026-06-08T19:18:44+00:00",
    "domain": "bmftr.bund.de",
    "scan": {
        "id": "ea21fdd7-3a6b-40e2-9d18-4c8433897e74",
        "checked_at": "2026-06-08 02:13:09.267262+02"
    },
    "summary": "bmftr.bund.de Consent- & Preference-Center: ausbaufähig mit 6/9 erfüllten Kontrollpunkten, 2 Cookie-/Storage-Zeile(n) und 4 Consent-Zustand/Zuständen.",
    "status": "ausbaufähig",
    "score": 75,
    "metrics": {
        "preference_score": 70,
        "consent_score": 24,
        "ux_score": 100,
        "cookie_rows": 2,
        "settings_controls": 0,
        "reject_available": false,
        "reject_clicked": false,
        "pre_consent_cookies": 0,
        "gpc_domains": 0,
        "tcf_purposes": 0,
        "tcf_vendors": 0,
        "state_count": 4,
        "cmp_detected": false
    },
    "links": {
        "report": "https://saferpage.de/bmftr.bund.de",
        "consent_center": "https://saferpage.de/consent/bmftr.bund.de",
        "json": "https://saferpage.de/consent/bmftr.bund.de/nachweise",
        "csv": "https://saferpage.de/consent/bmftr.bund.de/nachweise-csv",
        "operator_board": "https://saferpage.de/betreiber/bmftr.bund.de",
        "vendor_register": "https://saferpage.de/anbieter/bmftr.bund.de",
        "guide": "https://saferpage.de/guides/tracking-und-consent-reparieren"
    },
    "controls": [
        {
            "id": "preference_entrypoint",
            "label": "Präferenz-/Einstellungszugang sichtbar",
            "status": "vorhanden",
            "passed": true,
            "owner": "UX/Marketing",
            "evidence": "Einstellungen-Controls 0, Datenschutzhinweis-Link ja.",
            "action": "Cookie-/Privacy-Einstellungen dauerhaft auffindbar machen, nicht nur im Erstbanner.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "reject_and_withdraw",
            "label": "Ablehnen und Widerruf gleichwertig erreichbar",
            "status": "fehlt",
            "passed": false,
            "owner": "Marketing/IT",
            "evidence": "Ablehnen verfügbar nein, geklickt nein, neue Cookies 0, neue Datenschutz-Domains 0.",
            "action": "Ablehnen- und Widerrufspfad technisch testen; nach Ablehnen dürfen keine neuen nicht notwendigen Kontakte/Cookies entstehen.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "purpose_granularity",
            "label": "Zwecke und Kategorien granular steuerbar",
            "status": "vorhanden",
            "passed": true,
            "owner": "Datenschutz/Marketing",
            "evidence": "Kategorien 2, TCF-Zwecksignale 0, Einstellungen 0.",
            "action": "Präferenzen nach notwendigen, Statistik-, Marketing-, externen Medien-, Profiling- und Kommunikationszwecken trennen.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "consent_evidence_log",
            "label": "Auditfähige Consent-Zustände und Nachweise",
            "status": "vorhanden",
            "passed": true,
            "owner": "Compliance/IT",
            "evidence": "Consent-State-Zeilen 4, Prüfbeleg ja.",
            "action": "Consent-ID, Zeitpunkt, Version, Zwecke, Quelle, Region und Widerruf als Nachweis im Betreiber-System protokollieren.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "gpc_optout",
            "label": "GPC/Do-not-sell-or-share/Opt-out berücksichtigt",
            "status": "vorhanden",
            "passed": true,
            "owner": "Datenschutz/Marketing",
            "evidence": "GPC-Test aktiv, Datenschutz-Domains 0.",
            "action": "GPC und Opt-out-Signale in CMP/Tags respektieren und als eigenen Nachweiszustand speichern.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "cookie_declaration_link",
            "label": "Cookie-/Storage-Erklärung mit Consent-Erfordernis",
            "status": "vorhanden",
            "passed": true,
            "owner": "Datenschutz/Content",
            "evidence": "2 Cookie-/Storage-Zeile(n), 5 einwilligungsbezogene Verarbeitung(en).",
            "action": "Jede Präferenz mit Zweck, Anbieter, Laufzeit, Rechtsgrundlage und Widerrufspfad in Cookie-/Privacy-Hinweisen spiegeln.",
            "guide_url": "/guides/cookie-laufzeiten-und-zwecke-pruefen"
        },
        {
            "id": "cross_channel_preferences",
            "label": "Kommunikations- und First-Party-Präferenzen abbilden",
            "status": "vorhanden",
            "passed": true,
            "owner": "CRM/Marketing/Datenschutz",
            "evidence": "Formulare ja, Widerruf/Widerspruch im Hinweis ja.",
            "action": "Newsletter, Kontakt, Kundenkonto, Produktinteressen, sensible Daten und Marketingkanäle im Preference Center als getrennte Optionen abbilden.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "downstream_sync",
            "label": "Downstream-Sync in CRM, Tags und Anbieter-Systeme",
            "status": "prüfen",
            "passed": false,
            "owner": "IT/CRM",
            "evidence": "Aus öffentlichem Website-Scan nicht beweisbar.",
            "action": "Präferenzänderungen in Echtzeit an Tag Manager, CRM, E-Mail/SMS, Support und Vendor-Systeme synchronisieren und Fehler queue-basiert nacharbeiten.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "versioning_localization",
            "label": "Versionierung, Region und Sprache je Präferenz",
            "status": "fehlt",
            "passed": false,
            "owner": "Compliance/IT",
            "evidence": "CMP erkannt nein, Prüfbeleg ja.",
            "action": "Preference-Center-Konfigurationen mit Version, Sprache, Region, Rechtsraum und Änderungsdatum verwalten.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        }
    ],
    "preference_topics": [
        {
            "label": "Cookies, Tracker und Gerätezugriff",
            "status": "aufbauen",
            "owner": "Marketing/IT",
            "scope": "Cookie-Banner, CMP, Tag Manager, externe Skripte",
            "evidence": "CMP nein, Einstellungen 0, Cookie-Zeilen 2.",
            "withdrawal_path": "Dauerhafter Cookie-Einstellungslink und Reject-Test.",
            "legal_basis_hint": "Einwilligung für nicht notwendige Zwecke; technisch notwendige Zwecke dokumentieren."
        },
        {
            "label": "Newsletter, Kontakt und Kommunikationspräferenzen",
            "status": "prüfen",
            "owner": "CRM/Support",
            "scope": "Newsletter, Kontaktformular, Support, Kundenkonto",
            "evidence": "Formulare 1, Datenschutzkontext nein.",
            "withdrawal_path": "Abmelden, Widerspruch, Kanal-/Themenauswahl und Sperrliste.",
            "legal_basis_hint": "Einwilligung, Vertrag oder berechtigtes Interesse je Kanal/Zweck trennen."
        },
        {
            "label": "Personalisierung, Profiling, Ads und AI-Training",
            "status": "prüfen",
            "owner": "Marketing/Product/Legal",
            "scope": "Werbung, Analytics, Profiling, AI-/Model-Training, Lookalike Audiences",
            "evidence": "Consent-Bezug 5, TCF-Vendors 0.",
            "withdrawal_path": "Profiling-/Ads-/AI-Nutzung getrennt steuerbar machen.",
            "legal_basis_hint": "Einwilligung/Opt-out, Art.-22-/AI-Bezug und Zweckbindung prüfen."
        },
        {
            "label": "Sensible Daten und besondere Zwecke",
            "status": "Betreiber prüfen",
            "owner": "Datenschutz/Fachbereich",
            "scope": "Gesundheit, Bewerbungen, Kinder, Finanzdaten, genaue Standortdaten",
            "evidence": "Öffentlicher Scan kann interne besondere Datenkategorien nur begrenzt erkennen.",
            "withdrawal_path": "Spezifische Einwilligung, Widerruf und Lösch-/Sperrprozess.",
            "legal_basis_hint": "Ausdrückliche Einwilligung oder besondere Rechtsgrundlage; Datenminimierung."
        }
    ],
    "cookies_storage": [
        {
            "name": "JSESSIONID",
            "domain": "bmftr.bund.de",
            "provider": "bmftr.bund.de",
            "kind": "cookie",
            "party": "First-Party",
            "category": "Notwendig",
            "purpose": "Technisch notwendiger Betrieb der Website, Sitzungssteuerung oder Seitenauslieferung.",
            "duration": "",
            "consent_requirement": "meist ohne Einwilligung",
            "legal_basis_hint": "Technische Erforderlichkeit dokumentieren; DSGVO-Rechtsgrundlage transparent benennen."
        },
        {
            "name": "AL_LB-S",
            "domain": "bmftr.bund.de",
            "provider": "bmftr.bund.de",
            "kind": "cookie",
            "party": "First-Party",
            "category": "Unklassifiziert",
            "purpose": "Zweck aus dem technischen Scan nicht sicher bestimmbar.",
            "duration": "",
            "consent_requirement": "unklar, prüfen",
            "legal_basis_hint": "Zweck und Erforderlichkeit klären; bis zur Klärung nicht vor Einwilligung setzen."
        }
    ],
    "consent_states": [
        {
            "id": "default",
            "label": "Erstaufruf",
            "status": "ohne Nutzeraktion",
            "risk_level": "niedrig",
            "evidence": "Baseline aus erstem Chromium-Aufruf ohne Banner-Interaktion.",
            "cookie_count": 2,
            "domain_count": 2,
            "storage_total": 0,
            "action": "Nicht notwendige Cookies, Tracking-Storage und Datenschutz-Drittanbieter vor Einwilligung blockieren oder begründen.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "reject",
            "label": "Nach Ablehnen",
            "status": "nicht verfügbar",
            "risk_level": "niedrig",
            "evidence": "",
            "cookie_count": 2,
            "domain_count": 0,
            "storage_total": 0,
            "action": "Nach Ablehnen keine neuen nicht notwendigen Cookies, Tracking-Storage-Keys oder Tracking-/Werbekontakte auslösen.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "accept",
            "label": "Nach Akzeptieren",
            "status": "nicht ausgeführt",
            "risk_level": "niedrig",
            "evidence": "",
            "cookie_count": 0,
            "domain_count": 0,
            "storage_total": 0,
            "action": "Nach Akzeptieren geladene Cookies, Anbieter und Storage-Einträge in Consent-Auswahl und Datenschutzerklärung abbilden.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        },
        {
            "id": "gpc",
            "label": "GPC-Aufruf",
            "status": "aktiv",
            "risk_level": "niedrig",
            "evidence": "Navigator-GPC und Sec-GPC wurden im gesonderten Browserlauf gesetzt.",
            "cookie_count": 1,
            "domain_count": 2,
            "storage_total": 0,
            "action": "Global Privacy Control als Opt-out-Signal berücksichtigen und Tracking-/Sharing-Dienste besonders begrenzen.",
            "guide_url": "/guides/tracking-und-consent-reparieren"
        }
    ],
    "evidence_requirements": [
        {
            "label": "Consent-/Preference-Datensatz",
            "status": "teilweise",
            "owner": "Compliance/IT",
            "expected_evidence": "Consent-ID, gehashter Nutzerbezug, Zweckliste, Banner-/Notice-Version, Timestamp, Region, Quelle, Widerrufszeitpunkt.",
            "why": "Auditfähigkeit braucht mehr als ein Banner: Zeitpunkt, Zweck, Version, Quelle, Region und Widerruf müssen nachvollziehbar sein."
        },
        {
            "label": "Downstream-Sync-Protokoll",
            "status": "manuell prüfen",
            "owner": "IT/CRM",
            "expected_evidence": "Sync-Zielsysteme, letzte erfolgreiche Übertragung, Fehlerqueue, Retry-Log und manuelle Korrektur.",
            "why": "Präferenzen müssen in CRM, E-Mail, Tagging, Support und Vendor-Systemen tatsächlich wirken."
        },
        {
            "label": "Widerrufs- und Reject-Test",
            "status": "fehlt",
            "owner": "Marketing/IT",
            "expected_evidence": "Browser-Test Default/Ablehnen/Akzeptieren/GPC, Tag-Diff, Cookie-Diff und Screenshot des Einstellungswegs.",
            "why": "Widerruf muss so einfach wirken wie Erteilung und technisch belegbar sein."
        }
    ],
    "priority_actions": [
        "Ablehnen- und Widerrufspfad technisch testen; nach Ablehnen dürfen keine neuen nicht notwendigen Kontakte/Cookies entstehen.",
        "Präferenzänderungen in Echtzeit an Tag Manager, CRM, E-Mail/SMS, Support und Vendor-Systeme synchronisieren und Fehler queue-basiert nacharbeiten.",
        "Preference-Center-Konfigurationen mit Version, Sprache, Region, Rechtsraum und Änderungsdatum verwalten.",
        "1 unklassifizierte Einträge mit Zweck, Anbieter und Laufzeit nachpflegen.",
        "Pre-Consent-Blockierplan prüfen: 2 Blockier-/Consent-Maßnahme(n) abgeleitet: 1 hoch, 1 mittel.",
        "Cookie-Banner oder Datenschutzeinstellungen klar sichtbar anbieten.",
        "Ablehnen auf der ersten Ebene genauso erreichbar machen wie Akzeptieren.",
        "Granulare Zwecke und Anbieter in einer zweiten Ebene anzeigen.",
        "Nicht notwendige Cookies blockieren oder als technisch notwendig begruenden.",
        "ad_storage, analytics_storage, ad_user_data und ad_personalization vorab auf denied setzen."
    ],
    "technology": {
        "tcf": {
            "status": "unauffällig",
            "summary": "TCF-Decoder: 0 Zweck(e) mit Consent/LI-Signal, 0 Vendor-Consent(s), 0 Vendor-LI-Signal(e).",
            "score": 100,
            "purpose_consent_count": 0,
            "purpose_li_count": 0,
            "vendor_consent_count": 0,
            "vendor_li_count": 0
        },
        "gpc": {
            "enabled": true,
            "cookie_count": 1,
            "third_party_domain_count": 1,
            "privacy_relevant_domain_count": 0
        },
        "google_consent_mode": {
            "status": "kritisch",
            "summary": "Google-Tags und Consent-Mode-Signale wurden aus HTML, Browserkontakten und Tracking-IDs abgeleitet.",
            "score": 40
        }
    },
    "disclaimer": "Aus Website- und Browser-Evidenz abgeleitete Preference-Center-Readiness. Interne Consent-Logs, CRM-Syncs und Nutzerkonten kann SaferPage nur als Betreiber-Nachweis anfordern, nicht öffentlich beweisen."
}