Scan-Fakten als JSON anzeigen
{
"schema": "https://saferpage.de/schemas/public-scan-facts.v1",
"claim_boundary": "Öffentliche Rohdaten enthalten nur Scan-Fakten, Statuswerte, Evidence-Grenzen und feste Detail-/Hintergrund-Links. Betreiber-Hintergrund, Planungen, Checklisten, Code und allgemeine Empfehlungen sind ausgelagert.",
"current_evidence_policy": {
"schema": "https://saferpage.de/schemas/public-scan-current-evidence-policy.v1",
"status": "current_scan_fields_only",
"summary": "Der Fakten-JSON exportiert nur Felder, die im gespeicherten aktuellen Scan wirklich vorhanden sind. Fehlende neue Evidence wird nicht aus alten Testergebnisformaten nachgebaut.",
"guardrails": [
"Keine synthetischen Boundary-Fallbacks fuer alte Scans",
"Keine Nachbewertung alter Testergebnisse im Fakten-JSON",
"Keine Betreiber-Empfehlung im Testresult-JSON"
]
},
"host": "bike-fitline.com",
"normalized_url": "https://bike-fitline.com/",
"score": 0,
"verdict": {
"color": "red",
"label": "riskant",
"score": 0
},
"scan_id": "ecc19596-e720-40fe-bced-2fc28092a1e5",
"created_at": "2026-06-16 00:45:26.57692+02",
"evidence": {
"dns": {
"ok": true,
"addresses": [
"104.21.47.204",
"172.67.172.117",
"2606:4700:3033::ac43:ac75",
"2606:4700:3037::6815:2fcc"
],
"duration_ms": 31
},
"tls": {
"ok": true,
"cipher": "TLS_AES_256_GCM_SHA384",
"issuer": [
[
[
"countryName",
"US"
]
],
[
[
"organizationName",
"Let's Encrypt"
]
],
[
[
"commonName",
"E7"
]
]
],
"subject": [
[
[
"commonName",
"bike-fitline.com"
]
]
],
"version": "TLSv1.3",
"not_after": "Aug 9 23:14:45 2026 GMT",
"hostname_matches": true,
"days_until_expiry": 55,
"subject_alt_names": [
"*.bike-fitline.com",
"bike-fitline.com"
],
"issuer_common_name": "E7"
},
"http": {
"ok": true,
"status": 200,
"headers": {
"nel": "{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}",
"date": "Mon, 15 Jun 2026 22:45:06 GMT",
"vary": "Accept-Encoding",
"cf-ray": "a0c51a669a1cd27e-FRA",
"server": "cloudflare",
"alt-svc": "h3=\":443\"; ma=86400",
"report-to": "{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ivS0w5W52sTqNk9asvytzJYO8nYFbtKFmhr3SthyJGEykdhsuIdeVj6puFdbCixBqo%2BCs0zVSLkz5u2Oqf3vVRlzPSo%2BsuwkHsz8EwLMoaBvcmTGLUHMemibFh4tlflLe%2FDfecJi3LgiCPLX93w6\"}]}",
"connection": "close",
"content-type": "text/html",
"last-modified": "Sat, 14 Mar 2026 06:49:36 GMT",
"cf-cache-status": "DYNAMIC",
"transfer-encoding": "chunked",
"x-turbo-charged-by": "LiteSpeed",
"content-security-policy": "upgrade-insecure-requests",
"strict-transport-security": "max-age=63072000; includeSubDomains; preload"
},
"body_size": 16818,
"final_url": "https://bike-fitline.com/",
"duration_ms": 697
},
"scanner": {
"bot_url": "https://saferpage.de/bot",
"context": "manual",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"default_user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)"
},
"domain_records": {
"mx": false,
"caa": false,
"spf": false,
"dmarc": false,
"dnssec": false
},
"googlebot_http": {
"ok": true,
"status": 200,
"headers": {
"nel": "{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}",
"date": "Mon, 15 Jun 2026 22:45:07 GMT",
"vary": "Accept-Encoding",
"cf-ray": "a0c51a6b5a061bc3-FRA",
"server": "cloudflare",
"alt-svc": "h3=\":443\"; ma=86400",
"report-to": "{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oZwT7XkgEhjLg1nPcaTYOIxFWfHIbfu0ao5iZoU7VUy%2F3uhFqYbCZJlKykBejPTgFyreQFibk2p4vS1pLPP1H%2ByY%2BCjWkAGOBYlk79z8aoNPy8PAqS2EjHw7qx4vVqTzse9DTVh9kzgpjIqIqzzZ\"}]}",
"connection": "close",
"content-type": "text/html",
"last-modified": "Sat, 14 Mar 2026 06:49:36 GMT",
"cf-cache-status": "DYNAMIC",
"transfer-encoding": "chunked",
"x-turbo-charged-by": "LiteSpeed",
"content-security-policy": "upgrade-insecure-requests",
"strict-transport-security": "max-age=63072000; includeSubDomains; preload"
},
"body_size": 16818,
"final_url": "https://bike-fitline.com/",
"duration_ms": 762
},
"ai_search_policy_evidence": {
"files": [
{
"id": "robots_txt",
"url": "https://bike-fitline.com/robots.txt",
"label": "robots.txt",
"reason": "",
"status": "found",
"body_size": 1783,
"truncated": false,
"body_sha256": "355447c0b54839d50c8f361646b6f5186dc87c580da07a630274bc3070ec016d",
"duration_ms": 50,
"http_status": 200,
"ai_bot_policy": {
"bot_directives": {
"CCBot": [
{
"value": "/",
"directive": "disallow"
}
],
"GPTBot": [
{
"value": "/",
"directive": "disallow"
}
],
"ClaudeBot": [
{
"value": "/",
"directive": "disallow"
}
],
"Google-Extended": [
{
"value": "/",
"directive": "disallow"
}
]
},
"explicit_ai_bots": [
"GPTBot",
"Google-Extended",
"ClaudeBot",
"CCBot"
],
"explicit_ai_bot_count": 4,
"wildcard_directive_count": 1,
"wildcard_directives_sample": [
{
"value": "/",
"directive": "allow"
}
]
},
"relevant_lines": [
"# include providing AI-generated search summaries.",
"# ai-input: inputting content into one or more AI models (e.g., retrieval",
"# generative AI search answers).",
"# ai-train: training or fine-tuning AI models.",
"User-agent: *",
"Content-Signal: search=yes,ai-train=no",
"Allow: /",
"User-agent: Amazonbot",
"Disallow: /",
"User-agent: Applebot-Extended",
"Disallow: /",
"User-agent: Bytespider",
"Disallow: /",
"User-agent: CCBot",
"Disallow: /",
"User-agent: ClaudeBot"
]
},
{
"id": "llms_txt",
"url": "https://bike-fitline.com/llms.txt",
"label": "llms.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 713,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ai_txt",
"url": "https://bike-fitline.com/.well-known/ai.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 711,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ai_policy_txt",
"url": "https://bike-fitline.com/.well-known/ai-policy.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 706,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ward_txt",
"url": "https://bike-fitline.com/.well-known/ward.txt",
"label": "WARD Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 232,
"http_status": 302,
"relevant_lines": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/ai-search-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 5,
"found_file_count": 1,
"policy_file_count": 0,
"explicit_ai_bot_count": 4
},
"summary": "1 von 5 Policy-Datei(en) gefunden; 4 explizite KI-Bot-Regel(n) in robots.txt.",
"available": true,
"guardrails": [
"Nur feste Same-Origin-Policy-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"known_ai_bots": [
"GPTBot",
"ChatGPT-User",
"Google-Extended",
"ClaudeBot",
"PerplexityBot",
"CCBot"
],
"explicit_ai_bots": [
"GPTBot",
"Google-Extended",
"ClaudeBot",
"CCBot"
],
"policy_file_count": 0,
"llms_ward_policy_status": "not_publicly_verified",
"robots_ai_policy_status": "explicit_ai_bot_policy"
},
"adtech_transparency_evidence": {
"files": [
{
"id": "ads_txt",
"url": "https://bike-fitline.com/ads.txt",
"label": "ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 717,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "app_ads_txt",
"url": "https://bike-fitline.com/app-ads.txt",
"label": "app-ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 706,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "sellers_json",
"url": "https://bike-fitline.com/sellers.json",
"label": "sellers.json",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 214,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/adtech-transparency-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 3,
"direct_count": 0,
"reseller_count": 0,
"found_file_count": 0,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"summary": "0 von 3 AdTech-Transparenzdatei(en) gefunden; 0 DIRECT- und 0 RESELLER-Zeile(n).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-AdTech-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status, Zähler und kurze relevante Zeilen"
],
"direct_count": 0,
"ads_txt_found": false,
"reseller_count": 0,
"app_ads_txt_found": false,
"sellers_json_found": false,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"sellers_json_parse_ok": false,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"security_trust_policy_evidence": {
"files": [
{
"id": "security_txt",
"url": "https://bike-fitline.com/.well-known/security.txt",
"label": "security.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 708,
"http_status": 302,
"relevant_lines": [],
"security_txt_policy": []
},
{
"id": "security_txt_legacy",
"url": "https://bike-fitline.com/security.txt",
"label": "security.txt legacy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 714,
"http_status": 302,
"relevant_lines": [],
"security_txt_policy": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/security-trust-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 2,
"field_count": 0,
"contact_count": 0,
"found_file_count": 0,
"preferred_well_known_found": 0
},
"summary": "0 von 2 security.txt-Ziel(en) gefunden; 0 Kontaktfeld(er), 0 strukturierte Feld(er).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-security.txt-Ziele",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"field_count": 0,
"contact_count": 0,
"fields_present": [],
"policy_present": false,
"expires_present": false,
"encryption_present": false,
"security_txt_found": false,
"preferred_well_known_found": false
}
},
"findings": [
{
"id": "pre_consent_nonessential_cookies",
"title": "Möglicherweise nicht notwendige Cookies vor Einwilligung",
"public": true,
"source": "chromium_cookie_inventory",
"cookies": [
"__utma",
"__utmb",
"__utmc",
"__utmt",
"__utmz"
],
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 127,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "tracking_without_consent_hint",
"title": "Tracking ohne sichtbaren Cookie-Hinweis",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 126,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "imprint_missing",
"title": "Kein Impressum-Link erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 125,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "google_consent_mode_missing",
"title": "Google Consent Mode Default nicht erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 120,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 119,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "third_party_page_url_parameter",
"count": 3,
"title": "Seiten-URL wird in Drittanbieter-Requests übertragen",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 118,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "pii_tracking_on_data_entry_page",
"title": "Dateneingabe und datenschutzrelevante Drittanbieter im selben Browseraufruf",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 118,
"importance_label": "Wichtig für Nutzer",
"third_party_count": 2
},
{
"id": "gpc_privacy_domains_present",
"count": 2,
"title": "Datenschutzrelevante Kontakte trotz GPC-Signal",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 116,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "operator_contact_missing",
"title": "Keine klare Kontaktmöglichkeit erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 116,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "privacy_policy_provider_disclosure_gap",
"title": "Erkannte Anbieter fehlen in der Datenschutzerklärung",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 116,
"importance_label": "Wichtig für Nutzer",
"missing_providers": [
"Google Analytics",
"Google AdSense",
"Google AdSense Publisher"
]
},
{
"id": "privacy_policy_too_thin",
"title": "Datenschutzhinweis wirkt sehr dünn",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 113,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "consent_state_gpc_evidence_review",
"title": "Consent-Zustand: GPC mit Tracking-Hinweisen",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 112,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "google_tags_without_consent_context",
"title": "Google-Tags ohne klaren Consent-Kontext",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 112,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "privacy_policy_required_items_missing",
"title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
"public": true,
"missing": [
"Verantwortlicher / Anbieter",
"Zwecke der Verarbeitung",
"Rechtsgrundlagen",
"Betroffenenrechte",
"Speicherfrist / Löschung",
"Empfänger / Auftragsverarbeiter",
"Cookies / Tracking",
"Widerruf / Opt-out"
],
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 112,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "privacy_policy_tracking_disclosure_gap",
"title": "Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 111,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "long_lived_cookie",
"count": 2,
"title": "Langlebige Cookies erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 104,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "external_tracking_script_supply_chain",
"count": 2,
"title": "Tracking-/Tag-Skripte aus externer Lieferkette",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "warning",
"user_importance": 98,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "privacy_policy_update_date_missing",
"title": "Stand der Datenschutzerklärung nicht klar erkennbar",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 94,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "form_label_missing",
"count": 1,
"title": "Formularfelder ohne klare Beschriftung",
"public": true,
"audience": "nutzer",
"category": "accessibility",
"severity": "warning",
"user_importance": 92,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "privacy_policy_dpo_contact_missing",
"title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
"public": true,
"audience": "nutzer",
"category": "privacy",
"severity": "info",
"user_importance": 90,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "important_pages_not_discovered",
"title": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
"public": true,
"audience": "nutzer",
"category": "crawl",
"severity": "warning",
"user_importance": 88,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "button_name_missing",
"count": 1,
"title": "Buttons ohne erkennbaren Namen",
"public": true,
"audience": "nutzer",
"category": "accessibility",
"severity": "warning",
"user_importance": 86,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "csp_missing_frame_ancestors",
"title": "Kein CSP-frame-ancestors oder X-Frame-Options",
"public": true,
"audience": "nutzer",
"category": "security_headers",
"severity": "info",
"user_importance": 84,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "external_script_without_sri",
"count": 2,
"title": "Externe Skripte ohne Subresource Integrity",
"public": true,
"audience": "nutzer",
"category": "security_headers",
"severity": "info",
"user_importance": 84,
"importance_label": "Wichtig für Nutzer"
},
{
"id": "csp_missing_object_src",
"title": "CSP ohne object-src",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 76,
"importance_label": "Technischer Hinweis"
},
{
"id": "csp_missing_base_uri",
"title": "CSP ohne base-uri",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 74,
"importance_label": "Technischer Hinweis"
},
{
"id": "cmp_api_not_detected",
"title": "Keine gängige CMP-/TCF-API im Browser erkannt",
"public": true,
"audience": "betreiber",
"category": "privacy",
"severity": "info",
"user_importance": 74,
"importance_label": "Technischer Hinweis"
},
{
"id": "sampled_internal_tracking_detected",
"title": "Tracking-Signale auf geprüften Unterseiten",
"public": true,
"audience": "betreiber",
"category": "crawl",
"severity": "info",
"user_importance": 72,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_x_frame_options",
"title": "X-Frame-Options fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "warning",
"user_importance": 70,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_x_content_type_options",
"title": "X-Content-Type-Options fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "warning",
"user_importance": 70,
"importance_label": "Technischer Hinweis"
},
{
"id": "viewport_missing",
"title": "Viewport-Meta-Tag fehlt",
"public": true,
"audience": "betreiber",
"category": "performance",
"severity": "info",
"user_importance": 70,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_embedder_policy",
"title": "Cross-Origin-Embedder-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 68,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_opener_policy",
"title": "Cross-Origin-Opener-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 66,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_cross_origin_resource_policy",
"title": "Cross-Origin-Resource-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 64,
"importance_label": "Technischer Hinweis"
},
{
"id": "browser_privacy_relevant_third_parties",
"title": "Datenschutzrelevante Drittanbieter im Browseraufruf",
"public": true,
"audience": "betreiber",
"category": "privacy",
"severity": "warning",
"user_importance": 60,
"importance_label": "Technischer Hinweis"
},
{
"id": "third_country_transfer_review",
"title": "Drittland-/US-Anbieter im Browseraufruf prüfen",
"public": true,
"audience": "betreiber",
"category": "privacy",
"severity": "warning",
"user_importance": 60,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_referrer_policy",
"title": "Referrer-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 40,
"importance_label": "Technischer Hinweis"
},
{
"id": "missing_permissions_policy",
"title": "Permissions-Policy fehlt",
"public": true,
"audience": "betreiber",
"category": "security_headers",
"severity": "info",
"user_importance": 40,
"importance_label": "Technischer Hinweis"
}
],
"audit_modules": [
{
"id": "browser_evidence",
"color": "red",
"score": 0,
"title": "Browser-Nachweis",
"source": "Headless Chromium mit Screenshot- und Request-Telemetrie",
"status": "kritisch",
"evidence": "32 Request(s), 7 Drittanbieter-Domain(s), davon 2 datenschutzrelevant, 5 Browser-Cookie(s), Transfer-Prüfbedarf: 7, Referrer-/URL-Leaks: 3, Fingerprinting-/Replay-Hinweise: 0."
},
{
"id": "privacy_consent",
"color": "red",
"score": 15,
"title": "Datenschutz, Cookies & Consent",
"source": "Browser, HTTP-Header, HTML und Consent-/Cookie-Heuristik",
"status": "kritisch",
"evidence": "1 Tracking-Script(s), 5 Cookie(s) vor Einwilligung, 0 Tracking-Cookie(s), Ablehnen-Option: nein, Consent-Audit: 0."
},
{
"id": "operator_transparency",
"color": "red",
"score": 25,
"title": "Impressum, Kontakt & Datenschutzerklärung",
"source": "Deutschsprachige Betreiber- und Datenschutzhinweis-Erkennung",
"status": "kritisch",
"evidence": "Impressum: nein, Datenschutz: ja, Kontakt: nein."
},
{
"id": "google_third_parties",
"color": "red",
"score": 35,
"title": "Google-Dienste & Drittanbieter",
"source": "Chromium-Requests, Anbieterklassifikation und Google Consent Mode Heuristik",
"status": "kritisch",
"evidence": "Google-Tags: ja, 7 Google-nahe Domain(s), Consent-Default: nein, Analytics: ja, Werbung: ja, Fonts: nein."
},
{
"id": "site_coverage",
"color": "red",
"score": 49,
"title": "Seitenabdeckung & Crawl",
"source": "Startseiten-Links, Compliance-Links und begrenzter interner Zusatzabruf",
"status": "kritisch",
"evidence": "30 interne Linkziele erkannt, 4 priorisierte Unterseite(n) abgerufen."
},
{
"id": "security_tls",
"color": "orange",
"score": 58,
"title": "Sicherheit, TLS & Header",
"source": "DNS, TLS, HTTP-Status, Zertifikat und Security-Header",
"status": "auffällig",
"evidence": "1 Infrastruktur-Hinweis(e), Security-Header: 2/9 vorhanden, 7 fehlen, externe Skript-Hosts: 1."
},
{
"id": "referrer_url_leaks",
"color": "orange",
"score": 60,
"title": "Referrer & URL-Leaks",
"source": "Chromium-Request-Telemetrie ohne gespeicherte Parameterwerte",
"status": "auffällig",
"evidence": "3 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte."
},
{
"id": "accessibility_usability",
"color": "orange",
"score": 72,
"title": "Barrierefreiheit & Usability",
"source": "Passives HTML-Sample: Bilder, Formulare, Buttons, Sprache, Headings und Viewport",
"status": "auffällig",
"evidence": "0 Bild(er) ohne alt, 1 Formularfeld(er) ohne Beschriftung, 1 Button(s) ohne Namen."
},
{
"id": "script_supply_chain",
"color": "orange",
"score": 72,
"title": "Externe Skripte & SRI",
"source": "HTML-Script-Tags, Anbieterklassifikation und SRI-Attribute",
"status": "auffällig",
"evidence": "2 externe Skript(e) von 1 Host(s), 2 ohne SRI, 2 Tracking-/Tag-nahe Skript(e)."
},
{
"id": "cookie_inventory",
"color": "orange",
"score": 74,
"title": "Cookie-Inventar",
"source": "HTTP-Set-Cookie und Chromium-Cookies beim ersten Seitenaufruf",
"status": "auffällig",
"evidence": "5 Cookie(s), 0 Tracking-/Werbe-Cookie(s), 0 Drittanbieter-Cookie(s), 2 langlebig, 0 sehr lang."
},
{
"id": "performance_mobile",
"color": "yellow",
"score": 79,
"title": "Performance & mobile Nutzbarkeit",
"source": "HTTP-Antwort, HTML-Größe, Komprimierung und mobile Basis",
"status": "prüfen",
"evidence": "Performance-Score 94, Antwortzeit 697 ms."
},
{
"id": "forms_payments",
"color": "yellow",
"score": 82,
"title": "Formulare, Login & Zahlung",
"source": "HTML-Formulare, Eingabefelder, Zahlungsanbieter und Kontextlinks",
"status": "prüfen",
"evidence": "Aus diesem Rohfeld wird im Testresult keine zusätzliche Scan-Feststellung abgeleitet; Betreiberkontext und Umsetzungshinweise sind ausgelagert."
},
{
"id": "pii_exposure",
"color": "yellow",
"score": 82,
"title": "PII, URL-Parameter & Datenleck-Schutz",
"source": "URL-Parameter, interne Links, HTML-Formulare, Browser-Drittanbieter und Dateneingabe-Kontext",
"status": "prüfen",
"evidence": "1 PII-/Datenleck-Hinweis(e) aus URL-, Formular- und Browserkontext."
},
{
"id": "consent_journey",
"color": "yellow",
"score": 84,
"title": "Consent-Journey-Matrix",
"source": "Chromium-Zustände: Erstaufruf, Reject, Accept und GPC",
"status": "prüfen",
"evidence": "Consent-Journey: 0 neue Datenschutz-Domain(s) nach Ablehnen, 0 nach Akzeptieren, 2 im GPC-Aufruf."
},
{
"id": "tracking_pixels_beacons",
"color": "yellow",
"score": 84,
"title": "Tracking-Pixel & Beacons",
"source": "HTML-Pixel, Link-Ping-Attribute, Chromium-Requests und Browser-API-Instrumentierung",
"status": "prüfen",
"evidence": "1 Pixel-/Bildtracking-Hinweis(e), 0 Beacon-/Telemetry-Hinweis(e), 0 Link-Ping(s)."
},
{
"id": "embedded_content",
"color": "green",
"score": 100,
"title": "Externe Inhalte & Widgets",
"source": "HTML-Embeds und Chromium-Drittanbieter-Requests",
"status": "unauffällig",
"evidence": "0 externe Embed-/Widget-Dienst(e), 0 davon im ersten Browseraufruf geladen."
},
{
"id": "seo_integrity",
"color": "green",
"score": 100,
"title": "SEO-Integrität & Cloaking",
"source": "HTML-Inhalt, strukturierte Daten, Links und Googlebot-Vergleich",
"status": "unauffällig",
"evidence": "0 SEO-Spam-Hinweis(e), 0 Cloaking-Hinweis(e)."
}
],
"ai_search_policy_evidence": {
"files": [
{
"id": "robots_txt",
"url": "https://bike-fitline.com/robots.txt",
"label": "robots.txt",
"reason": "",
"status": "found",
"body_size": 1783,
"truncated": false,
"body_sha256": "355447c0b54839d50c8f361646b6f5186dc87c580da07a630274bc3070ec016d",
"duration_ms": 50,
"http_status": 200,
"ai_bot_policy": {
"bot_directives": {
"CCBot": [
{
"value": "/",
"directive": "disallow"
}
],
"GPTBot": [
{
"value": "/",
"directive": "disallow"
}
],
"ClaudeBot": [
{
"value": "/",
"directive": "disallow"
}
],
"Google-Extended": [
{
"value": "/",
"directive": "disallow"
}
]
},
"explicit_ai_bots": [
"GPTBot",
"Google-Extended",
"ClaudeBot",
"CCBot"
],
"explicit_ai_bot_count": 4,
"wildcard_directive_count": 1,
"wildcard_directives_sample": [
{
"value": "/",
"directive": "allow"
}
]
},
"relevant_lines": [
"# include providing AI-generated search summaries.",
"# ai-input: inputting content into one or more AI models (e.g., retrieval",
"# generative AI search answers).",
"# ai-train: training or fine-tuning AI models.",
"User-agent: *",
"Content-Signal: search=yes,ai-train=no",
"Allow: /",
"User-agent: Amazonbot",
"Disallow: /",
"User-agent: Applebot-Extended",
"Disallow: /",
"User-agent: Bytespider",
"Disallow: /",
"User-agent: CCBot",
"Disallow: /",
"User-agent: ClaudeBot"
]
},
{
"id": "llms_txt",
"url": "https://bike-fitline.com/llms.txt",
"label": "llms.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 713,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ai_txt",
"url": "https://bike-fitline.com/.well-known/ai.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 711,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ai_policy_txt",
"url": "https://bike-fitline.com/.well-known/ai-policy.txt",
"label": "AI Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 706,
"http_status": 302,
"relevant_lines": []
},
{
"id": "ward_txt",
"url": "https://bike-fitline.com/.well-known/ward.txt",
"label": "WARD Policy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 232,
"http_status": 302,
"relevant_lines": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/ai-search-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 5,
"found_file_count": 1,
"policy_file_count": 0,
"explicit_ai_bot_count": 4
},
"summary": "1 von 5 Policy-Datei(en) gefunden; 4 explizite KI-Bot-Regel(n) in robots.txt.",
"available": true,
"guardrails": [
"Nur feste Same-Origin-Policy-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"known_ai_bots": [
"GPTBot",
"ChatGPT-User",
"Google-Extended",
"ClaudeBot",
"PerplexityBot",
"CCBot"
],
"explicit_ai_bots": [
"GPTBot",
"Google-Extended",
"ClaudeBot",
"CCBot"
],
"policy_file_count": 0,
"llms_ward_policy_status": "not_publicly_verified",
"robots_ai_policy_status": "explicit_ai_bot_policy"
},
"adtech_transparency_evidence": {
"files": [
{
"id": "ads_txt",
"url": "https://bike-fitline.com/ads.txt",
"label": "ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 717,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "app_ads_txt",
"url": "https://bike-fitline.com/app-ads.txt",
"label": "app-ads.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 706,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
},
{
"id": "sellers_json",
"url": "https://bike-fitline.com/sellers.json",
"label": "sellers.json",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 214,
"http_status": 302,
"ads_txt_policy": [],
"relevant_lines": [],
"sellers_json_policy": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/adtech-transparency-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 3,
"direct_count": 0,
"reseller_count": 0,
"found_file_count": 0,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"summary": "0 von 3 AdTech-Transparenzdatei(en) gefunden; 0 DIRECT- und 0 RESELLER-Zeile(n).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-AdTech-Dateien",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status, Zähler und kurze relevante Zeilen"
],
"direct_count": 0,
"ads_txt_found": false,
"reseller_count": 0,
"app_ads_txt_found": false,
"sellers_json_found": false,
"ads_txt_entry_count": 0,
"exchange_domain_count": 0,
"sellers_json_parse_ok": false,
"app_ads_txt_entry_count": 0,
"sellers_json_seller_count": 0
},
"security_trust_policy_evidence": {
"files": [
{
"id": "security_txt",
"url": "https://bike-fitline.com/.well-known/security.txt",
"label": "security.txt",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 708,
"http_status": 302,
"relevant_lines": [],
"security_txt_policy": []
},
{
"id": "security_txt_legacy",
"url": "https://bike-fitline.com/security.txt",
"label": "security.txt legacy",
"reason": "redirect_blocked",
"status": "not_available",
"body_size": 0,
"truncated": false,
"body_sha256": "",
"duration_ms": 714,
"http_status": 302,
"relevant_lines": [],
"security_txt_policy": []
}
],
"origin": "https://bike-fitline.com",
"schema": "https://saferpage.de/schemas/security-trust-policy-evidence.v1",
"status": "checked",
"metrics": {
"file_count": 2,
"field_count": 0,
"contact_count": 0,
"found_file_count": 0,
"preferred_well_known_found": 0
},
"summary": "0 von 2 security.txt-Ziel(en) gefunden; 0 Kontaktfeld(er), 0 strukturierte Feld(er).",
"available": true,
"guardrails": [
"Nur feste Same-Origin-security.txt-Ziele",
"Keine Off-Host-Redirects",
"64-KB-Body-Limit",
"Öffentlich nur Hash, Status und kurze relevante Zeilen"
],
"field_count": 0,
"contact_count": 0,
"fields_present": [],
"policy_present": false,
"expires_present": false,
"encryption_present": false,
"security_txt_found": false,
"preferred_well_known_found": false
},
"site_coverage_analysis": {
"color": "red",
"pages": [
{
"url": "https://bike-fitline.com/datenschutz.html",
"path": "/datenschutz.html",
"text": "Datenschutz",
"source": "homepage_link",
"category": "datenschutz",
"priority": 100
},
{
"url": "https://bike-fitline.com/kontakt.html",
"path": "/kontakt.html",
"text": "Kontakt",
"source": "homepage_link",
"category": "kontakt",
"priority": 90
},
{
"url": "https://bike-fitline.com/",
"path": "/",
"text": "",
"source": "sitemap",
"category": "unterseite",
"priority": 24
},
{
"url": "https://bike-fitline.com/cast/jessica-henwick",
"path": "/cast/jessica-henwick",
"text": "",
"source": "sitemap",
"category": "unterseite",
"priority": 24
},
{
"url": "https://bike-fitline.com/dvd-dvds-film-filme.html",
"path": "/dvd-dvds-film-filme.html",
"text": "Blu-ray und DVD",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/fahrrad-computerspiel-pc-spiel.html",
"path": "/fahrrad-computerspiel-pc-spiel.html",
"text": "Spiele",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/fahrrad-hersteller-uebersicht.html",
"path": "/fahrrad-hersteller-uebersicht.html",
"text": "Fahrradhersteller",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/fahrradbuch-fahrradbuecher-fahrradliteratur.html",
"path": "/fahrradbuch-fahrradbuecher-fahrradliteratur.html",
"text": "Bücher / Zeitschriften",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/fahrradhersteller/index.html",
"path": "/fahrradhersteller/index.html",
"text": "Fahrradhersteller",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/fahrradtypen-fahrradtyp-bikes-uebersicht.html",
"path": "/fahrradtypen-fahrradtyp-bikes-uebersicht.html",
"text": "Fahrradtypen",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/index_htm.html",
"path": "/index_htm.html",
"text": "Startseite / Home",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
},
{
"url": "https://bike-fitline.com/informationen-fahrradfahren.html",
"path": "/informationen-fahrradfahren.html",
"text": "Rund ums Fahrrad",
"source": "homepage_link",
"category": "unterseite",
"priority": 20
}
],
"score": 49,
"status": "kritisch",
"summary": "30 interne Linkziele erkannt (2 aus Sitemap), 4 priorisierte Unterseite(n) zusätzlich abgerufen.",
"findings": [
{
"id": "important_pages_not_discovered",
"title": "Wichtige Betreiberseiten nicht vollständig in der Linkstruktur gefunden",
"public": true,
"category": "crawl",
"severity": "warning"
},
{
"id": "sampled_internal_tracking_detected",
"title": "Tracking-Signale auf geprüften Unterseiten",
"public": true,
"category": "crawl",
"severity": "info"
},
{
"id": "privacy_policy_required_items_missing",
"title": "Datenschutzerklärung deckt zentrale Bausteine nicht vollständig ab",
"public": true,
"missing": [
"Verantwortlicher / Anbieter",
"Zwecke der Verarbeitung",
"Rechtsgrundlagen",
"Betroffenenrechte",
"Speicherfrist / Löschung",
"Empfänger / Auftragsverarbeiter",
"Cookies / Tracking",
"Widerruf / Opt-out"
],
"category": "privacy",
"severity": "warning"
},
{
"id": "privacy_policy_tracking_disclosure_gap",
"title": "Cookies/Tracking in der Datenschutzerklärung nicht klar erkannt",
"public": true,
"category": "privacy",
"severity": "warning"
},
{
"id": "privacy_policy_update_date_missing",
"title": "Stand der Datenschutzerklärung nicht klar erkennbar",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "privacy_policy_dpo_contact_missing",
"title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "privacy_policy_provider_disclosure_gap",
"title": "Erkannte Anbieter fehlen in der Datenschutzerklärung",
"public": true,
"category": "privacy",
"severity": "warning",
"missing_providers": [
"Google Analytics",
"Google AdSense",
"Google AdSense Publisher"
]
}
],
"robots_ok": true,
"categories": {
"kontakt": 1,
"unterseite": 28,
"datenschutz": 1
},
"sample_limit": 4,
"sampled_count": 4,
"sampled_pages": [
{
"ok": true,
"url": "https://bike-fitline.com/datenschutz.html",
"path": "/datenschutz.html",
"audit": {
"form_count": 0,
"finding_ids": [
"imprint_missing",
"operator_contact_missing"
],
"cookie_count": 0,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 0,
"title": "",
"status": 200,
"category": "datenschutz",
"duration_ms": 200,
"privacy_hint": false,
"privacy_policy_audit": {
"url": "https://bike-fitline.com/datenschutz.html",
"color": "red",
"found": [
"Kontakt / Datenschutzkontakt",
"Verständliche Satzlänge"
],
"score": 2,
"checks": [
{
"id": "controller_identity",
"found": false,
"label": "Verantwortlicher / Anbieter"
},
{
"id": "contact",
"found": true,
"label": "Kontakt / Datenschutzkontakt"
},
{
"id": "purposes",
"found": false,
"label": "Zwecke der Verarbeitung"
},
{
"id": "legal_basis",
"found": false,
"label": "Rechtsgrundlagen"
},
{
"id": "rights",
"found": false,
"label": "Betroffenenrechte"
},
{
"id": "retention",
"found": false,
"label": "Speicherfrist / Löschung"
},
{
"id": "recipients",
"found": false,
"label": "Empfänger / Auftragsverarbeiter"
},
{
"id": "cookies_tracking",
"found": false,
"label": "Cookies / Tracking"
},
{
"id": "withdrawal",
"found": false,
"label": "Widerruf / Opt-out"
},
{
"id": "complaint_authority",
"found": false,
"label": "Beschwerde bei Aufsichtsbehörde"
},
{
"id": "third_country_transfer",
"found": false,
"label": "Drittlandtransfer"
},
{
"id": "update_date",
"found": false,
"label": "Stand / Aktualitätsdatum",
"detail": ""
},
{
"id": "dpo_contact",
"found": false,
"label": "Datenschutzkontakt / DPO-Hinweis"
},
{
"id": "readability",
"found": true,
"label": "Verständliche Satzlänge",
"detail": "6.2 Wörter/Satz"
}
],
"status": "kritisch",
"missing": [
"Verantwortlicher / Anbieter",
"Zwecke der Verarbeitung",
"Rechtsgrundlagen",
"Betroffenenrechte",
"Speicherfrist / Löschung",
"Empfänger / Auftragsverarbeiter",
"Cookies / Tracking",
"Widerruf / Opt-out",
"Beschwerde bei Aufsichtsbehörde",
"Drittlandtransfer",
"Stand / Aktualitätsdatum",
"Datenschutzkontakt / DPO-Hinweis"
],
"summary": "2 von 14 zentralen Datenschutz-Bausteinen erkannt.",
"findings": [
{
"id": "privacy_policy_update_date_missing",
"title": "Stand der Datenschutzerklärung nicht klar erkennbar",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "privacy_policy_dpo_contact_missing",
"title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"available": true,
"freshness": {
"stale": false,
"age_days": null,
"last_updated": "",
"update_date_found": false
},
"word_count": 75,
"readability": {
"hard_to_read": false,
"sentence_count": 12,
"avg_sentence_words": 6.2
},
"missing_count": 12,
"dpo_contact_found": false
}
},
{
"ok": true,
"url": "https://bike-fitline.com/kontakt.html",
"path": "/kontakt.html",
"audit": {
"form_count": 2,
"finding_ids": [
"tracking_without_consent_hint",
"privacy_policy_too_thin"
],
"cookie_count": 0,
"imprint_found": true,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": true,
"tracking_script_count": 1,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 2,
"title": "Kontakt - Kontaktseite - Adresse - Anschrift - Kontaktseite bike-fitline .com",
"status": 200,
"category": "kontakt",
"duration_ms": 693,
"privacy_hint": true,
"privacy_policy_audit": []
},
{
"ok": true,
"url": "https://bike-fitline.com/",
"path": "/",
"audit": {
"form_count": 1,
"finding_ids": [
"tracking_without_consent_hint",
"imprint_missing",
"operator_contact_missing",
"privacy_policy_too_thin"
],
"cookie_count": 0,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": true,
"tracking_script_count": 1,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 1,
"title": "Fahrrad Radsport Fahrradhersteller Bike Velo Mountainbike Trekkingbike Tandem Sport Liegerad",
"status": 200,
"category": "unterseite",
"duration_ms": 692,
"privacy_hint": true,
"privacy_policy_audit": []
},
{
"ok": true,
"url": "https://bike-fitline.com/cast/jessica-henwick",
"path": "/cast/jessica-henwick",
"audit": {
"form_count": 0,
"finding_ids": [
"imprint_missing",
"operator_contact_missing"
],
"cookie_count": 0,
"imprint_found": false,
"consent_hint_found": false,
"reject_option_found": false,
"privacy_policy_found": false,
"tracking_script_count": 0,
"pre_consent_cookie_count": 0,
"pre_consent_tracking_cookie_count": 0
},
"forms": 0,
"title": "GIGASLOT - Ladang Giga Berkah Nonstop dengan Visual Topclass - Bike-fitline",
"status": 200,
"category": "unterseite",
"duration_ms": 1069,
"privacy_hint": false,
"privacy_policy_audit": []
}
],
"robots_checked": true,
"sitemap_sources": [
"https://bike-fitline.com/sitemap.xml"
],
"sitemap_available": true,
"sitemap_url_count": 2,
"homepage_link_count": 68,
"internal_link_count": 30,
"privacy_policy_audit": {
"url": "https://bike-fitline.com/datenschutz.html",
"color": "red",
"found": [
"Kontakt / Datenschutzkontakt",
"Verständliche Satzlänge"
],
"score": 2,
"checks": [
{
"id": "controller_identity",
"found": false,
"label": "Verantwortlicher / Anbieter"
},
{
"id": "contact",
"found": true,
"label": "Kontakt / Datenschutzkontakt"
},
{
"id": "purposes",
"found": false,
"label": "Zwecke der Verarbeitung"
},
{
"id": "legal_basis",
"found": false,
"label": "Rechtsgrundlagen"
},
{
"id": "rights",
"found": false,
"label": "Betroffenenrechte"
},
{
"id": "retention",
"found": false,
"label": "Speicherfrist / Löschung"
},
{
"id": "recipients",
"found": false,
"label": "Empfänger / Auftragsverarbeiter"
},
{
"id": "cookies_tracking",
"found": false,
"label": "Cookies / Tracking"
},
{
"id": "withdrawal",
"found": false,
"label": "Widerruf / Opt-out"
},
{
"id": "complaint_authority",
"found": false,
"label": "Beschwerde bei Aufsichtsbehörde"
},
{
"id": "third_country_transfer",
"found": false,
"label": "Drittlandtransfer"
},
{
"id": "update_date",
"found": false,
"label": "Stand / Aktualitätsdatum",
"detail": ""
},
{
"id": "dpo_contact",
"found": false,
"label": "Datenschutzkontakt / DPO-Hinweis"
},
{
"id": "readability",
"found": true,
"label": "Verständliche Satzlänge",
"detail": "6.2 Wörter/Satz"
}
],
"status": "kritisch",
"missing": [
"Verantwortlicher / Anbieter",
"Zwecke der Verarbeitung",
"Rechtsgrundlagen",
"Betroffenenrechte",
"Speicherfrist / Löschung",
"Empfänger / Auftragsverarbeiter",
"Cookies / Tracking",
"Widerruf / Opt-out",
"Beschwerde bei Aufsichtsbehörde",
"Drittlandtransfer",
"Stand / Aktualitätsdatum",
"Datenschutzkontakt / DPO-Hinweis"
],
"summary": "2 von 14 zentralen Datenschutz-Bausteinen erkannt.",
"findings": [
{
"id": "privacy_policy_update_date_missing",
"title": "Stand der Datenschutzerklärung nicht klar erkennbar",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "privacy_policy_dpo_contact_missing",
"title": "Datenschutzkontakt oder DPO-Hinweis nicht klar erkannt",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"available": true,
"freshness": {
"stale": false,
"age_days": null,
"last_updated": "",
"update_date_found": false
},
"word_count": 75,
"readability": {
"hard_to_read": false,
"sentence_count": 12,
"avg_sentence_words": 6.2
},
"missing_count": 12,
"dpo_contact_found": false
},
"sitemap_source_count": 1,
"provider_disclosure_audit": {
"color": "red",
"found": [],
"score": 0,
"checks": [
{
"id": "analytics_google_analytics",
"found": false,
"category": "analytics",
"evidence": [
"UA-2277569-1",
"ssl.google-analytics.com"
],
"keywords": [
"google analytics",
"analytics.google",
"_ga",
"ga4",
"gtag"
],
"provider": "Google Analytics",
"category_label": "Tracking-ID"
},
{
"id": "advertising_google_adsense",
"found": false,
"category": "advertising",
"evidence": [
"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js",
"pagead2.googlesyndication.com"
],
"keywords": [
"doubleclick",
"google ads",
"adsense",
"ad manager",
"ad_storage",
"google werbung"
],
"provider": "Google AdSense",
"category_label": "Tracking"
},
{
"id": "advertising_google_adsense_publisher",
"found": false,
"category": "advertising",
"evidence": [
"ca-pub-1781703434294282"
],
"keywords": [
"doubleclick",
"google ads",
"adsense",
"ad manager",
"ad_storage",
"google werbung"
],
"provider": "Google AdSense Publisher",
"category_label": "Tracking-ID"
}
],
"status": "kritisch",
"missing": [
"Google Analytics",
"Google AdSense",
"Google AdSense Publisher"
],
"summary": "0 von 3 technisch erkannten Anbieter(n) wurden in der Datenschutzerklärung erwähnt.",
"available": true,
"missing_count": 3,
"detected_count": 3,
"mentioned_count": 0
},
"important_categories_found": [
"datenschutz",
"kontakt"
],
"sampled_tracking_page_count": 2,
"sampled_form_privacy_gap_count": 0,
"sitemap_candidate_source_count": 1
},
"page_analysis": {
"h1": [
"Alle Fahrradhersteller - weltweit - und vieles mehr"
],
"h2": [
"Willkommen bei Bike-Fitline, das Online-Portal wo sich (fast alles) <span class=\"orange\">ums Rad - Fahrrad dreht.</span>",
"<a href=\"stichwort/belgien/11.html\" title=\"Belgien\" style=\"font-size:16px;\">Belgien</a>",
"<a href=\"stichwort/deutschland/6.html\" title=\"Deutschland\" style=\"font-size:16px;\">Deutschland</a>",
"<a href=\"stichwort/customizing/65.html\" title=\"Customizing\" style=\"font-size:16px;\">Customizing</a>",
"<a href=\"stichwort/oesterreich/7.html\" title=\"Österreich\" style=\"font-size:16px;\">Österreich</a>",
"<a href=\"stichwort/nabenmotor/50.html\" title=\"Nabenmotor\" style=\"font-size:16px;\">Nabenmotor</a>",
"<a href=\"stichwort/kindertransport/31.html\" title=\"Kindertransport\" style=\"font-size:16px;\">Kindertransport</a>",
"<a href=\"stichwort/taiwan/19.html\" title=\"Taiwan\" style=\"font-size:16px;\">Taiwan</a>",
"<a href=\"stichwort/asien/17.html\" title=\"Asien\" style=\"font-size:16px;\">Asien</a>",
"<a href=\"stichwort/daenemark/12.html\" title=\"Dänemark\" style=\"font-size:16px;\">Dänemark</a>"
],
"title": "Fahrrad Radsport Fahrradhersteller Bike Velo Mountainbike Trekkingbike Tandem Sport Liegerad",
"keywords": [
[
"fahrradhersteller",
7
],
[
"fahrrad",
6
],
[
"mountainbike",
4
],
[
"radsport",
3
],
[
"bike",
3
],
[
"tandem",
3
],
[
"fahrradmarken",
3
],
[
"news",
3
],
[
"velo",
2
],
[
"trekkingbike",
2
]
],
"language": "de",
"description": ":► Fahrrad-Hersteller, Fahrradmarken, Bike, Fahrrad, Mountainbike, Rennrad, Faltrad, Klapprad, BMX, Tandem",
"favicon_url": "https://bike-fitline.com/images/favicon.ico",
"link_counts": {
"external": 5,
"internal": 63
},
"preview_image": "/cache/screenshots/bike-fitline.com-160x150-28245b2fe50fd7f9d9.png",
"screenshot_url": "/cache/screenshots/bike-fitline.com-160x150-28245b2fe50fd7f9d9.png",
"external_scripts": [
"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js",
"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"
],
"browser_final_url": "https://bike-fitline.com/",
"meta_preview_image": "",
"screenshot_renderer": "playwright-chromium",
"external_link_targets": [
{
"host": "hundefutter-katzenfutter.shop",
"count": 4,
"examples": [
{
"href": "https://hundefutter-katzenfutter.shop/content/partners/233519/shop/shop/special_offer/eejood8E",
"text": "10 % Rabatt"
},
{
"href": "https://hundefutter-katzenfutter.shop/content/partners/233519/shop/shop/special_offer/eejood8E",
"text": "für Neukunden"
},
{
"href": "https://hundefutter-katzenfutter.shop/content/partners/233519/shop/shop/special_offer/eejood8E",
"text": "auf Hundefutter"
}
],
"nofollow": 0,
"strength": "strong",
"follow_count": 4
},
{
"host": "netzathleten.de",
"count": 1,
"examples": [
{
"href": "http://www.netzathleten.de/",
"text": ""
}
],
"nofollow": 0,
"strength": "weak",
"follow_count": 1
}
]
},
"browser_analysis": {
"cookies": {
"items": [
{
"name": "__utma",
"domain": ".bike-fitline.com",
"secure": false,
"expires": 1816123508.108913,
"http_only": false,
"same_site": "Lax"
},
{
"name": "__utmc",
"domain": ".bike-fitline.com",
"secure": false,
"expires": -1,
"http_only": false,
"same_site": "Lax"
},
{
"name": "__utmz",
"domain": ".bike-fitline.com",
"secure": false,
"expires": 1797331508,
"http_only": false,
"same_site": "Lax"
},
{
"name": "__utmt",
"domain": ".bike-fitline.com",
"secure": false,
"expires": 1781564108,
"http_only": false,
"same_site": "Lax"
},
{
"name": "__utmb",
"domain": ".bike-fitline.com",
"secure": false,
"expires": 1781565308,
"http_only": false,
"same_site": "Lax"
}
],
"total": 5,
"third_party": 0
},
"storage": {
"total": 0,
"local_storage_keys": [],
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_keys": [],
"session_storage_total": 0
},
"findings": [
{
"id": "browser_privacy_relevant_third_parties",
"title": "Datenschutzrelevante Drittanbieter im Browseraufruf",
"public": true,
"category": "privacy",
"severity": "warning"
},
{
"id": "gpc_privacy_domains_present",
"count": 2,
"title": "Datenschutzrelevante Kontakte trotz GPC-Signal",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "cmp_api_not_detected",
"title": "Keine gängige CMP-/TCF-API im Browser erkannt",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "third_country_transfer_review",
"title": "Drittland-/US-Anbieter im Browseraufruf prüfen",
"public": true,
"category": "privacy",
"severity": "warning"
},
{
"id": "third_party_page_url_parameter",
"count": 3,
"title": "Seiten-URL wird in Drittanbieter-Requests übertragen",
"public": true,
"category": "privacy",
"severity": "warning"
},
{
"id": "consent_state_gpc_evidence_review",
"title": "Consent-Zustand: GPC mit Tracking-Hinweisen",
"public": true,
"category": "privacy",
"severity": "info"
},
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"renderer": "playwright-chromium",
"final_url": "https://bike-fitline.com/",
"consent_ui": {
"accept_controls": [],
"accept_max_area": 0,
"reject_controls": [],
"reject_max_area": 0,
"settings_controls": [],
"first_layer_summary": "Akzeptieren 0 / Ablehnen 0 / Einstellungen 0",
"cookie_context_found": true,
"reject_less_prominent": false,
"visible_control_count": 40,
"reject_prominence_ratio": 0
},
"gpc_signal": {
"error": "",
"enabled": true,
"storage": {
"total": 0,
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"cookie_count": 5,
"request_count": 31,
"sec_gpc_header": true,
"navigator_value": true,
"contacted_domains": [
{
"host": "bike-fitline.com",
"count": 18,
"category": "other",
"provider": "bike-fitline.com",
"third_party": false,
"category_label": "Sonstige",
"resource_types": {
"image": 10,
"script": 3,
"document": 1,
"stylesheet": 4
}
},
{
"host": "apis.google.com",
"count": 6,
"category": "other",
"provider": "apis.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"script": 5,
"document": 1
}
},
{
"host": "ssl.google-analytics.com",
"count": 2,
"category": "analytics",
"provider": "Google Analytics",
"third_party": true,
"category_label": "Analytics",
"resource_types": {
"image": 1,
"script": 1
}
},
{
"host": "accounts.google.com",
"count": 1,
"category": "other",
"provider": "accounts.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"document": 1
}
},
{
"host": "csp.withgoogle.com",
"count": 1,
"category": "other",
"provider": "csp.withgoogle.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"other": 1
}
},
{
"host": "developers.google.com",
"count": 1,
"category": "other",
"provider": "developers.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"document": 1
}
},
{
"host": "pagead2.googlesyndication.com",
"count": 1,
"category": "advertising",
"provider": "Google AdSense",
"third_party": true,
"category_label": "Werbung",
"resource_types": {
"script": 1
}
},
{
"host": "ssl.gstatic.com",
"count": 1,
"category": "cdn",
"provider": "Google Static",
"third_party": true,
"category_label": "CDN",
"resource_types": {
"script": 1
}
}
],
"contacted_domain_count": 8,
"privacy_relevant_domains": [
{
"host": "ssl.google-analytics.com",
"count": 2,
"category": "analytics",
"provider": "Google Analytics",
"third_party": true,
"category_label": "Analytics",
"resource_types": {
"image": 1,
"script": 1
}
},
{
"host": "pagead2.googlesyndication.com",
"count": 1,
"category": "advertising",
"provider": "Google AdSense",
"third_party": true,
"category_label": "Werbung",
"resource_types": {
"script": 1
}
}
],
"third_party_cookie_count": 0,
"third_party_domain_count": 7,
"privacy_relevant_domain_count": 2
},
"screenshot": {
"fit": "contain",
"width": 160,
"height": 150,
"source_width": 1024,
"source_height": 960,
"source_capture": "full_page",
"capture_version": "contain-v4-viewport-transparency-160x150"
},
"consent_apis": {
"cmpapi": false,
"tcfapi": false,
"onetrust": false,
"cookiebot": false,
"data_layer": false,
"cmp_detected": false,
"usercentrics": false,
"google_tag_data": false
},
"accept_signal": {
"error": "",
"enabled": false,
"storage": {
"total": 0,
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"clicked_text": "",
"accept_clicked": false,
"accept_available": false,
"contacted_domains": [],
"contacted_domain_count": 0,
"new_domains_after_accept": [],
"privacy_relevant_domains": [],
"third_party_domain_count": 0,
"cookie_count_after_accept": 0,
"cookie_count_before_accept": 0,
"request_count_after_accept": 0,
"storage_count_after_accept": 0,
"request_count_before_accept": 0,
"new_cookie_count_after_accept": 0,
"privacy_relevant_domain_count": 0,
"new_request_count_after_accept": 0,
"third_party_cookie_count_after_accept": 0,
"storage_tracking_hint_count_after_accept": 0,
"new_privacy_relevant_domains_after_accept": [],
"new_privacy_relevant_domain_count_after_accept": 0
},
"request_count": 32,
"top_providers": [
{
"provider": "apis.google.com",
"request_count": 6
},
{
"provider": "csp.withgoogle.com",
"request_count": 2
},
{
"provider": "Google Analytics",
"request_count": 2
},
{
"provider": "accounts.google.com",
"request_count": 1
},
{
"provider": "developers.google.com",
"request_count": 1
},
{
"provider": "Google AdSense",
"request_count": 1
},
{
"provider": "Google Static",
"request_count": 1
}
],
"request_samples": [
{
"host": "pagead2.googlesyndication.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 3,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "ssl.google-analytics.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 1,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 2,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "ssl.google-analytics.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 2,
"query_keys": [
"utmwv",
"utms",
"utmn",
"utmhn",
"utmcs",
"utmsr",
"utmvp",
"utmsc",
"utmul",
"utmje",
"utmfl",
"utmdt"
],
"third_party": true,
"resource_type": "image",
"query_key_count": 22,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 1
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 13,
"query_keys": [
"le"
],
"third_party": true,
"resource_type": "script",
"query_key_count": 1,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 14,
"query_keys": [
"le"
],
"third_party": true,
"resource_type": "script",
"query_key_count": 1,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 7,
"query_keys": [
"usegapi",
"size",
"annotation",
"recommendations",
"align",
"origin",
"url",
"gsrc",
"ic",
"jsh"
],
"third_party": true,
"resource_type": "document",
"query_key_count": 10,
"url_value_param_count": 2,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 2
},
{
"host": "developers.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 0,
"query_keys": [],
"third_party": true,
"resource_type": "document",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "accounts.google.com",
"method": "GET",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 3,
"query_keys": [
"parent",
"jsh"
],
"third_party": true,
"resource_type": "document",
"query_key_count": 2,
"url_value_param_count": 1,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 1
},
{
"host": "csp.withgoogle.com",
"method": "POST",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 3,
"query_keys": [],
"third_party": true,
"resource_type": "other",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "ssl.gstatic.com",
"method": "GET",
"referrer": {
"host": "accounts.google.com",
"has_path": false,
"has_query": false,
"same_site": false,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 3,
"query_keys": [],
"third_party": true,
"resource_type": "script",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "accounts.google.com",
"has_path": false,
"has_query": false,
"same_site": false,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 2,
"query_keys": [
"onload"
],
"third_party": true,
"resource_type": "script",
"query_key_count": 1,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "apis.google.com",
"method": "GET",
"referrer": {
"host": "accounts.google.com",
"has_path": false,
"has_query": false,
"same_site": false,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": true,
"path_depth": 13,
"query_keys": [
"le"
],
"third_party": true,
"resource_type": "script",
"query_key_count": 1,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
},
{
"host": "csp.withgoogle.com",
"method": "POST",
"referrer": {
"host": "bike-fitline.com",
"has_path": false,
"has_query": false,
"same_site": true,
"path_depth": 0,
"query_keys": [],
"sensitive_query_key_count": 0
},
"has_query": false,
"path_depth": 3,
"query_keys": [],
"third_party": true,
"resource_type": "other",
"query_key_count": 0,
"url_value_param_count": 0,
"sensitive_query_key_count": 0,
"target_url_value_param_count": 0
}
],
"cmp_consent_state": {
"tcf": {
"api_found": false,
"vendor_li": [],
"cmp_loaded": false,
"cmp_status": "",
"purpose_li": [],
"event_status": "",
"gdpr_applies": null,
"ping_success": false,
"policy_version": "",
"vendor_consents": [],
"vendor_li_count": 0,
"purpose_consents": [],
"purpose_li_count": 0,
"tc_string_length": 0,
"tc_string_present": false,
"vendor_consent_count": 0,
"purpose_consent_count": 0
},
"onetrust": {
"found": false,
"active_groups": [],
"active_group_count": 0
},
"cookiebot": {
"found": false,
"declined": false,
"consented": false,
"has_response": false,
"consent_marketing": null,
"consent_statistics": null,
"consent_preferences": null
},
"usercentrics": {
"found": false,
"has_response": false,
"services_count": 0,
"accepted_services_count": 0
}
},
"contacted_domains": [
{
"host": "bike-fitline.com",
"count": 18,
"category": "other",
"provider": "bike-fitline.com",
"third_party": false,
"category_label": "Sonstige",
"resource_types": {
"image": 10,
"script": 3,
"document": 1,
"stylesheet": 4
}
},
{
"host": "apis.google.com",
"count": 6,
"category": "other",
"provider": "apis.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"script": 5,
"document": 1
}
},
{
"host": "csp.withgoogle.com",
"count": 2,
"category": "other",
"provider": "csp.withgoogle.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"other": 2
}
},
{
"host": "ssl.google-analytics.com",
"count": 2,
"category": "analytics",
"provider": "Google Analytics",
"third_party": true,
"category_label": "Analytics",
"resource_types": {
"image": 1,
"script": 1
}
},
{
"host": "accounts.google.com",
"count": 1,
"category": "other",
"provider": "accounts.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"document": 1
}
},
{
"host": "developers.google.com",
"count": 1,
"category": "other",
"provider": "developers.google.com",
"third_party": true,
"category_label": "Sonstige",
"resource_types": {
"document": 1
}
},
{
"host": "pagead2.googlesyndication.com",
"count": 1,
"category": "advertising",
"provider": "Google AdSense",
"third_party": true,
"category_label": "Werbung",
"resource_types": {
"script": 1
}
},
{
"host": "ssl.gstatic.com",
"count": 1,
"category": "cdn",
"provider": "Google Static",
"third_party": true,
"category_label": "CDN",
"resource_types": {
"script": 1
}
}
],
"privacy_api_metrics": {
"api_calls": [],
"beacon_count": 0,
"webgl_read_count": 0,
"canvas_read_count": 0,
"audio_context_count": 0,
"canvas_export_count": 0,
"fetch_keepalive_count": 0,
"webgl_parameter_count": 0,
"mutation_observer_count": 0,
"keyboard_input_listener_count": 0
},
"tcf_consent_analysis": {
"color": "green",
"score": 100,
"status": "unauffällig",
"summary": "TCF-Decoder: 0 Zweck(e) mit Consent/LI-Signal, 0 Vendor-Consent(s), 0 Vendor-LI-Signal(e).",
"findings": [],
"api_found": false,
"available": false,
"cmp_loaded": false,
"cmp_status": "",
"event_status": "",
"gdpr_applies": null,
"ping_success": false,
"purpose_rows": [
{
"id": 1,
"label": "Informationen auf einem Gerät speichern und/oder abrufen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 2,
"label": "Einfache Anzeigen auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 3,
"label": "Personalisiertes Anzeigen-Profil erstellen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 4,
"label": "Personalisierte Anzeigen auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 5,
"label": "Personalisiertes Inhalts-Profil erstellen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 6,
"label": "Personalisierte Inhalte auswählen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 7,
"label": "Anzeigen-Leistung messen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 8,
"label": "Inhalte-Leistung messen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 9,
"label": "Marktforschung zur Generierung von Erkenntnissen nutzen",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 10,
"label": "Produkte entwickeln und verbessern",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
},
{
"id": 11,
"label": "Begrenzte Daten zur Anzeigen-Auswahl verwenden",
"status": "nicht_erlaubt",
"risk_level": "niedrig",
"consent_granted": false,
"legitimate_interest_granted": false
}
],
"vendor_li_ids": [],
"policy_version": "",
"vendor_li_count": 0,
"purpose_li_count": 0,
"tc_string_length": 0,
"tc_string_present": false,
"vendor_consent_ids": [],
"granted_purpose_rows": [],
"vendor_consent_count": 0,
"purpose_consent_count": 0,
"high_risk_purpose_count": 0,
"medium_risk_purpose_count": 0
},
"viewport_transparency": {
"samples": [
{
"tag": "a",
"top": 114,
"href": "kontakt.html",
"left": 531,
"text": "Kontakt",
"width": 57,
"height": 12,
"category": "contact"
},
{
"tag": "a",
"top": 496,
"href": "kontakt.html",
"left": 234,
"text": "Rückmeldung",
"width": 73,
"height": 14,
"category": "contact"
},
{
"tag": "a",
"top": 594,
"href": "kontakt.html",
"left": 41,
"text": "Kontakt",
"width": 152,
"height": 20,
"category": "contact"
},
{
"tag": "a",
"top": 634,
"href": "datenschutz.html",
"left": 41,
"text": "Datenschutz",
"width": 152,
"height": 20,
"category": "privacy_notice"
}
],
"available": true,
"sample_count": 4,
"claim_boundary": "Sichtbarkeits-Evidence aus dem ersten Headless-Chromium-Viewport; keine Aussage ueber Footer nach Scrollen, Loginbereiche oder rechtliche Vollstaendigkeit.",
"viewport_width": 1024,
"category_counts": {
"contact": 3,
"privacy_notice": 1
},
"contact_visible": true,
"imprint_visible": false,
"viewport_height": 960,
"cookie_consent_visible": false,
"privacy_notice_visible": true
},
"consent_journey_matrix": {
"color": "yellow",
"items": [
{
"host": "ssl.google-analytics.com",
"states": {
"gpc": 2,
"default": 2
},
"category": "analytics",
"provider": "Google Analytics",
"category_label": "Analytics",
"privacy_relevant": true,
"total_request_count": 4
},
{
"host": "pagead2.googlesyndication.com",
"states": {
"gpc": 1,
"default": 1
},
"category": "advertising",
"provider": "Google AdSense",
"category_label": "Werbung",
"privacy_relevant": true,
"total_request_count": 2
},
{
"host": "apis.google.com",
"states": {
"gpc": 6,
"default": 6
},
"category": "other",
"provider": "apis.google.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 12
},
{
"host": "csp.withgoogle.com",
"states": {
"gpc": 1,
"default": 2
},
"category": "other",
"provider": "csp.withgoogle.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 3
},
{
"host": "ssl.gstatic.com",
"states": {
"gpc": 1,
"default": 1
},
"category": "cdn",
"provider": "Google Static",
"category_label": "CDN",
"privacy_relevant": false,
"total_request_count": 2
},
{
"host": "accounts.google.com",
"states": {
"gpc": 1,
"default": 1
},
"category": "other",
"provider": "accounts.google.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 2
},
{
"host": "developers.google.com",
"states": {
"gpc": 1,
"default": 1
},
"category": "other",
"provider": "developers.google.com",
"category_label": "Sonstige",
"privacy_relevant": false,
"total_request_count": 2
}
],
"score": 84,
"states": [
{
"id": "default",
"label": "Erstaufruf",
"description": "Kontakte ohne Nutzeraktion",
"domain_count": 7,
"request_count": 14,
"privacy_relevant_domain_count": 2
},
{
"id": "reject_new",
"label": "Nach Ablehnen neu",
"description": "Neue Kontakte nach Ablehnen-Klick",
"domain_count": 0,
"request_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "accept_new",
"label": "Nach Akzeptieren neu",
"description": "Neue Kontakte nach Akzeptieren-Klick",
"domain_count": 0,
"request_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "gpc",
"label": "GPC-Aufruf",
"description": "Kontakte bei Global Privacy Control",
"domain_count": 7,
"request_count": 13,
"privacy_relevant_domain_count": 2
}
],
"status": "prüfen",
"summary": "Consent-Journey: 0 neue Datenschutz-Domain(s) nach Ablehnen, 0 nach Akzeptieren, 2 im GPC-Aufruf.",
"gpc_privacy_relevant_domain_count": 2,
"accept_privacy_relevant_domain_count": 0,
"reject_privacy_relevant_domain_count": 0
},
"consent_state_evidence": {
"rows": [
{
"id": "default",
"label": "Erstaufruf",
"status": "ohne Nutzeraktion",
"evidence": "Baseline aus erstem Chromium-Aufruf ohne Banner-Interaktion.",
"risk_level": "mittel",
"cookie_count": 5,
"domain_count": 8,
"request_count": 32,
"storage_total": 0,
"new_cookie_count": 5,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 2
},
{
"id": "reject",
"label": "Nach Ablehnen",
"status": "nicht verfügbar",
"evidence": "",
"risk_level": "niedrig",
"cookie_count": 5,
"domain_count": 0,
"request_count": 0,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "accept",
"label": "Nach Akzeptieren",
"status": "nicht ausgeführt",
"evidence": "",
"risk_level": "niedrig",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"id": "gpc",
"label": "GPC-Aufruf",
"status": "aktiv",
"evidence": "Navigator-GPC und Sec-GPC wurden im gesonderten Browserlauf gesetzt.",
"risk_level": "mittel",
"cookie_count": 5,
"domain_count": 8,
"request_count": 31,
"storage_total": 0,
"new_cookie_count": 0,
"third_party_cookie_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 2
}
],
"color": "yellow",
"score": 80,
"status": "prüfen",
"summary": "Consent-State-Evidence: 4 Zustände verglichen, 0 hoch auffällig, 2 mittel auffällig.",
"findings": [
{
"id": "consent_state_gpc_evidence_review",
"title": "Consent-Zustand: GPC mit Tracking-Hinweisen",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"available": true,
"high_count": 0,
"medium_count": 2
},
"contacted_domain_count": 8,
"fingerprinting_analysis": {
"color": "green",
"score": 100,
"checks": [
{
"id": "canvas",
"ok": true,
"count": 0,
"label": "Canvas-Auslese",
"detail": "0 Pixel-Lesezugriff(e), 0 Export(e)."
},
{
"id": "webgl",
"ok": true,
"count": 0,
"label": "WebGL-Merkmale",
"detail": "0 Parameterzugriff(e), 0 Pixel-Lesezugriff(e)."
},
{
"id": "audio",
"ok": true,
"count": 0,
"label": "AudioContext",
"detail": "0 AudioContext/OfflineAudioContext-Aufruf(e)."
},
{
"id": "session_replay",
"ok": true,
"count": 0,
"label": "Session-Replay-Anbieter",
"detail": "Keine bekannten Anbieter erkannt."
},
{
"id": "input_listeners",
"ok": true,
"count": 0,
"label": "Tastatur-/Eingabe-Listener",
"detail": "0 Tastatur-/Input-Listener, 1 Interaktions-Listener, 0 MutationObserver."
}
],
"status": "unauffällig",
"metrics": {
"webgl_read_count": 0,
"canvas_read_count": 0,
"audio_context_count": 0,
"canvas_export_count": 0,
"webgl_parameter_count": 0,
"mutation_observer_count": 0,
"keyboard_input_listener_count": 0
},
"summary": "0 Fingerprinting-/Session-Replay-Hinweis(e) aus dem Browserlauf.",
"findings": [],
"finding_count": 0,
"session_replay_domains": []
},
"privacy_relevant_domains": [
{
"host": "ssl.google-analytics.com",
"count": 2,
"category": "analytics",
"provider": "Google Analytics",
"third_party": true,
"category_label": "Analytics",
"resource_types": {
"image": 1,
"script": 1
}
},
{
"host": "pagead2.googlesyndication.com",
"count": 1,
"category": "advertising",
"provider": "Google AdSense",
"third_party": true,
"category_label": "Werbung",
"resource_types": {
"script": 1
}
}
],
"provider_category_counts": {
"cdn": 1,
"other": 4,
"analytics": 1,
"advertising": 1
},
"provider_category_labels": {
"cdn": "CDN",
"other": "other",
"analytics": "Analytics",
"advertising": "Werbung"
},
"third_party_domain_count": 7,
"embedded_content_analysis": {
"color": "green",
"items": [],
"score": 100,
"status": "unauffällig",
"summary": "0 externe Embed-/Widget-Dienst(e), 0 davon im ersten Browseraufruf geladen.",
"findings": [],
"map_count": 0,
"total_count": 0,
"video_count": 0,
"captcha_count": 0,
"category_counts": [],
"social_widget_count": 0,
"loaded_pre_consent_count": 0,
"request_count_by_provider": []
},
"referrer_leakage_analysis": {
"color": "orange",
"items": [
{
"host": "ssl.google-analytics.com",
"category": "analytics",
"provider": "Google Analytics",
"query_keys": [
"utmwv",
"utms",
"utmn",
"utmhn",
"utmcs",
"utmsr",
"utmvp",
"utmsc"
],
"risk_reason": "Seiten-URL oder URL-Wert in Drittanbieter-Requestparametern",
"resource_type": "image",
"category_label": "Analytics",
"referrer_query_keys": [],
"url_value_param_count": 0,
"target_url_value_param_count": 1
},
{
"host": "apis.google.com",
"category": "other",
"provider": "apis.google.com",
"query_keys": [
"usegapi",
"size",
"annotation",
"recommendations",
"align",
"origin",
"url",
"gsrc"
],
"risk_reason": "Seiten-URL oder URL-Wert in Drittanbieter-Requestparametern",
"resource_type": "document",
"category_label": "Sonstige",
"referrer_query_keys": [],
"url_value_param_count": 2,
"target_url_value_param_count": 2
},
{
"host": "accounts.google.com",
"category": "other",
"provider": "accounts.google.com",
"query_keys": [
"parent",
"jsh"
],
"risk_reason": "Seiten-URL oder URL-Wert in Drittanbieter-Requestparametern",
"resource_type": "document",
"category_label": "Sonstige",
"referrer_query_keys": [],
"url_value_param_count": 1,
"target_url_value_param_count": 1
}
],
"score": 60,
"status": "auffällig",
"summary": "3 Drittanbieter-Domain(s) mit Referrer-/URL-Leak-Prüfbedarf, 0 sensible Query-Kontexte.",
"findings": [
{
"id": "third_party_page_url_parameter",
"count": 3,
"title": "Seiten-URL wird in Drittanbieter-Requests übertragen",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"sample_count": 14,
"full_referrer_count": 0,
"page_url_param_count": 3,
"affected_domain_count": 3,
"sensitive_query_count": 0
},
"third_party_contact_matrix": {
"color": "red",
"items": [
{
"host": "ssl.google-analytics.com",
"region": "US",
"status": "vor Einwilligung prüfen",
"category": "analytics",
"provider": "Google Analytics",
"risk_level": "hoch",
"request_count": 2,
"transfer_risk": "hoch",
"category_label": "Analytics",
"resource_types": [
{
"type": "image",
"count": 1
},
{
"type": "script",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": true
},
{
"host": "pagead2.googlesyndication.com",
"region": "US",
"status": "dokumentieren",
"category": "advertising",
"provider": "Google AdSense",
"risk_level": "mittel",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Werbung",
"resource_types": [
{
"type": "script",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": true
},
{
"host": "apis.google.com",
"region": "US",
"status": "prüfen",
"category": "other",
"provider": "apis.google.com",
"risk_level": "niedrig",
"request_count": 6,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"resource_types": [
{
"type": "script",
"count": 5
},
{
"type": "document",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "csp.withgoogle.com",
"region": "US",
"status": "prüfen",
"category": "other",
"provider": "csp.withgoogle.com",
"risk_level": "niedrig",
"request_count": 2,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"resource_types": [
{
"type": "other",
"count": 2
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "ssl.gstatic.com",
"region": "US",
"status": "prüfen",
"category": "cdn",
"provider": "Google Static",
"risk_level": "niedrig",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "CDN",
"resource_types": [
{
"type": "script",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "accounts.google.com",
"region": "US",
"status": "prüfen",
"category": "other",
"provider": "accounts.google.com",
"risk_level": "niedrig",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"resource_types": [
{
"type": "document",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "developers.google.com",
"region": "US",
"status": "prüfen",
"category": "other",
"provider": "developers.google.com",
"risk_level": "niedrig",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"resource_types": [
{
"type": "document",
"count": 1
}
],
"transfer_label": "Drittland/USA",
"privacy_relevant": false
}
],
"score": 45,
"status": "kritisch",
"summary": "7 Drittanbieter-Domain(s) beim ersten Browseraufruf, davon 2 datenschutzrelevant.",
"category_counts": {
"CDN": 1,
"Werbung": 1,
"Sonstige": 4,
"Analytics": 1
},
"total_domain_count": 7,
"total_request_count": 14,
"privacy_relevant_count": 2,
"transfer_risk_analysis": {
"color": "orange",
"items": [
{
"host": "ssl.google-analytics.com",
"region": "US",
"provider": "Google Analytics",
"request_count": 2,
"transfer_risk": "hoch",
"category_label": "Analytics",
"transfer_label": "Drittland/USA",
"privacy_relevant": true
},
{
"host": "pagead2.googlesyndication.com",
"region": "US",
"provider": "Google AdSense",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Werbung",
"transfer_label": "Drittland/USA",
"privacy_relevant": true
},
{
"host": "apis.google.com",
"region": "US",
"provider": "apis.google.com",
"request_count": 6,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "csp.withgoogle.com",
"region": "US",
"provider": "csp.withgoogle.com",
"request_count": 2,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "ssl.gstatic.com",
"region": "US",
"provider": "Google Static",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "CDN",
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "accounts.google.com",
"region": "US",
"provider": "accounts.google.com",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"transfer_label": "Drittland/USA",
"privacy_relevant": false
},
{
"host": "developers.google.com",
"region": "US",
"provider": "developers.google.com",
"request_count": 1,
"transfer_risk": "hoch",
"category_label": "Sonstige",
"transfer_label": "Drittland/USA",
"privacy_relevant": false
}
],
"score": 55,
"status": "auffällig",
"summary": "7 Drittanbieter für Transfer-/Jurisdiktionsprüfung, 7 mit hohem Prüfbedarf, 0 unklar.",
"findings": [
{
"id": "third_country_transfer_review",
"title": "Drittland-/US-Anbieter im Browseraufruf prüfen",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"unknown_count": 0,
"high_risk_count": 7,
"total_vendor_count": 7,
"third_country_count": 7
}
},
"privacy_relevant_domain_count": 2,
"tracking_pixel_beacon_analysis": {
"color": "yellow",
"items": [
{
"url": "",
"host": "ssl.google-analytics.com",
"kind": "browser_tracking_request",
"reason": "image-Request mit 22 Query-Schlüssel(n).",
"source": "chromium_request",
"category": "analytics",
"provider": "Google Analytics",
"query_keys": [
"utmwv",
"utms",
"utmn",
"utmhn",
"utmcs",
"utmsr",
"utmvp",
"utmsc"
],
"third_party": true,
"resource_type": "image",
"category_label": "Analytics"
}
],
"score": 84,
"status": "prüfen",
"summary": "1 Pixel-/Bildtracking-Hinweis(e), 0 Beacon-/Telemetry-Hinweis(e), 0 Link-Ping(s).",
"findings": [
{
"id": "tracking_pixel_detected",
"count": 1,
"title": "Tracking-Pixel oder pixelnahe Requests erkannt",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"pixel_count": 1,
"link_ping_count": 0,
"telemetry_count": 0,
"beacon_api_count": 0,
"third_party_count": 1,
"fetch_keepalive_count": 0,
"privacy_relevant_count": 1,
"beacon_code_reference_count": 0,
"fetch_keepalive_reference_count": 0
}
},
"privacy_analysis": {
"cookies": {
"items": [],
"total": 0,
"tracking": [],
"pre_consent": [],
"missing_secure": [],
"missing_samesite": [],
"pre_consent_tracking": [],
"pre_consent_nonessential": []
},
"findings": [
{
"id": "tracking_without_consent_hint",
"title": "Tracking ohne sichtbaren Cookie-Hinweis",
"public": true,
"category": "privacy",
"severity": "warning"
}
],
"tracking_ids": [
{
"type": "google_adsense_publisher",
"value": "ca-pub-1781703434294282",
"provider": "Google AdSense Publisher"
},
{
"type": "google_universal_analytics",
"value": "UA-2277569-1",
"provider": "Universal Analytics"
}
],
"tracking_scripts": [
{
"url": "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js",
"provider": "Google AdSense"
}
],
"consent_hint_found": false,
"privacy_policy_hint_found": true
},
"consent_audit": {
"color": "red",
"score": 0,
"checks": [
{
"id": "banner_visible",
"ok": false,
"label": "Cookie-/Consent-Hinweis sichtbar",
"detail": "Ein Hinweis mit Cookie-/Einwilligungsbezug wurde im sichtbaren Text erkannt."
},
{
"id": "reject_visible",
"ok": false,
"label": "Ablehnen gleichwertig erreichbar",
"detail": "Ablehnen oder nur notwendige Cookies wurde im Text oder Browser erkannt. Browser-Buttons: 0."
},
{
"id": "settings_visible",
"ok": false,
"label": "Einstellungen oder Auswahl vorhanden",
"detail": "Eine Einstellungs- oder Auswahlmoeglichkeit wurde im Text oder Browser erkannt. Browser-Buttons: 0."
},
{
"id": "browser_reject_visible",
"ok": true,
"label": "Ablehnen im sichtbaren Banner",
"detail": "Sichtbare Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0."
},
{
"id": "browser_settings_visible",
"ok": true,
"label": "Einstellungen im sichtbaren Banner",
"detail": "Sichtbare Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0."
},
{
"id": "reject_equally_prominent",
"ok": true,
"label": "Ablehnen nicht deutlich schwaecher dargestellt",
"detail": "Groessen-Verhältnis Ablehnen/Akzeptieren: nicht messbar."
},
{
"id": "reject_button_clickable",
"ok": true,
"label": "Ablehnen technisch klickbar",
"detail": "Wenn ein Ablehnen-Button sichtbar ist, klickt SaferPage ihn im Chromium-Browser einmal an."
},
{
"id": "no_new_cookies_after_reject",
"ok": true,
"label": "Keine neuen Cookies nach Ablehnen",
"detail": "0 neue Cookie(s) nach dem Ablehnen-Klick."
},
{
"id": "no_tracking_storage_after_reject",
"ok": true,
"label": "Kein Tracking-Storage nach Ablehnen",
"detail": "0 Tracking-Hinweis(e) im Web Storage nach Ablehnen."
},
{
"id": "no_privacy_domains_after_reject",
"ok": true,
"label": "Keine neuen Tracking-Kontakte nach Ablehnen",
"detail": "0 neue datenschutzrelevante Domain(s) nach Ablehnen."
},
{
"id": "gpc_signal_respected",
"ok": false,
"label": "GPC-Signal ohne Tracking-Hinweise",
"detail": "GPC-Aufruf: 2 datenschutzrelevante Domain(s), 0 Drittanbieter-Cookie(s), 0 Storage-Hinweis(e)."
},
{
"id": "no_tracking_cookies_before_consent",
"ok": true,
"label": "Keine Tracking-Cookies vor Einwilligung",
"detail": "0 Tracking-Cookie(s) im Erstaufruf."
},
{
"id": "no_nonessential_cookies_before_consent",
"ok": false,
"label": "Keine nicht notwendigen Cookies vor Einwilligung",
"detail": "5 moeglicherweise nicht notwendige Cookie(s) im Erstaufruf."
},
{
"id": "google_default_restrictive",
"ok": false,
"label": "Google Consent Default restriktiv",
"detail": "Google-Tags brauchen vor dem ersten Laden restriktive Consent-Defaults."
},
{
"id": "third_parties_explained",
"ok": true,
"label": "Drittanbieter begrenzt und erklaerbar",
"detail": "0 datenschutzrelevante Drittanbieter-Domain(s), 7 Drittanbieter insgesamt."
},
{
"id": "storage_without_tracking_hints",
"ok": true,
"label": "Web Storage ohne Tracking-Hinweise",
"detail": "0 Storage-Key(s), 0 Tracking-Hinweis(e)."
},
{
"id": "cmp_api_detected_when_needed",
"ok": false,
"label": "CMP-/TCF-Signal bei Tracking erkennbar",
"detail": "Gängige CMP-/TCF-Indikatoren: __tcfapi, __cmp, Cookiebot, OneTrust oder Usercentrics."
},
{
"id": "accept_click_documented",
"ok": true,
"label": "Akzeptieren-Klick nachvollziehbar",
"detail": "Accept-Test: nicht ausgefuehrt, neue Requests 0, neue Cookies 0, neue Datenschutz-Domains 0."
},
{
"id": "cmp_state_readable",
"ok": true,
"label": "CMP-/TCF-Zustand auslesbar",
"detail": "TCF TC-String: nein, Cookiebot: nein, OneTrust: nein, Usercentrics: nein."
},
{
"id": "cmp_default_restrictive",
"ok": true,
"label": "CMP-Default wirkt restriktiv",
"detail": "TCF Purposes erlaubt: 0, TCF Vendors erlaubt: 0, Cookiebot Statistik/Marketing: nein."
}
],
"status": "kritisch",
"summary": "Consent, Tracking oder Drittanbieter wirken im Erstaufruf deutlich nachbesserungsbeduerftig.",
"evidence": [
"5 Cookie(s) beim ersten Aufruf aus HTTP-Headern und Chromium",
"1 Tracking-Script(s) im HTML",
"0 datenschutzrelevante Drittanbieter-Domain(s)",
"0 Storage-Key(s), 0 Tracking-Hinweis(e)",
"Consent-Banner-Controls: Akzeptieren 0, Ablehnen 0, Einstellungen 0",
"Ablehnen/Akzeptieren-Prominenz: nicht messbar",
"Reject-Test: nicht ausgefuehrt, neue Cookies 0, Tracking-Storage 0, neue Datenschutz-Domains 0",
"Accept-Test: nicht ausgefuehrt, neue Requests 0, neue Cookies 0, neue Datenschutz-Domains 0, Drittanbieter-Cookies 0",
"CMP-State: TCF-String nein, TCF Purposes 0, TCF Vendors 0, Cookiebot nein, OneTrust-Gruppen 0, Usercentrics-Services 0",
"GPC-Test: aktiv, Datenschutz-Domains 2, Drittanbieter-Cookies 0, Storage-Hinweise 0",
"CMP-/TCF-Signal: nein",
"Google Consent Default: nein"
],
"gpc_enabled": true,
"cmp_detected": false,
"blocking_plan": {
"items": [
{
"kind": "google_consent",
"level": "hoch",
"source": "Google",
"target": "Google Consent Defaults",
"recipes": [
{
"tool": "Google Consent Mode v2"
},
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
}
],
"category": "tag_manager",
"evidence": "Google-Tags erkannt, aber kein Consent-Default vor dem ersten Tag.",
"category_label": "Tag-Manager"
},
{
"kind": "script",
"level": "hoch",
"source": "pagead2.googlesyndication.com",
"target": "https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "advertising",
"evidence": "Google AdSense · Werbung",
"category_label": "Werbung"
},
{
"kind": "third_party_request",
"level": "hoch",
"source": "Google AdSense",
"target": "pagead2.googlesyndication.com",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "advertising",
"evidence": "1 Request(s) im Erstaufruf · Werbung",
"category_label": "Werbung"
},
{
"kind": "third_party_request",
"level": "hoch",
"source": "Google Analytics",
"target": "ssl.google-analytics.com",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "analytics",
"evidence": "2 Request(s) im Erstaufruf · Analytics",
"category_label": "Analytics"
},
{
"kind": "cookie",
"level": "mittel",
"source": "bike-fitline.com",
"target": "__utma",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "unknown",
"evidence": "vor Consent gesetzt · bike-fitline.com · lang (399 Tage)",
"category_label": "Unklar"
},
{
"kind": "cookie",
"level": "mittel",
"source": "bike-fitline.com",
"target": "__utmb",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "unknown",
"evidence": "vor Consent gesetzt · bike-fitline.com · kurz (0 Tage)",
"category_label": "Unklar"
},
{
"kind": "cookie",
"level": "mittel",
"source": "bike-fitline.com",
"target": "__utmc",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "unknown",
"evidence": "vor Consent gesetzt · bike-fitline.com · Session",
"category_label": "Unklar"
},
{
"kind": "cookie",
"level": "mittel",
"source": "bike-fitline.com",
"target": "__utmt",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "unknown",
"evidence": "vor Consent gesetzt · bike-fitline.com · kurz (0 Tage)",
"category_label": "Unklar"
},
{
"kind": "cookie",
"level": "mittel",
"source": "bike-fitline.com",
"target": "__utmz",
"recipes": [
{
"tool": "Google Tag Manager"
},
{
"tool": "Cookiebot"
},
{
"tool": "Usercentrics"
},
{
"tool": "OneTrust"
},
{
"tool": "Developer-Fallback"
}
],
"category": "unknown",
"evidence": "vor Consent gesetzt · bike-fitline.com · lang (182 Tage)",
"category_label": "Unklar"
}
],
"summary": "9 Blockier-/Consent-Maßnahme(n) abgeleitet: 4 hoch, 5 mittel.",
"available": true,
"high_count": 4,
"total_count": 9,
"type_counts": {
"cookie": 5,
"script": 1,
"google_consent": 1,
"third_party_request": 2
},
"medium_count": 5
},
"tcf_api_found": false,
"cookiebot_found": false,
"accept_test_enabled": false,
"browser_cookie_count": 5,
"accept_button_clicked": false,
"browser_storage_count": 0,
"reject_button_clicked": false,
"reject_less_prominent": false,
"tcf_tc_string_present": false,
"tracking_script_count": 1,
"accept_button_available": false,
"reject_button_available": false,
"reject_prominence_ratio": 0,
"pre_consent_cookie_count": 5,
"pre_consent_cookie_names": [
"__utma",
"__utmb",
"__utmc",
"__utmt",
"__utmz"
],
"tcf_vendor_consent_count": 0,
"third_party_domain_count": 7,
"tcf_purpose_consent_count": 0,
"onetrust_active_group_count": 0,
"usercentrics_services_count": 0,
"browser_accept_control_count": 0,
"browser_cookie_context_found": true,
"browser_reject_control_count": 0,
"gpc_third_party_cookie_count": 0,
"post_accept_new_cookie_count": 0,
"post_reject_new_cookie_count": 0,
"post_accept_new_request_count": 0,
"browser_settings_control_count": 0,
"gpc_storage_tracking_hint_count": 0,
"cookiebot_marketing_or_statistics": false,
"gpc_privacy_relevant_domain_count": 2,
"pre_consent_tracking_cookie_count": 0,
"pre_consent_tracking_cookie_names": [],
"privacy_relevant_third_party_count": 0,
"browser_storage_tracking_hint_count": 0,
"post_accept_third_party_cookie_count": 0,
"pre_consent_nonessential_cookie_count": 5,
"pre_consent_nonessential_cookie_names": [
"__utma",
"__utmb",
"__utmc",
"__utmt",
"__utmz"
],
"post_accept_storage_tracking_hint_count": 0,
"post_reject_storage_tracking_hint_count": 0,
"post_accept_privacy_relevant_domain_count": 0,
"post_reject_privacy_relevant_domain_count": 0
},
"cookie_inventory": {
"color": "orange",
"items": [
{
"name": "__utma",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2027-07-20T22:45:08+00:00",
"long_lived": true,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "mittel",
"expires_in_days": 399,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "long",
"retention_label": "lang (399 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
},
{
"name": "__utmb",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2026-06-15T23:15:08+00:00",
"long_lived": false,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "niedrig",
"expires_in_days": 0,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "short",
"retention_label": "kurz (0 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
},
{
"name": "__utmc",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "",
"long_lived": false,
"persistent": false,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "niedrig",
"expires_in_days": null,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "session",
"retention_label": "Session",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
},
{
"name": "__utmt",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2026-06-15T22:55:08+00:00",
"long_lived": false,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "niedrig",
"expires_in_days": 0,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "short",
"retention_label": "kurz (0 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
},
{
"name": "__utmz",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2026-12-15T10:45:08+00:00",
"long_lived": true,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "mittel",
"expires_in_days": 182,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "long",
"retention_label": "lang (182 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
}
],
"score": 74,
"total": 5,
"status": "auffällig",
"summary": "5 Cookie(s) inventarisiert: 0 Tracking-/Werbe-Cookie(s), 0 Drittanbieter-Cookie(s), 2 langlebige Cookie(s), 0 sehr lange Laufzeit(en).",
"findings": [
{
"id": "long_lived_cookie",
"count": 2,
"title": "Langlebige Cookies erkannt",
"public": true,
"category": "privacy",
"severity": "info"
}
],
"categories": {
"unknown": 5
},
"tracking_count": 0,
"category_labels": {
"consent": "Consent",
"payment": "Zahlung",
"unknown": "Unklar",
"security": "Sicherheit",
"analytics": "Analytics",
"necessary": "Notwendig",
"functional": "Funktional",
"advertising": "Werbung"
},
"long_lived_count": 2,
"persistent_count": 4,
"first_party_count": 5,
"pre_consent_count": 5,
"retention_classes": {
"long": 2,
"short": 2,
"session": 1
},
"third_party_count": 0,
"missing_secure_count": 5,
"retention_risk_count": 2,
"retention_risk_items": [
{
"name": "__utma",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2027-07-20T22:45:08+00:00",
"long_lived": true,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "mittel",
"expires_in_days": 399,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "long",
"retention_label": "lang (399 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
},
{
"name": "__utmz",
"domain": "bike-fitline.com",
"secure": false,
"sources": [
"browser_first_load"
],
"category": "unknown",
"provider": "bike-fitline.com",
"tracking": false,
"http_only": false,
"same_site": "Lax",
"expires_at": "2026-12-15T10:45:08+00:00",
"long_lived": true,
"persistent": true,
"first_party": true,
"origin_host": "bike-fitline.com",
"pre_consent": true,
"source_label": "Chromium-Erstaufruf",
"category_label": "Unklar",
"retention_risk": "mittel",
"expires_in_days": 182,
"origin_evidence": "18 Browser-Request(s) · document:1, image:10, script:3, stylesheet:4",
"origin_provider": "bike-fitline.com",
"retention_class": "long",
"retention_label": "lang (182 Tage)",
"likely_essential": false,
"origin_script_url": "",
"origin_resource_type": ""
}
],
"very_long_lived_count": 0,
"missing_samesite_count": 0,
"persistent_unknown_count": 0,
"long_lived_tracking_count": 0
},
"security_header_analysis": {
"color": "orange",
"score": 58,
"checks": [
{
"ok": true,
"note": "",
"label": "HSTS",
"value": "max-age=63072000; includeSubDomains; preload",
"header": "strict-transport-security",
"present": true,
"purpose": "Erzwingt HTTPS nach dem ersten sicheren Aufruf.",
"severity": "warning"
},
{
"ok": true,
"note": "",
"label": "Content-Security-Policy",
"value": "upgrade-insecure-requests",
"header": "content-security-policy",
"present": true,
"purpose": "Begrenzt Skript-, Frame- und Ressourcenquellen im Browser.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "X-Frame-Options",
"value": "",
"header": "x-frame-options",
"present": false,
"purpose": "Reduziert Clickjacking-Risiken bei älteren Browsern.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "X-Content-Type-Options",
"value": "",
"header": "x-content-type-options",
"present": false,
"purpose": "Verhindert MIME-Sniffing bei Skripten und Stylesheets.",
"severity": "warning"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Referrer-Policy",
"value": "",
"header": "referrer-policy",
"present": false,
"purpose": "Begrenzt, welche URL-Informationen an Zielseiten weitergegeben werden.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Permissions-Policy",
"value": "",
"header": "permissions-policy",
"present": false,
"purpose": "Begrenzt sensible Browser-Funktionen pro Seite.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Opener-Policy",
"value": "",
"header": "cross-origin-opener-policy",
"present": false,
"purpose": "Isoliert Top-Level-Fenster und reduziert Cross-Origin-Seiteneffekte.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Resource-Policy",
"value": "",
"header": "cross-origin-resource-policy",
"present": false,
"purpose": "Begrenzt, welche fremden Seiten Ressourcen einbetten dürfen.",
"severity": "info"
},
{
"ok": false,
"note": "Fehlt in der HTTP-Antwort.",
"label": "Cross-Origin-Embedder-Policy",
"value": "",
"header": "cross-origin-embedder-policy",
"present": false,
"purpose": "Erzwingt kontrollierte Cross-Origin-Einbettungen und kann Cross-Origin Isolation ermöglichen.",
"severity": "info"
}
],
"status": "auffällig",
"missing": [
"X-Frame-Options",
"X-Content-Type-Options",
"Referrer-Policy",
"Permissions-Policy",
"Cross-Origin-Opener-Policy",
"Cross-Origin-Resource-Policy",
"Cross-Origin-Embedder-Policy"
],
"summary": "2 von 9 wichtigen Security-Headern vorhanden, 2 korrekt bewertet. CSP wirksam mit 1 Direktive(n), 0 Warnung(en), 3 Hinweis(e).",
"findings": [
{
"id": "csp_missing_object_src",
"title": "CSP ohne object-src",
"public": true,
"category": "security_headers",
"severity": "info"
},
{
"id": "csp_missing_base_uri",
"title": "CSP ohne base-uri",
"public": true,
"category": "security_headers",
"severity": "info"
},
{
"id": "csp_missing_frame_ancestors",
"title": "Kein CSP-frame-ancestors oder X-Frame-Options",
"public": true,
"category": "security_headers",
"severity": "info"
}
],
"ok_count": 2,
"weak_count": 0,
"csp_analysis": {
"color": "yellow",
"score": 82,
"status": "prüfen",
"summary": "CSP wirksam mit 1 Direktive(n), 0 Warnung(en), 3 Hinweis(e).",
"enforced": true,
"findings": [
{
"id": "csp_missing_object_src",
"title": "CSP ohne object-src",
"public": true,
"category": "security_headers",
"severity": "info"
},
{
"id": "csp_missing_base_uri",
"title": "CSP ohne base-uri",
"public": true,
"category": "security_headers",
"severity": "info"
},
{
"id": "csp_missing_frame_ancestors",
"title": "Kein CSP-frame-ancestors oder X-Frame-Options",
"public": true,
"category": "security_headers",
"severity": "info"
}
],
"available": true,
"directives": [
{
"name": "upgrade-insecure-requests",
"value": "",
"values": []
}
],
"info_count": 3,
"report_only": false,
"finding_count": 3,
"warning_count": 0
},
"missing_count": 7,
"present_count": 2,
"missing_info_count": 5,
"missing_warning_count": 2
},
"infrastructure_analysis": {
"signals": {
"caa": false,
"dnssec": false,
"final_https": true,
"tls_version": "TLSv1.3",
"hsts_enabled": true,
"address_count": 4,
"ipv6_available": true,
"email_protection": {
"mx": false,
"spf": false,
"dmarc": false
},
"certificate_valid": true,
"certificate_issuer": "E7",
"certificate_alt_names": [
"*.bike-fitline.com",
"bike-fitline.com"
],
"multiple_ip_addresses": true,
"certificate_expires_at": "Aug 9 23:14:45 2026 GMT",
"certificate_days_remaining": 55,
"certificate_hostname_matches": true
},
"findings": [
{
"id": "caa_missing",
"title": "CAA-Record fehlt",
"public": true,
"category": "dns",
"severity": "info"
}
],
"risk_level": "low",
"positive_signals": [
"Mehrere IP-Adressen gefunden: Hinweis auf redundante Infrastruktur oder CDN.",
"IPv6 ist vorhanden.",
"Moderne TLS-Version aktiv: TLSv1.3.",
"HSTS ist aktiv."
]
},
"performance_analysis": {
"score": 94,
"signals": {
"compressed": false,
"duration_ms": 697,
"image_count": 2,
"script_count": 5,
"cache_control": "",
"content_length": 0,
"viewport_found": false,
"stylesheet_count": 2
},
"findings": [
{
"id": "viewport_missing",
"title": "Viewport-Meta-Tag fehlt",
"public": true,
"category": "performance",
"severity": "info"
}
],
"risk_level": "medium"
},
"accessibility_analysis": {
"color": "orange",
"score": 72,
"status": "auffällig",
"signals": {
"h1_count": 1,
"image_count": 2,
"button_count": 1,
"heading_count": 29,
"viewport_found": false,
"html_lang_found": true,
"form_field_count": 1,
"image_missing_alt_count": 0,
"buttons_without_name_count": 1,
"form_fields_without_label_count": 1
},
"summary": "2 Bild(er), 1 Formularfeld(er), 1 Button(s) im passiven HTML-Sample auf Basis-Barrierefreiheit geprüft.",
"findings": [
{
"id": "form_label_missing",
"count": 1,
"title": "Formularfelder ohne klare Beschriftung",
"public": true,
"category": "accessibility",
"severity": "warning"
},
{
"id": "button_name_missing",
"count": 1,
"title": "Buttons ohne erkennbaren Namen",
"public": true,
"category": "accessibility",
"severity": "warning"
}
],
"wcag_matrix": {
"rows": [
{
"id": "wcag_non_text_content",
"ok": true,
"wcag": "WCAG 1.1.1 Non-text Content",
"title": "Alternativtexte für Bilder",
"impact": "niedrig",
"status": "ok",
"evidence": "0 von 2 Bild(er) ohne alt-Text im HTML-Sample."
},
{
"id": "wcag_form_labels",
"ok": false,
"wcag": "WCAG 1.3.1 Info and Relationships / 3.3.2 Labels or Instructions",
"title": "Formularfelder beschriften",
"impact": "hoch",
"status": "prüfen",
"evidence": "1 von 1 Formularfeld(er) ohne erkennbare Beschriftung."
},
{
"id": "wcag_button_names",
"ok": false,
"wcag": "WCAG 4.1.2 Name, Role, Value",
"title": "Buttons mit Namen versehen",
"impact": "hoch",
"status": "prüfen",
"evidence": "1 von 1 Button(s) ohne erkennbaren Namen."
},
{
"id": "wcag_page_language",
"ok": true,
"wcag": "WCAG 3.1.1 Language of Page",
"title": "Seitensprache auszeichnen",
"impact": "niedrig",
"status": "ok",
"evidence": "HTML-lang-Attribut gefunden."
},
{
"id": "wcag_heading_structure",
"ok": true,
"wcag": "WCAG 1.3.1 Info and Relationships / 2.4.6 Headings and Labels",
"title": "Überschriftenstruktur",
"impact": "niedrig",
"status": "ok",
"evidence": "1 H1 und 29 Überschrift(en) im HTML-Sample."
},
{
"id": "wcag_mobile_reflow",
"ok": false,
"wcag": "WCAG 1.4.10 Reflow",
"title": "Mobile Viewport-Basis",
"impact": "mittel",
"status": "prüfen",
"evidence": "Kein Viewport-Meta-Tag im HTML-Sample erkannt."
}
],
"summary": "3 WCAG-/EAA-Prüfpunkt(e) auffällig, davon 2 mit hoher Auswirkung.",
"standard": "WCAG 2.2 orientierte Basisprüfung",
"available": true,
"issue_count": 3,
"high_impact_count": 2
}
},
"domain_history": {
"status": [
"client transfer prohibited"
],
"summary": "Die Domain existiert seit etwa 23.4 Jahren.",
"age_days": 8535,
"findings": [],
"available": true,
"registrar": "TurnCommerce, Inc. DBA NameBright.com",
"expires_at": "2027-02-01T18:14:56+00:00",
"risk_level": "low",
"registered_at": "2003-02-01T18:14:56+00:00",
"expires_in_days": 230,
"last_changed_at": "2026-03-13T23:13:24+00:00"
},
"data_entry_analysis": {
"forms": [
{
"url": "https://bike-fitline.com/kontakt.html",
"path": "/kontakt.html",
"method": "UNBEKANNT",
"source": "crawl",
"purpose": "Formular",
"data_types": [],
"field_count": 0
},
{
"url": "https://bike-fitline.com/",
"path": "/",
"method": "UNBEKANNT",
"source": "crawl",
"purpose": "Formular",
"data_types": [],
"field_count": 0
},
{
"purpose": "Formular",
"field_count": 0,
"source": "crawl",
"path": "/kontakt.html",
"url": "https://bike-fitline.com/kontakt.html"
},
{
"purpose": "Formular",
"field_count": 0,
"source": "crawl",
"path": "/",
"url": "https://bike-fitline.com/"
}
],
"score": 84,
"summary": "Crawl fand 3 Formular(e) auf 2 geprüften Seite(n), u. a. /kontakt.html, /.",
"findings": [],
"form_count": 3,
"risk_level": "medium",
"field_count": 1,
"asks_for_data": true,
"crawl_form_pages": [
{
"url": "https://bike-fitline.com/kontakt.html",
"path": "/kontakt.html",
"category": "kontakt",
"form_count": 2
},
{
"url": "https://bike-fitline.com/",
"path": "/",
"category": "unterseite",
"form_count": 1
}
],
"payment_providers": [],
"detected_data_types": [
{
"id": "contact",
"count": 1,
"label": "Kontaktformular"
}
],
"crawl_form_page_count": 2,
"privacy_context_found": true,
"operator_context_found": false
},
"pii_exposure_analysis": {
"color": "yellow",
"score": 82,
"checks": [
{
"id": "current_url",
"ok": true,
"count": 0,
"label": "Aktuelle URL",
"detail": "Keine sensiblen Query-Parameter erkannt."
},
{
"id": "link_queries",
"ok": true,
"count": 0,
"label": "Link-Parameter",
"detail": "Keine sensiblen Link-Querys erkannt."
},
{
"id": "get_forms",
"ok": true,
"count": 0,
"label": "GET-Formulare",
"detail": "Keine personenbezogenen GET-Formulare erkannt."
},
{
"id": "external_forms",
"ok": true,
"count": 0,
"label": "Externe Formularziele",
"detail": "Keine externen Formularziele mit personenbezogenen Feldern erkannt."
},
{
"id": "tracking_context",
"ok": false,
"count": 2,
"label": "Tracking neben Dateneingabe",
"detail": "2 datenschutzrelevante Drittanbieter."
}
],
"status": "prüfen",
"summary": "1 PII-/Datenleck-Hinweis(e) aus URL-, Formular- und Browserkontext.",
"findings": [
{
"id": "pii_tracking_on_data_entry_page",
"title": "Dateneingabe und datenschutzrelevante Drittanbieter im selben Browseraufruf",
"public": true,
"category": "privacy",
"severity": "warning",
"third_party_count": 2
}
],
"link_hits": [],
"finding_count": 1,
"current_url_hits": [],
"tracking_context": true,
"sensitive_get_forms": []
},
"scan_history_analysis": {
"available": false,
"summary": "Noch kein früherer gespeicherter Scan für diese Domain vorhanden.",
"total_scan_count": 1,
"previous_scan_count": 0,
"history": [
{
"scan_id": "ecc19596-e720-40fe-bced-2fc28092a1e5",
"created_at": "2026-06-16 00:45:26.57692+02",
"score": 0,
"verdict": "riskant",
"finding_count": 38,
"integrity_root_hash": "45e34890e8aba2f15111f2727d0a76d787a04c6532ac310f54248c735e9aa33d",
"integrity_available_hash_count": 9,
"current": true
}
],
"new_findings": [],
"resolved_findings": [],
"technical_changes": {
"available": false,
"summary": "Noch kein früherer Scan für technische Änderungen vorhanden."
}
},
"benchmark_analysis": {
"host": "bike-fitline.com",
"rank": 1,
"score": 0,
"status": "im_mittelfeld",
"summary": "bike-fitline.com liegt mit 0 Punkten ungefähr im gespeicherten Vergleichsfeld. Weil viele gespeicherte Checks bei 0 Punkten liegen, zeigt die Detailansicht zusätzlich aktive Peers mit Durchschnitt 17.6.",
"available": true,
"peer_count": 1813,
"percentile": 0,
"query_mode": "php_ttl_cache_refresh",
"distribution": {
"0_39": 1805,
"40_59": 6,
"60_79": 2,
"80_100": 0
},
"median_score": 0,
"average_score": 1,
"comparison_basis": "Neuester gespeicherter SaferPage-Scan je Domain; überwiegend deutschsprachige gespeicherte Checks.",
"same_score_count": 0,
"better_than_count": 0,
"qualified_peer_count": 103,
"zero_score_count": 1710,
"top_quartile_score": 0,
"top_decile_score": 0,
"qualified_average_score": 17.6,
"qualified_median_score": 16,
"qualified_top_quartile_score": 24,
"qualified_top_decile_score": 36,
"thresholds": [
{
"id": "critical",
"label": "Kritisch",
"range": "0-39",
"met": true
},
{
"id": "basic",
"label": "Basis stabilisieren",
"range": "40-59",
"met": false
},
{
"id": "managed",
"label": "Gesteuert",
"range": "60-79",
"met": false
},
{
"id": "strong",
"label": "Stark",
"range": "80-100",
"met": false
}
],
"risk_tier": "kritisch",
"target_score": 40,
"aspirational_target_score": 60,
"gap_to_target": 40,
"gap_to_top_quartile": 24,
"gap_to_strong": 80,
"cache_ttl_seconds": 300
},
"audit_receipt": {
"url": "https://bike-fitline.com/",
"host": "bike-fitline.com",
"status": "verfügbar",
"bot_url": "https://saferpage.de/bot",
"summary": "Prüfbeleg für bike-fitline.com: kontrollierter HTTP-/Browser-Kurzcheck mit 32 Request(s), 4 Consent-Zustand/Zuständen und 7 Artefakt(en).",
"renderer": "playwright-chromium",
"artifacts": [
{
"label": "Öffentlicher Kurzreport",
"detail": "https://saferpage.de/bike-fitline.com",
"status": "verfügbar"
},
{
"label": "JSON-Export",
"detail": "Maschinenlesbarer Report mit Modulen, Nachweisen und Tabellen.",
"status": "verfügbar"
},
{
"label": "CSV-Export",
"detail": "Tabellarische Prüfzeilen für Betreiber, Datenschutz und Technik.",
"status": "verfügbar"
},
{
"label": "160x150 Seitenvorschau",
"detail": "/cache/screenshots/bike-fitline.com-160x150-28245b2fe50fd7f9d9.png",
"status": "verfügbar"
},
{
"label": "Cookie-Erklärung",
"detail": "5 Cookie-/Storage-Eintrag/Einträge.",
"status": "auffällig"
},
{
"label": "Empfänger-/Anbieterinventar",
"detail": "7 Anbieterzeile(n), 2 AVV-/Rollenprüfung(en).",
"status": "kritisch"
},
{
"label": "Barrierefreiheitserklärung-Entwurf",
"detail": "3 bekannte Barrierefreiheits-Punkt(e).",
"status": "Nicht vollständig konform im automatischen Basischeck"
}
],
"available": true,
"final_url": "https://bike-fitline.com/",
"checked_at": "2026-06-15T22:45:26+00:00",
"share_text": "SaferPage Prüfbeleg bike-fitline.com: 32 Browser-Request(s), 7 Drittanbieter, 5 Cookie-/Storage-Einträge, geprüft am 2026-06-15T22:45:26.",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"limitations": [
"Öffentliche Nachweise enthalten keine Cookie-Werte und keine vollständigen Request-URLs.",
"Der Scan ist ein passiver Browser- und HTTP-Kurzcheck; rechtliche Bewertung bleibt Betreiberaufgabe.",
"Dynamische Inhalte können sich je nach Region, Zeit, Gerät und Consent-Auswahl ändern."
],
"scan_context": "manual",
"coverage_items": [
{
"label": "HTTP/DNS/TLS",
"value": "HTTP 200 · DNS ok · TLS ok"
},
{
"label": "Browserlauf",
"value": "32 Request(s), 7 Drittanbieter-Domain(s), 5 Browser-Cookie(s)."
},
{
"label": "Consent-Zustände",
"value": "4 Zustand/Zustände: Default, Ablehnen, Akzeptieren und GPC soweit verfügbar."
},
{
"label": "Seitenabdeckung",
"value": "8 priorisierte Unterseite(n) im Nachweispack."
},
{
"label": "Drittanbieter-Auszug",
"value": "7 Anbieterzeile(n) im öffentlichen Nachweis."
},
{
"label": "Cookie-Auszug",
"value": "5 Cookie-Zeile(n) im öffentlichen Nachweis."
}
],
"confidence_score": 77,
"browser_final_url": "https://bike-fitline.com/"
},
"evidence_integrity_manifest": {
"host": "bike-fitline.com",
"status": "verfügbar",
"summary": "Integritätsmanifest für bike-fitline.com: 9/9 Nachweisbereich(e) mit SHA-256-Hash dokumentiert.",
"sections": [
{
"id": "audit_receipt",
"hash": "6d23e378c11e43e240f7fd953ea8bfd5d595ada744ff93206764558edb2ce7d7",
"count": 18,
"label": "Prüfbeleg",
"detail": "Kanonischer JSON-Hash des kompakten Prüfbelegs.",
"status": "verfügbar"
},
{
"id": "protocol",
"hash": "882be2fe389bcafde0b829a700ea0668af3e0f924b1439192e4405fbfbc5acc7",
"count": 15,
"label": "Scan-Protokoll",
"detail": "URL, Endziel, User-Agent, Zeitstempel, HTTP/DNS/TLS und Renderer.",
"status": "verfügbar"
},
{
"id": "checkpoints",
"hash": "c4be14d91a0e9cdea9e5df26e52b3800649c53862c6b08bb11ed05c1abcebb9d",
"count": 6,
"label": "Prüfschritte",
"detail": "Kanonischer JSON-Hash der dokumentierten Prüfstationen.",
"status": "verfügbar"
},
{
"id": "consent_states",
"hash": "94fd1ec5437290fad8e3115a40d5e1146e331c03ca9b23a2db5ae82f94587aec",
"count": 4,
"label": "Consent-Zustände",
"detail": "Default-, Ablehnen-, Akzeptieren- und GPC-Nachweise soweit verfügbar.",
"status": "verfügbar"
},
{
"id": "third_party_evidence",
"hash": "fb1c910c5ddc0aa04dfbeb6019d14a01b0ec2bdfbc4f83ea67f1427f5df67a7e",
"count": 7,
"label": "Drittanbieter-Auszug",
"detail": "Sanitisierte Anbieter-, Kategorie-, Transfer- und Request-Zählwerte.",
"status": "verfügbar"
},
{
"id": "cookie_evidence",
"hash": "f652e3c93f5325f895dbbe2fed72717339d6ad47c551d5c7137617c4030b5d00",
"count": 5,
"label": "Cookie-Auszug",
"detail": "Sanitisierte Cookie-Metadaten ohne Cookie-Werte.",
"status": "verfügbar"
},
{
"id": "request_samples",
"hash": "32b365aeeadf6f264524cf2e3ccf90939c14a63d9f68999632253b873117b7d2",
"count": 10,
"label": "Request-Samples",
"detail": "Sanitisierte Drittanbieter-Samples ohne vollständige Request-URLs.",
"status": "verfügbar"
},
{
"id": "checked_pages",
"hash": "17ccf4c05c282307dc5a3ce828e529e5b99e3b3146ef5c0c023e6d28a57858d4",
"count": 8,
"label": "Geprüfte Unterseiten",
"detail": "Priorisierte Pfade aus Sitemap, Pflichtseiten und interner Linkstruktur.",
"status": "verfügbar"
},
{
"id": "screenshot_file",
"hash": "f7e9c21cf5cc0bccc1d91cc05f0c68210674d2de2c1bc70697e17d30d175773d",
"count": 16246,
"label": "160x150 Seitenvorschau-Datei",
"detail": "/cache/screenshots/bike-fitline.com-160x150-28245b2fe50fd7f9d9.png",
"status": "verfügbar"
}
],
"algorithm": "sha256",
"available": true,
"root_hash": "45e34890e8aba2f15111f2727d0a76d787a04c6532ac310f54248c735e9aa33d",
"checked_at": "2026-06-15T22:45:26+00:00",
"limitations": [
"Das Manifest schützt die im Report veröffentlichten/sanitisierten Nachweise, nicht verdeckte Cookie-Werte oder vollständige Request-URLs.",
"Ohne externe qualifizierte Zeitstempelung beweist der Hash Integrität des exportierten Artefakts, aber keine amtliche Zustellung."
],
"section_count": 9,
"canonicalization": "JSON UTF-8, sort_keys=true, kompakte Separatoren; Screenshot als rohe Datei-Bytes.",
"available_hash_count": 9
},
"audit_evidence_pack": {
"status": "verfügbar",
"summary": "Nachweisprotokoll mit 32 Browser-Request(s), 5 Cookie-Nachweis(en), 7 Drittanbieter-Auszug/auszügen und 4 Consent-Zustand/Zuständen.",
"protocol": {
"host": "bike-fitline.com",
"dns_ok": true,
"tls_ok": true,
"bot_url": "https://saferpage.de/bot",
"renderer": "playwright-chromium",
"final_url": "https://bike-fitline.com/",
"input_url": "https://bike-fitline.com/",
"checked_at": "2026-06-15T22:45:26+00:00",
"user_agent": "SaferPageBot/0.2 (+https://saferpage.de/bot; passive website safety check; no attack tests)",
"http_status": 200,
"scan_context": "manual",
"screenshot_url": "/cache/screenshots/bike-fitline.com-160x150-28245b2fe50fd7f9d9.png",
"googlebot_status": 200,
"browser_final_url": "https://bike-fitline.com/",
"dns_address_count": 4
},
"checkpoints": [
{
"label": "DNS",
"detail": "4 Adresse(n) aufgelöst.",
"status": "ok"
},
{
"label": "TLS/HTTPS",
"detail": "TLSv1.3",
"status": "ok"
},
{
"label": "HTTP-Abruf",
"detail": "Status 200, Endziel https://bike-fitline.com/.",
"status": "ok"
},
{
"label": "Browserlauf",
"detail": "32 Request(s), 7 Drittanbieter-Domain(s).",
"status": "ok"
},
{
"label": "Consent-Zustände",
"detail": "Default, Ablehnen, Akzeptieren und GPC werden soweit möglich gegenübergestellt.",
"status": "prüfen"
},
{
"label": "Exports",
"detail": "PDF/Druck, JSON und CSV enthalten die wesentlichen Prüfnachweise.",
"status": "verfügbar"
}
],
"limitations": [
"Öffentliche Nachweise enthalten keine Cookie-Werte und keine vollständigen Request-URLs.",
"Der Scan ist ein passiver Browser- und HTTP-Kurzcheck; rechtliche Bewertung bleibt Betreiberaufgabe.",
"Dynamische Inhalte können sich je nach Region, Zeit, Gerät und Consent-Auswahl ändern."
],
"checked_pages": [
{
"path": "/datenschutz.html",
"source": "homepage_link",
"status": 0,
"category": "datenschutz"
},
{
"path": "/kontakt.html",
"source": "homepage_link",
"status": 0,
"category": "kontakt"
},
{
"path": "/",
"source": "sitemap",
"status": 0,
"category": "unterseite"
},
{
"path": "/cast/jessica-henwick",
"source": "sitemap",
"status": 0,
"category": "unterseite"
},
{
"path": "/dvd-dvds-film-filme.html",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/fahrrad-computerspiel-pc-spiel.html",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/fahrrad-hersteller-uebersicht.html",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
},
{
"path": "/fahrradbuch-fahrradbuecher-fahrradliteratur.html",
"source": "homepage_link",
"status": 0,
"category": "unterseite"
}
],
"cookie_evidence": [
{
"name": "__utma",
"domain": "bike-fitline.com",
"secure": false,
"category": "Unklar",
"provider": "bike-fitline.com",
"tracking": false,
"retention": "lang (399 Tage)",
"same_site": "Lax",
"pre_consent": true
},
{
"name": "__utmb",
"domain": "bike-fitline.com",
"secure": false,
"category": "Unklar",
"provider": "bike-fitline.com",
"tracking": false,
"retention": "kurz (0 Tage)",
"same_site": "Lax",
"pre_consent": true
},
{
"name": "__utmc",
"domain": "bike-fitline.com",
"secure": false,
"category": "Unklar",
"provider": "bike-fitline.com",
"tracking": false,
"retention": "Session",
"same_site": "Lax",
"pre_consent": true
},
{
"name": "__utmt",
"domain": "bike-fitline.com",
"secure": false,
"category": "Unklar",
"provider": "bike-fitline.com",
"tracking": false,
"retention": "kurz (0 Tage)",
"same_site": "Lax",
"pre_consent": true
},
{
"name": "__utmz",
"domain": "bike-fitline.com",
"secure": false,
"category": "Unklar",
"provider": "bike-fitline.com",
"tracking": false,
"retention": "lang (182 Tage)",
"same_site": "Lax",
"pre_consent": true
}
],
"browser_evidence": {
"gpc_enabled": true,
"request_count": 32,
"storage_total": 0,
"accept_clicked": false,
"reject_clicked": false,
"browser_cookie_count": 5,
"contacted_domain_count": 8,
"third_party_domain_count": 7,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 2
},
"storage_evidence": {
"tracking_key_hints": [],
"local_storage_total": 0,
"session_storage_total": 0
},
"third_party_evidence": [
{
"host": "ssl.google-analytics.com",
"category": "Analytics",
"provider": "Google Analytics",
"transfer": "Drittland/USA",
"risk_level": "hoch",
"request_count": 2,
"resource_types": [
"image",
"script"
],
"privacy_relevant": true
},
{
"host": "pagead2.googlesyndication.com",
"category": "Werbung",
"provider": "Google AdSense",
"transfer": "Drittland/USA",
"risk_level": "mittel",
"request_count": 1,
"resource_types": [
"script"
],
"privacy_relevant": true
},
{
"host": "apis.google.com",
"category": "Sonstige",
"provider": "apis.google.com",
"transfer": "Drittland/USA",
"risk_level": "niedrig",
"request_count": 6,
"resource_types": [
"script",
"document"
],
"privacy_relevant": false
},
{
"host": "csp.withgoogle.com",
"category": "Sonstige",
"provider": "csp.withgoogle.com",
"transfer": "Drittland/USA",
"risk_level": "niedrig",
"request_count": 2,
"resource_types": [
"other"
],
"privacy_relevant": false
},
{
"host": "ssl.gstatic.com",
"category": "CDN",
"provider": "Google Static",
"transfer": "Drittland/USA",
"risk_level": "niedrig",
"request_count": 1,
"resource_types": [
"script"
],
"privacy_relevant": false
},
{
"host": "accounts.google.com",
"category": "Sonstige",
"provider": "accounts.google.com",
"transfer": "Drittland/USA",
"risk_level": "niedrig",
"request_count": 1,
"resource_types": [
"document"
],
"privacy_relevant": false
},
{
"host": "developers.google.com",
"category": "Sonstige",
"provider": "developers.google.com",
"transfer": "Drittland/USA",
"risk_level": "niedrig",
"request_count": 1,
"resource_types": [
"document"
],
"privacy_relevant": false
}
],
"external_script_count": 2,
"consent_state_evidence": [
{
"label": "Erstaufruf",
"cookie_count": 0,
"domain_count": 7,
"request_count": 14,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 2
},
{
"label": "Nach Ablehnen neu",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"label": "Nach Akzeptieren neu",
"cookie_count": 0,
"domain_count": 0,
"request_count": 0,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 0
},
{
"label": "GPC-Aufruf",
"cookie_count": 0,
"domain_count": 7,
"request_count": 13,
"storage_tracking_hint_count": 0,
"privacy_relevant_domain_count": 2
}
],
"request_sample_evidence": [
{
"host": "pagead2.googlesyndication.com",
"query_keys": [],
"resource_type": "script",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "ssl.google-analytics.com",
"query_keys": [],
"resource_type": "script",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "apis.google.com",
"query_keys": [],
"resource_type": "script",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "ssl.google-analytics.com",
"query_keys": [
"utmwv",
"utms",
"utmn",
"utmhn",
"utmcs",
"utmsr",
"utmvp",
"utmsc"
],
"resource_type": "image",
"query_key_count": 22,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "apis.google.com",
"query_keys": [
"le"
],
"resource_type": "script",
"query_key_count": 1,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "apis.google.com",
"query_keys": [
"le"
],
"resource_type": "script",
"query_key_count": 1,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "apis.google.com",
"query_keys": [
"usegapi",
"size",
"annotation",
"recommendations",
"align",
"origin",
"url",
"gsrc"
],
"resource_type": "document",
"query_key_count": 10,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "developers.google.com",
"query_keys": [],
"resource_type": "document",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "accounts.google.com",
"query_keys": [
"parent",
"jsh"
],
"resource_type": "document",
"query_key_count": 2,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
},
{
"host": "csp.withgoogle.com",
"query_keys": [],
"resource_type": "other",
"query_key_count": 0,
"referrer_has_path": false,
"referrer_has_query": false,
"sensitive_query_key_count": 0
}
]
},
"consent_visual_salience_evidence": {
"schema": "https://saferpage.de/schemas/consent-visual-salience-evidence.v1",
"status": "measured_dom_viewport_signal",
"available": true,
"evidence_level": "dom_viewport_signal_only",
"summary": "Der erste Headless-Chromium-Viewport liefert sichtbare Consent-Control-Signale mit Text, Position, Groesse und typografischen Hinweisen.",
"sample_status": "visible_controls_without_classified_samples",
"classified_sample_count": 0,
"accept_control_count": 0,
"reject_control_count": 0,
"settings_control_count": 0,
"visible_control_count": 40,
"accept_max_area": 0,
"reject_max_area": 0,
"reject_prominence_ratio": "nicht messbar",
"samples": [],
"sample_boundary": "Samples enthalten nur klassifizierte Accept-/Reject-/Settings-Controls. Weitere sichtbare Consent-Controls bleiben als Zaehler erhalten, werden aber ohne Klassifizierung nicht als Ablehnen-, Akzeptieren- oder Einstellungsprobe behauptet.",
"claim_boundary": "Consent-Visual-Salienz ist ein DOM-/Viewport-Signal aus dem ersten Browserlauf. Sie ist keine Rechtsbewertung, kein Dark-Pattern-Endurteil und kein Nachweis fuer spaetere Consent-Zustaende, Scrollbereiche, Loginbereiche oder manuelle Betreiberkontexte."
}
}