{
    "ready": true,
    "site": {
        "id": 0,
        "domain": "fox2detroit.com",
        "display_name": "FOX 2 Detroit",
        "primary_country_code": "",
        "category_name": "News & Media: Local & Regional"
    },
    "metrics": {
        "global_rank": 1482,
        "country_rank": 783,
        "category_rank": 14,
        "daily_pageviews_per_visitor": 3.87,
        "daily_time_on_site_seconds": 324,
        "bounce_rate": 33.26,
        "search_visits_percent": 51.06,
        "total_sites_linking_in": 4,
        "monthly_unique_visitors": 388,
        "recorded_at": "2026-03-23 06:56:29"
    },
    "audit": {
        "score": 82
    },
    "traffic_sources": {
        "direct_percent": 22.98,
        "search_percent": 39.07,
        "social_percent": 17.89,
        "referral_percent": 10.25,
        "email_percent": 5.52,
        "paid_percent": 4.29
    },
    "seo_profile": {
        "backlinks_total": 4,
        "referring_domains": 4,
        "dofollow_backlinks_percent": 100,
        "organic_keywords": 99,
        "indexed_pages": 292,
        "page_speed_score": 44,
        "mobile_friendliness_score": 83,
        "authority_score": 55,
        "spam_risk_score": 0
    },
    "crawl_report": {
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "crawl_blocked": false,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": "",
        "notes": [
            "robots.txt could not be confirmed.",
            "Sitemap could not be confirmed."
        ],
        "created_at": "2026-03-23 06:56:29"
    },
    "keywords": [
        {
            "keyword": "FOX 2 Detroit",
            "position": 16,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "FOX 2 Detroit news & media: local & regional",
            "position": 18,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "FOX 2 Detroit reviews",
            "position": 20,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "fox",
            "position": 22,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "detroit",
            "position": 24,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "fox2detroit",
            "position": 26,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "local",
            "position": 28,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        },
        {
            "keyword": "news",
            "position": 30,
            "search_engine": "Estimated",
            "checked_at": "2026-04-16 12:15:38",
            "is_estimated": true
        }
    ],
    "rating": {
        "overall": 64,
        "label": "Healthy",
        "breakdown": [
            {
                "label": "Technical foundation",
                "score": 10,
                "max": 18
            },
            {
                "label": "Authority & trust",
                "score": 17,
                "max": 30
            },
            {
                "label": "Reach & market presence",
                "score": 3,
                "max": 18
            },
            {
                "label": "Search visibility",
                "score": 4,
                "max": 12
            },
            {
                "label": "Engagement & retention",
                "score": 9,
                "max": 10
            },
            {
                "label": "Channels & diversification",
                "score": 5,
                "max": 6
            },
            {
                "label": "Registry stability",
                "score": 6,
                "max": 6
            },
            {
                "label": "Quality system",
                "score": 56,
                "max": 100
            },
            {
                "label": "Reputation system",
                "score": 54,
                "max": 100
            },
            {
                "label": "Safety system",
                "score": 100,
                "max": 100
            },
            {
                "label": "Evidence confidence",
                "score": 54,
                "max": 100
            },
            {
                "label": "External intelligence",
                "score": 52,
                "max": 100
            },
            {
                "label": "API intelligence",
                "score": 54,
                "max": 100
            }
        ],
        "authority_score": 55,
        "quality_score": 56,
        "reputation_score": 54,
        "safety_score": 100,
        "confidence_score": 54,
        "fraud_score": 0,
        "authority_signals": {
            "backlinks": 4,
            "referring_domains": 4,
            "organic_keywords": 99,
            "indexed_pages": 292,
            "monthly_visitors": 388,
            "global_rank": 1482,
            "engagement_score": 79,
            "crawl_quality_score": 100,
            "brand_completeness_score": 100,
            "link_diversity_score": 94,
            "technical_reliability_score": 58,
            "whois_score": 92,
            "whois_age_years": 29.6,
            "whois_stability_score": 100,
            "spam_penalty": 0
        },
        "whois_signals": {
            "age_years": 29.6,
            "days_to_expiry": 140,
            "days_since_last_registry_update": 254,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": true,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 8,
            "status_count": 4
        }
    },
    "authority_score": 55,
    "trust_score": 80,
    "domain_tags": {
        "primary_tag": "T",
        "primary_tag_score": 87,
        "primary_candidate": "T",
        "primary_candidate_score": 87,
        "tag_codes": "T,Uncertain",
        "tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 87,
                "score": 87,
                "match_percent": 87,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            }
        ],
        "tag_breakdown": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good",
                "description": "Strong trust, stability, and low-risk signals were detected.",
                "reason": "Low spam indicators plus strong trust, quality, registry, and stability signals were detected. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The site shows a reasonably trustworthy and stable profile.",
                "priority": 87,
                "score": 87,
                "match_percent": 87,
                "threshold_band": "strong"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown",
                "description": "External checks stayed inconclusive, so the model avoided a harder verdict.",
                "reason": "External checks stayed inconclusive, so the system kept an uncertainty buffer.",
                "message": "The evidence is materially mixed or partially corroborated, so the model is avoiding a harder verdict.",
                "priority": 68,
                "score": 68,
                "match_percent": 68,
                "threshold_band": "strong"
            },
            {
                "code": "C",
                "label": "Caution",
                "tone": "caution",
                "description": "Signals are mixed or weak, so this domain should be treated carefully.",
                "reason": "Review carefully: mixed trust signals. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "The current crawl does not show a meaningful caution match.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "Crypto",
                "label": "Crypto drainer risk",
                "tone": "toxic",
                "description": "Wallet-connect or seed-phrase theft patterns were detected.",
                "reason": "Wallet-connect or seed-phrase theft patterns were detected.",
                "message": "No meaningful crypto-drainer signals were detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            },
            {
                "code": "D",
                "label": "Dangerous",
                "tone": "toxic",
                "description": "Strong signs of phishing, malware, or other harmful behaviour were detected.",
                "reason": "Multiple high-risk signals pushed this domain into the dangerous range. Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
                "message": "No meaningful dangerous-signal match was detected.",
                "priority": 0,
                "score": 0,
                "match_percent": 0,
                "threshold_band": "none"
            }
        ],
        "nsfw_score": 0,
        "trust_score": 84,
        "manual": {
            "has_changes": false,
            "verified_status": "",
            "tag_codes": "",
            "rating_delta": 0,
            "authority_delta": 0,
            "trust_delta": 0,
            "note": "",
            "adjusted_by": 0,
            "adjusted_at": "",
            "lock_scores": false,
            "lock_flags": false
        },
        "summary": "Trusted (87% match) because low spam indicators plus strong trust, quality, registry, and stability signals were detected. showing the stored external intelligence snapshot. new search and review intelligence only runs after a visitor uses refresh data manually.",
        "external_intel": {
            "domain": "fox2detroit.com",
            "candidate_tag": "",
            "checked_at": "2026-03-19T23:25:07+00:00",
            "status": "fresh",
            "snapshot_version": 9,
            "summary": "Showing the stored external intelligence snapshot. New search and review intelligence only runs after a visitor uses Refresh data manually.",
            "search_intelligence": {
                "queries": [
                    "site:trustpilot.com \"fox2detroit.com\" -site:fox2detroit.com -site:www.fox2detroit.com",
                    "site:bbb.org \"fox2detroit.com\" -site:fox2detroit.com -site:www.fox2detroit.com"
                ],
                "focused_queries": [
                    "site:trustpilot.com \"fox2detroit.com\" -site:fox2detroit.com -site:www.fox2detroit.com",
                    "site:bbb.org \"fox2detroit.com\" -site:fox2detroit.com -site:www.fox2detroit.com"
                ],
                "relaxed_queries": [
                    "site:wikipedia.org \"fox2detroit.com\"",
                    "site:en.wikipedia.org \"fox2detroit.com\"",
                    "site:wikipedia.org \"fox2detroit\"",
                    "site:en.wikipedia.org \"fox2detroit\"",
                    "fox2detroit company profile",
                    "fox2detroit reviews",
                    "fox2detroit wikipedia",
                    "fox2detroit linkedin",
                    "fox2detroit crunchbase"
                ],
                "providers": [
                    "brave"
                ],
                "provider_result_counts": {
                    "brave": 0
                },
                "provider_query_attempts": {
                    "brave": 2
                },
                "provider_error_counts": {
                    "brave": 2
                },
                "provider_failure_reasons": {
                    "brave": "Brave hourly hard cap reached."
                },
                "provider_block_signals": [],
                "results_found": 1,
                "external_results_found": 0,
                "used_direct_fallback": true,
                "results": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://fox2detroit.com/",
                        "host": "fox2detroit.com",
                        "title": "fox2detroit.com",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "fox2detroit.com",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1
                    }
                ],
                "source_mix": {
                    "official_site": 1
                },
                "entity_coverage_score": 100,
                "high_trust_result_count": 0,
                "exact_match_result_count": 1,
                "high_entity_result_count": 1,
                "query_hit_count": 0,
                "query_count": 2,
                "used_failover_provider": false,
                "inferred_candidate_tag": "",
                "used_relaxed_queries": false,
                "search_passes": [
                    {
                        "name": "focused-primary",
                        "queries": 2,
                        "providers": [
                            "brave"
                        ],
                        "results_added": 0,
                        "external_results_added": 0,
                        "deadline_hit": false
                    }
                ],
                "deadline_hit": false
            },
            "review_intelligence": {
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "documents": [
                    {
                        "provider": "direct-domain-fallback",
                        "url": "https://fox2detroit.com/",
                        "host": "fox2detroit.com",
                        "title": "fox2detroit.com",
                        "snippet": "First-party fallback captured directly from the domain when public search engines returned no usable results.",
                        "is_direct_fallback": true,
                        "source_meta": {
                            "host": "fox2detroit.com",
                            "source_type": "official_site",
                            "label": "Official site",
                            "trust_weight": 55,
                            "evidence_weight": 26,
                            "noise_penalty": 0,
                            "requires_exact_domain_match": true,
                            "supports_positive_verdicts": false,
                            "supports_negative_verdicts": false,
                            "freshness_ttl_days": 21
                        },
                        "entity": {
                            "score": 100,
                            "exactness": "exact_domain",
                            "reasons": [
                                "The result host matches the exact domain.",
                                "The exact domain is mentioned in the page snippet or document text.",
                                "The result URL contains the exact domain string."
                            ]
                        },
                        "query": "direct-fallback",
                        "rank": 1,
                        "body": "FOX 2 Detroit | Local News, Weather, and Live Streams | WJBK FOX 2 Detroit LiveWeatherThings to DoSportsEmailContestsHealth Works More Watch Live Expand / Collapse search ☰ Search site News LocalThe PulseHall of ShameThe RoundaboutNationalThe InterviewBusinessThings to DoFOX News SundayLive Stream FOX 2 on FOX LOCALLiveNOW from FOXFOX SoulYour Pics Send your picsQuestion of the DayDetroit Sports TriviaWeather ClosingsWeather AppWeather AlertsTrafficAirport DelaysFox WeatherAnimal HouseMornings Good Day DetroitThe NoonMug ContestHealth WorksCooking SchoolGet FitMoney SaverDoctor is InWeekend MorningsLinks on FOX 2Politics The PulseDonald TrumpSports The Sports OfficeFirst & NorthLionsWolverinesSpartansPistonsTigersRed WingsDetroit Sports TriviaEntertainment FOX ShowsCriticLEE SpeakingTV ListingsContestsAbout Us FOX 2 StaffContact UsWork at FOX 2FOX 2 News AppJob ShopCommunityFCC Public File FCC ApplicationsClosed CaptionsProblem Solvers ResourcesContests Wallside Windows Weather QuizGardner White Dream TeamMug ContestExposedMoney Personal FinanceBusinessStock MarketSmall BusinessRegional News Chicago News - FOX 32 ChicagoMilwaukee News - FOX 6 NewsMinneapolis News - FOX 9 Today's Top stories 'This is not acceptable:' Attack at Temple Israel synagogue denounced by community leaders March 19, 2026 4:47pm EDT 'Led a double life': Retired Detroit police sergeant accused of kidnapping and raping victims while cop March 19, 2026 10:58am EDT Measles outbreak in Michigan County as cases spread 'like wildfire' March 19, 2026 4:57pm EDT Canton Twp. police release body cam footage of fiery crash that hospitalized many March 19, 2026 5:42pm EDT Michigan orthodontist sentenced to 60 years for sexual exploitation of children March 19, 2026 4:55pm EDT Report: Cade Cunningham suffers collapse lung, out for extended period of time March 19, 2026 10:13am EDT Michigan kratom ban advances in legislature March 19, 2026 12:44pm EDT Metro Detroit weather: Temperatures headed up, with 50s and 60s on the horizon this weekend March 19, 2026 6:41am EDT FOX supports American Red Cross’ Service to Armed Forces: How to donate March 16, 2026 11:51am EDT SPONSORED The Salvation Army’s Bed & Bread Program Fights Hunger and Homelessness in Metro Detroit Salvation Army of Metro DetroitSPONSORED Getting the Right Auto Part Fast Used to Be a Headache. AutoParts.com is Changing That. AutoParts.com 2026 FIFA World Cup World Cup gear: How to get your hands on official merch With less than 100 days until kickoff, official World Cup merchandise is already on sale, giving fans an early chance to gear up for the tournament. Iran wants to move its World Cup matches from US to Mexico Some Iranian officials are considering moving its matches out of the United States, but FIFA says it is in regular contact with the Iran soccer federation and it is not changing the match schedule announced last year. Nike unveils new USA soccer team jerseys for 2026 FIFA World Cup Nike and U.S. Soccer revealed new 2026 World Cup jerseys for the USMNT and USWNT, featuring patriotic designs inspired by the American flag. Latest Videos View More video Pistons' Cade Cunningham suffers lung collapse video Influencer's review gives new life to Livonia bakery video Bill that would ban kratom advances in Michigan video Ex-police officer accused of several sexual assaults in Detroit video Temple Israel leaders, sheriff provide update on Temple Israel Things to Do in Michigan View More Women's hockey Olympians headed to Detroit during PWHL Takeover Tour - How to see them play Selfridge Air Show canceled due t…",
                        "html": "<!doctype html> <html data-n-head-ssr lang=\"en\" data-n-head=\"lang\"> <head> <!-- Google Tag Manager --> <script> function loadGTMIfNotLocalOrPreview() { const host = window.location.host.toLowerCase(); const excludedHosts = [\"local\", \"preview\", \"stage-preview\"]; if (!excludedHosts.some(excludedHost => host.startsWith(excludedHost))) { (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-TMF4BDJ'); } } loadGTMIfNotLocalOrPreview(); </script> <!-- End Google Tag Manager --> <title data-n-head=\"true\">FOX 2 Detroit | Local News, Weather, and Live Streams | WJBK</title><meta data-n-head=\"true\" http-equiv=\"Content-Security-Policy\" content=\"upgrade-insecure-requests\"><meta data-n-head=\"true\" http-equiv=\"X-UA-Compatible\" content=\"IE=edge,chrome=1\"><meta data-n-head=\"true\" name=\"viewport\" content=\"width=device-width, minimum-scale=1.0, initial-scale=1.0\"><meta data-n-head=\"true\" charset=\"UTF-8\"><meta data-n-head=\"true\" name=\"format-detection\" content=\"telephone=no\"><meta data-n-head=\"true\" name=\"msapplication-square70x70logo\" content=\"//static.foxtv.com/static/orion/img/wjbk/favicons/mstile-70x70.png\"><meta data-n-head=\"true\" name=\"msapplication-square150x150logo\" content=\"//static.foxtv.com/static/orion/img/wjbk/favicons/mstile-150x150.png\"><meta data-n-head=\"true\" name=\"msapplication-wide310x150logo\" content=\"//static.foxtv.com/static/orion/img/wjbk/favicons/mstile-310x150.png\"><meta data-n-head=\"true\" name=\"msapplication-square310x310logo\" content=\"//static.foxtv.com/static/orion/img/wjbk/favicons/mstile-310x310.png\"><meta data-n-head=\"true\" data-hid=\"description\" name=\"description\" content=\"Detroit news, weather, sports, and traffic serving all of southeast Michigan and Metro Detroit. Watch breaking news live or see the latest videos from programs like The Nine, Let it Rip, and FOX 2 News.\"><meta data-n-head=\"true\" data-hid=\"fb:app_id\" property=\"fb:app_id\" content=\"111375675545556\"><meta data-n-head=\"true\" data-hid=\"prism.stationId\" name=\"prism.stationId\" content=\"WJBK_FOX2\"><meta data-n-head=\"true\" data-hid=\"prism.stationCallSign\" name=\"prism.stationCallSign\" content=\"wjbk\"><meta data-n-head=\"true\" data-hid=\"prism.channel\" name=\"prism.channel\" content=\"fts\"><meta data-n-head=\"true\" data-hid=\"prism.section\" name=\"prism.section\" content=\"root\"><meta data-n-head=\"true\" data-hid=\"prism.subsection1\" name=\"prism.subsection1\" content=\"\"><meta data-n-head=\"true\" data-hid=\"prism.subsection2\" name=\"prism.subsection2\" content=\"\"><meta data-n-head=\"true\" data-hid=\"prism.subsection3\" name=\"prism.subsection3\" content=\"\"><meta data-n-head=\"true\" data-hid=\"prism.subsection4\" name=\"prism.subsection4\" content=\"\"><meta data-n-head=\"true\" data-hid=\"prism.aggregationType\" name=\"prism.aggregationType\" content=\"front\"><meta data-n-head=\"true\" data-hid=\"prism.genre\" name=\"prism.genre\" content=\"homePage\"><meta data-n-head=\"true\" data-hid=\"pagetype\" name=\"pagetype\" content=\"homepage\" scheme=\"dcterms.DCMIType\"><meta data-n-head=\"true\" data-hid=\"strikepagetype\" name=\"strikepagetype\" content=\"homepage\" scheme=\"dcterms.DCMIType\"><meta data-n-head=\"true\" data-hid=\"content-creator\" name=\"content-creator\" content=\"tiger\"><meta data-n-head=\"true\" data-hid=\"dc.creator\" name=\"dc.creator\" scheme=\"dcterms.creator\" content=\"\"><meta data-n-head=\"true\" data-hid=\"dc.title\" name=\"dc.title\" content=\"FOX 2 Detroit | Local News, Weather, and Live Streams | WJBK\" lang=\"en\"><meta data-n-head=\"true\" data-hid=\"dc.subject\" name=\"dc.subject\" content=\"\"><meta data-n-head=\"true\" data-hid=\"dcterms.abstract\" name=\"dcterms.abstract\" content=\"Detroit news, weather, sports, and traffic serving all of southeast Michigan and Metro Detroit. Watch breaking news live or see the latest videos from programs like The Nine, Let it Rip, and FOX 2 News.\"><meta data-n-head=\"true\" data-hid=\"dc.type\" name=\"dc.type\" scheme=\"dcterms.DCMIType\" content=\"Collection\"><meta data-n-head=\"true\" data-hid=\"dc.description\" name=\"dc.description\" content=\"Detroit news, weather, sports, and traffic serving all of southeast Michigan and Metro Detroit. Watch breaking news live or see the latest videos from programs like The Nine, Let it Rip, and FOX 2 News.\"><meta data-n-head=\"true\" data-hid=\"dc.language\" name=\"dc.language\" scheme=\"dcterms.RFC4646\" content=\"en-US\"><meta data-n-head=\"true\" data-hid=\"dc.publisher\" name=\"dc.publisher\" content=\"FOX 2 Detroit\"><meta data-n-head=\"true\" data-hid=\"dc.format\" name=\"dc.format\" scheme=\"dcterms.URI\" content=\"text/html\"><meta data-n-head=\"true\" data-hid=\"dc.identifier\" name=\"dc.identifier\" scheme=\"dcterms.URI\" content=\"urn:uri:base64:dHJhbnNjcmlwdDI0Mw==\"><meta data-n-head=\"true\" data-hid=\"dc.source\" name=\"dc.source\" content=\"FOX 2 Detroit\"><meta data-n-head=\"true\" data-hid=\"dc.date\" name=\"dc.date\" content=\"2026-03-19\"><meta data-n-head=\"true\" data-hid=\"dcterms.created\" name=\"dcterms.created\" scheme=\"dcterms.ISO8601\" content=\"2026-03-19T19:24:45\"><meta data-n-head=\"true\" data-hid=\"dcte…",
                        "status_code": 200,
                        "final_url": "https://www.fox2detroit.com/"
                    }
                ],
                "facts": [],
                "ignored_candidates": [],
                "blocked_candidates": 0,
                "source_diversity": 0,
                "host_coverage": 1,
                "source_type_coverage": 1,
                "exact_match_documents": 1,
                "external_exact_match_documents": 0,
                "elapsed_ms": 371,
                "candidates_considered": 1,
                "fetch_success_rate": 100,
                "avg_source_trust": 55,
                "avg_entity_score": 100
            },
            "provider_enrichment": {
                "providers": {
                    "safebrowsing": {
                        "status": "disabled"
                    },
                    "abuseipdb": {
                        "status": "quota_exhausted",
                        "confidence": 0,
                        "budget": {
                            "provider": "abuseipdb",
                            "window_key": "2026-03-19",
                            "used": 850,
                            "limit": 850,
                            "remaining": 0,
                            "updated_at": "2026-03-19T06:46:15+00:00"
                        }
                    },
                    "ipinfo": {
                        "status": "ok",
                        "confidence": 54,
                        "ip": "96.17.178.133",
                        "asn": "AS20940",
                        "as_name": "Akamai International B.V.",
                        "as_domain": "akamai.com",
                        "country_code": "GB",
                        "country": "United Kingdom",
                        "region": "",
                        "city": "",
                        "flags": [],
                        "highlights": [
                            "IPinfo resolved the primary IP to GB on AS20940."
                        ],
                        "citations": [
                            {
                                "title": "IPinfo IP enrichment",
                                "url": "https://ipinfo.io/developers",
                                "host": "ipinfo.io",
                                "snippet": "Primary IP 96.17.178.133 geolocates to GB.",
                                "source_type": "ip_enrichment"
                            }
                        ]
                    },
                    "censys": {
                        "status": "disabled"
                    },
                    "sslmate": {
                        "status": "error",
                        "error": "HTTP 429: {\"code\":\"rate_limited\",\"message\":\"You have exceeded the domain search rate limit for the SSLMate CT Search API. Please try again later, or upgrade your Cert Spotter plan by visiting .\"}"
                    }
                },
                "facts": [],
                "citations": [
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 96.17.178.133 geolocates to GB.",
                        "source_type": "ip_enrichment"
                    }
                ],
                "highlights": [
                    "IPinfo resolved the primary IP to GB on AS20940."
                ],
                "resolved_ips": [
                    "96.17.178.133",
                    "96.17.178.195"
                ],
                "primary_ip": "96.17.178.133",
                "quality": {
                    "provider_diversity_score": 25,
                    "provider_confidence_score": 54,
                    "provider_fact_count": 0
                }
            },
            "evidence": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "tag_support": [],
                "top_supporting_facts": [],
                "top_positive_facts": []
            },
            "quality": {
                "source_diversity_score": 0,
                "entity_coverage_score": 100,
                "freshness_score": 18,
                "confidence": 24,
                "documents_fetched": 1,
                "external_documents_fetched": 0,
                "fact_count": 0,
                "avg_source_trust": 55,
                "avg_entity_score": 100,
                "fetch_success_rate": 100,
                "exact_match_score": 0,
                "query_coverage_score": 20,
                "host_coverage_score": 20,
                "source_type_coverage_score": 25,
                "qualified_evidence_score": 0,
                "exact_match_documents": 0,
                "blocked_candidates": 0,
                "used_direct_fallback": true,
                "external_results_found": 0,
                "provider_diversity_score": 25,
                "provider_confidence_score": 54,
                "provider_fact_count": 0
            },
            "decision": {
                "state": "insufficient",
                "uncertainty": true,
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "supports": {
                    "dangerous": false,
                    "scam": false,
                    "spam": false,
                    "nsfw": false,
                    "trusted": false
                },
                "evidence_quality": "low",
                "state_label": "Inconclusive",
                "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
            },
            "signals": {
                "scores": {
                    "legit": 0,
                    "safe": 0,
                    "trusted": 0,
                    "caution": 0,
                    "scam": 0,
                    "dangerous": 0,
                    "spam": 0,
                    "nsfw": 0
                },
                "counts": {
                    "official_presence": 0,
                    "business_profiles": 0,
                    "positive_reviews": 0,
                    "negative_reviews": 0,
                    "scam_reports": 0,
                    "dangerous_reports": 0,
                    "spam_reports": 0,
                    "adult_reports": 0
                },
                "candidate_support": 0,
                "candidate_contradiction": 0,
                "highlights": [
                    "IPinfo resolved the primary IP to GB on AS20940.",
                    "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                ]
            },
            "citations": [
                {
                    "title": "IPinfo IP enrichment",
                    "url": "https://ipinfo.io/developers",
                    "host": "ipinfo.io",
                    "snippet": "Primary IP 96.17.178.133 geolocates to GB.",
                    "source_type": "ip_enrichment"
                }
            ],
            "urlscan": {
                "domain": "fox2detroit.com",
                "status": "error",
                "submitted_at": "2026-03-19T23:25:05+00:00",
                "completed_at": null,
                "last_checked_at": "2026-03-19T23:25:05+00:00",
                "last_error": "Rate limit for 'public' exceeded. Limit is 5000 per day. Reset in 2093 seconds.",
                "submitted_url": "https://fox2detroit.com/",
                "uuid": "",
                "result_url": "",
                "api_result_url": "",
                "visibility": "public",
                "summary": "urlscan.io scan submission failed.",
                "report": [],
                "report_summary": [],
                "is_fresh": false,
                "can_retry": false,
                "poll_after_seconds": 20
            },
            "eligibility": {
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "search_connect_timeout": 2,
                "search_timeout": 3,
                "review_connect_timeout": 2,
                "review_timeout": 3,
                "allowed": true,
                "mode": "normal",
                "decision_code": "run_normal",
                "reason": "recent-crawl",
                "summary": "Running a standard intelligence pass because the current signals need third-party corroboration.",
                "cooldown": {
                    "active": false,
                    "empty_attempts": 0,
                    "next_allowed_at": "",
                    "reason": "",
                    "provider_retry_at": ""
                },
                "suffix": {
                    "tld": "com",
                    "registered_suffix": "com",
                    "class": "high_confidence",
                    "reserved": false
                },
                "signals": {
                    "trust_score": 0,
                    "quality_score": 0,
                    "safety_score": 0,
                    "fraud_score": 0,
                    "spam_score": 0,
                    "nsfw_score": 0,
                    "score_confidence": 0,
                    "risk_label": "unknown",
                    "crawl_blocked": false,
                    "last_http_status": 200,
                    "content_word_count": 884,
                    "internal_links_count": 160,
                    "site_name": "FOX 2 Detroit",
                    "title": "FOX 2 Detroit | Local News, Weather, and Live Streams | WJBK",
                    "is_tracked": false
                }
            },
            "cooldown": {
                "empty_attempts": 1,
                "next_allowed_at": "2026-03-26T23:25:07+00:00",
                "reason": "Recent intelligence runs produced no qualified third-party evidence, so retries are cooled down to save budget.",
                "provider_retry_at": "",
                "last_reason": "recent-crawl"
            },
            "debug": {
                "top_supporting_facts": [],
                "top_positive_facts": [],
                "ignored_candidates": [],
                "budget_ms": 4200,
                "search_budget_ms": 1600,
                "review_budget_ms": 2600,
                "search_mode": "recent-crawl",
                "query_cap": 2,
                "provider_cap": 1,
                "result_cap": 6,
                "review_document_cap": 4,
                "reason": "recent-crawl",
                "priority": 63,
                "eligibility_decision": "run_normal",
                "provider_statuses": {
                    "safebrowsing": "disabled",
                    "abuseipdb": "quota_exhausted",
                    "ipinfo": "ok",
                    "censys": "disabled",
                    "sslmate": "error"
                }
            },
            "last_good": {
                "checked_at": "2026-03-19T23:25:07+00:00",
                "summary": "External checks ran, but the verified result set was still too sparse to harden the verdict.",
                "decision": {
                    "state": "insufficient",
                    "uncertainty": true,
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "supports": {
                        "dangerous": false,
                        "scam": false,
                        "spam": false,
                        "nsfw": false,
                        "trusted": false
                    },
                    "evidence_quality": "low",
                    "state_label": "Inconclusive",
                    "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                },
                "signals": {
                    "scores": {
                        "legit": 0,
                        "safe": 0,
                        "trusted": 0,
                        "caution": 0,
                        "scam": 0,
                        "dangerous": 0,
                        "spam": 0,
                        "nsfw": 0
                    },
                    "counts": {
                        "official_presence": 0,
                        "business_profiles": 0,
                        "positive_reviews": 0,
                        "negative_reviews": 0,
                        "scam_reports": 0,
                        "dangerous_reports": 0,
                        "spam_reports": 0,
                        "adult_reports": 0
                    },
                    "candidate_support": 0,
                    "candidate_contradiction": 0,
                    "highlights": [
                        "IPinfo resolved the primary IP to GB on AS20940.",
                        "External evidence remained inconclusive because diversity, exact matching, or confidence was still too weak."
                    ]
                },
                "citations": [
                    {
                        "title": "IPinfo IP enrichment",
                        "url": "https://ipinfo.io/developers",
                        "host": "ipinfo.io",
                        "snippet": "Primary IP 96.17.178.133 geolocates to GB.",
                        "source_type": "ip_enrichment"
                    }
                ]
            }
        },
        "external_decision": {
            "state": "insufficient",
            "uncertainty": true,
            "candidate_support": 0,
            "candidate_contradiction": 0,
            "supports": {
                "dangerous": false,
                "scam": false,
                "spam": false,
                "nsfw": false,
                "trusted": false
            },
            "evidence_quality": "low",
            "state_label": "Inconclusive",
            "state_reason": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
        },
        "signal_scores": [
            {
                "label": "Strongest tag heuristic",
                "value": "T · 87%",
                "tone": "good",
                "detail": "The highest raw tag match from the heuristic engine before visibility thresholds and manual overrides."
            },
            {
                "label": "Trust score",
                "value": "84/100",
                "tone": "good",
                "detail": "Confidence derived from authority, crawl quality, stability, and risk signals."
            },
            {
                "label": "Authority score",
                "value": "57/100",
                "tone": "caution",
                "detail": "A higher authority score usually means broader reputation and backlink confidence."
            },
            {
                "label": "Spam risk",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This blends spam indicators with false-positive protections for legitimate sites."
            },
            {
                "label": "Quality score",
                "value": "91/100",
                "tone": "good",
                "detail": "Based on crawl quality, content completeness, and technical evidence."
            },
            {
                "label": "Safety score",
                "value": "100/100",
                "tone": "good",
                "detail": "Higher is safer. Direct fraud signals can heavily cap this even when SEO signals look strong."
            },
            {
                "label": "Fraud score",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This reflects phishing, drainer, fake-support, fake-shop, and malware signals."
            },
            {
                "label": "Infrastructure risk",
                "value": "0/100",
                "tone": "good",
                "detail": "Lower is better. This reflects the IP, registrar, and nameserver neighbourhood seen by the crawler."
            },
            {
                "label": "Evidence confidence",
                "value": "55/100",
                "tone": "caution",
                "detail": "Higher means the crawler had enough pages and registry evidence to make a stronger call."
            },
            {
                "label": "External evidence",
                "value": "Low",
                "tone": "unknown",
                "detail": "Quality of the structured search and review evidence cluster."
            },
            {
                "label": "External decision",
                "value": "Inconclusive",
                "tone": "unknown",
                "detail": "How third-party evidence compares with the current candidate tag."
            },
            {
                "label": "NSFW score",
                "value": "0/100",
                "tone": "good",
                "detail": "Context-aware adult-content detection with medical / educational false-positive reduction."
            },
            {
                "label": "Registry stability",
                "value": "100/100",
                "tone": "good",
                "detail": "Based on age, expiry runway, and the amount of ownership / registrar churn."
            }
        ],
        "signal_sections": [
            {
                "title": "Registry & ownership",
                "items": [
                    {
                        "label": "Domain age",
                        "value": "29.6 years",
                        "tone": "good",
                        "detail": "Older domains generally carry more historical trust than very new ones."
                    },
                    {
                        "label": "Stability score",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Penalised by registrar, ownership, and nameserver churn."
                    },
                    {
                        "label": "Days to expiry",
                        "value": "140",
                        "tone": "good",
                        "detail": "Very short renewal windows can be a weak trust signal."
                    },
                    {
                        "label": "Registrar / ownership changes",
                        "value": "0 / 0",
                        "tone": "good",
                        "detail": "Frequent ownership churn can weaken trust."
                    },
                    {
                        "label": "Nameserver changes",
                        "value": "0",
                        "tone": "good",
                        "detail": "Repeated infrastructure changes can indicate instability."
                    },
                    {
                        "label": "DNSSEC / privacy",
                        "value": "DNSSEC on · privacy off",
                        "tone": "good",
                        "detail": "DNSSEC strengthens DNS trust; privacy is neutral on its own."
                    }
                ]
            },
            {
                "title": "Reputation & search evidence",
                "items": [
                    {
                        "label": "Backlinks",
                        "value": "4",
                        "tone": "unknown",
                        "detail": "Broader backlink evidence usually improves confidence."
                    },
                    {
                        "label": "Referring domains",
                        "value": "4",
                        "tone": "unknown",
                        "detail": "Unique linking domains are more useful than raw link volume."
                    },
                    {
                        "label": "Organic keywords",
                        "value": "99",
                        "tone": "caution",
                        "detail": "Search footprint helps distinguish real sites from thin shells."
                    },
                    {
                        "label": "Indexed pages",
                        "value": "292",
                        "tone": "good",
                        "detail": "Larger index coverage usually means more evidence to classify from."
                    },
                    {
                        "label": "Brand strength",
                        "value": "100/100",
                        "tone": "good",
                        "detail": "Stronger brand signals reduce false positives for legitimate sites."
                    },
                    {
                        "label": "Risk label",
                        "value": "GOOD",
                        "tone": "unknown",
                        "detail": "This is the raw crawl / heuristic risk label feeding the tag model."
                    }
                ]
            },
            {
                "title": "Crawl, content & technicals",
                "items": [
                    {
                        "label": "HTTP status",
                        "value": "200",
                        "tone": "good",
                        "detail": "Healthy responses make classification more reliable."
                    },
                    {
                        "label": "HTTPS / speed",
                        "value": "HTTPS OK · 2,306 ms",
                        "tone": "good",
                        "detail": "Slow or broken technical signals weaken confidence."
                    },
                    {
                        "label": "Content words",
                        "value": "884",
                        "tone": "good",
                        "detail": "Thin pages are harder to trust and easier to manipulate."
                    },
                    {
                        "label": "Schema / structure",
                        "value": "1 schema · meta · H1",
                        "tone": "caution",
                        "detail": "Structured markup and basic on-page hygiene improve quality confidence."
                    },
                    {
                        "label": "Links on page",
                        "value": "159 internal · 11 external",
                        "tone": "good",
                        "detail": "Link patterns help detect thin directories and promo pages."
                    },
                    {
                        "label": "Page speed / mobile",
                        "value": "44/100 · 83/100",
                        "tone": "caution",
                        "detail": "Better technical quality generally reduces low-effort site patterns."
                    },
                    {
                        "label": "Crawl access",
                        "value": "Open",
                        "tone": "good",
                        "detail": "The crawler reached the site without an anti-bot challenge."
                    }
                ]
            },
            {
                "title": "External evidence & explainability",
                "items": [
                    {
                        "label": "Decision state",
                        "value": "Inconclusive",
                        "tone": "unknown",
                        "detail": "Public search did not yield usable third-party matches, so the system fell back to first-party inspection only."
                    },
                    {
                        "label": "Evidence quality",
                        "value": "Low",
                        "tone": "unknown",
                        "detail": "Blends source trust, domain matching, evidence diversity, and freshness."
                    },
                    {
                        "label": "Support vs contradiction",
                        "value": "0 / 0",
                        "tone": "unknown",
                        "detail": "Compares how much structured external evidence supports the candidate tag against evidence that contradicts it."
                    },
                    {
                        "label": "Qualified risk sources",
                        "value": "No",
                        "tone": "good",
                        "detail": "Risk tags only promote from external evidence when source diversity or source trust thresholds are met."
                    },
                    {
                        "label": "Uncertainty buffer",
                        "value": "Active",
                        "tone": "caution",
                        "detail": "Prevents thin or mixed external evidence from forcing a stronger tag than the evidence can justify."
                    }
                ]
            }
        ],
        "positives": [
            "Established domain age: 29.6 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence.",
            "DNSSEC is enabled."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ]
    },
    "traffic_confidence": 72,
    "whois": {
        "current": {
            "id": 42684,
            "domain": "fox2detroit.com",
            "source_type": "rdap",
            "rdap_url": "https://rdap.verisign.com/com/v1/domain/FOX2DETROIT.COM",
            "registrar_name": "GoDaddy Corporate Domains, LLC",
            "registrar_handle": "3786",
            "registrant_name": "",
            "registrant_org": "",
            "registrant_country": "",
            "registrant_email": "",
            "abuse_email": "abuse@gcd.com",
            "created_date": "1996-09-05 04:00:00",
            "updated_date": "2025-08-04 23:00:31",
            "expires_date": "2026-09-04 04:00:00",
            "nameservers_json": "[\"ns01.dns.fox\",\"ns01.foxdoua.com\",\"ns02.dns.fox\",\"ns02.foxdoua.com\",\"ns03.dns.fox\",\"ns03.foxdoua.com\",\"ns04.dns.fox\",\"ns04.foxdoua.com\"]",
            "status_json": "[\"client transfer prohibited\",\"server delete prohibited\",\"server transfer prohibited\",\"server update prohibited\"]",
            "dnssec": "signed",
            "privacy_protected": 0,
            "content_hash": "54bb03bdf6795706c9a22caf1e3e15878e9edc428bf2a1ae8e72531ca01c1855",
            "history_count": 1,
            "last_checked_at": "2026-03-19 23:25:07",
            "last_changed_at": "2026-03-19 23:25:07",
            "created_at": "2026-03-19 23:25:08",
            "updated_at": "2026-03-19 23:25:08"
        },
        "history": [
            {
                "id": 43580,
                "domain": "fox2detroit.com",
                "source_type": "rdap",
                "registrar_name": "GoDaddy Corporate Domains, LLC",
                "registrar_handle": "3786",
                "registrant_name": "",
                "registrant_org": "",
                "registrant_country": "",
                "registrant_email": "",
                "abuse_email": "abuse@gcd.com",
                "created_date": "1996-09-05 04:00:00",
                "updated_date": "2025-08-04 23:00:31",
                "expires_date": "2026-09-04 04:00:00",
                "nameservers_json": "[\"ns01.dns.fox\",\"ns01.foxdoua.com\",\"ns02.dns.fox\",\"ns02.foxdoua.com\",\"ns03.dns.fox\",\"ns03.foxdoua.com\",\"ns04.dns.fox\",\"ns04.foxdoua.com\"]",
                "status_json": "[\"client transfer prohibited\",\"server delete prohibited\",\"server transfer prohibited\",\"server update prohibited\"]",
                "dnssec": "signed",
                "privacy_protected": 0,
                "content_hash": "54bb03bdf6795706c9a22caf1e3e15878e9edc428bf2a1ae8e72531ca01c1855",
                "checked_at": "2026-03-19 23:25:07",
                "change_summary": "Initial WHOIS snapshot captured.",
                "created_at": "2026-03-19 23:25:07"
            }
        ],
        "signals": {
            "age_years": 29.6,
            "days_to_expiry": 140,
            "days_since_last_registry_update": 254,
            "stability_score": 100,
            "registrar_changes": 0,
            "ownership_changes": 0,
            "nameserver_changes": 0,
            "status_changes": 0,
            "history_entries": 1,
            "privacy_protected": false,
            "dnssec_enabled": true,
            "has_registrant_country": false,
            "registrant_country": "",
            "nameserver_count": 8,
            "status_count": 4
        }
    },
    "discovered_domain": {
        "id": 1013875,
        "domain": "fox2detroit.com",
        "first_seen_at": "2026-03-19 23:23:55",
        "last_crawled_at": "2026-03-23 06:56:29",
        "last_title": "FOX 2 Detroit | Local News, Weather, and Live Streams | WJBK",
        "last_http_status": 200,
        "discovered_from_domain": "fox32chicago.com",
        "depth": 1,
        "backlinks_count": 4,
        "rating_cache": 42,
        "spam_score": 0,
        "risk_label": "good",
        "category_name": "News & Media: Local & Regional",
        "primary_country_code": "",
        "internal_links_count": 159,
        "external_links_count": 11,
        "social_profiles_count": 4,
        "content_word_count": 884,
        "title_quality_score": 93,
        "has_meta_description": 1,
        "has_h1": 1,
        "language_code": "en",
        "response_time_ms": 2306,
        "robots_status": 0,
        "sitemap_status": 0,
        "sitemap_total_urls": 0,
        "quality_score": 91,
        "site_name": "FOX 2 Detroit",
        "canonical_domain": "fox2detroit.com",
        "favicon_present": 1,
        "schema_org_count": 1,
        "noindex_detected": 0,
        "feed_links_count": 61,
        "https_working": 1,
        "estimated_authority_score": 44,
        "trust_score": 100,
        "nsfw_score": 0,
        "overall_rank_estimate": 1317576,
        "primary_tag": "C",
        "tag_codes": "C,Uncertain",
        "manual_verified_status": "",
        "manual_tag_codes": "",
        "manual_rating_delta": 0,
        "manual_authority_delta": 0,
        "manual_trust_delta": 0,
        "manual_note": null,
        "manual_adjusted_by": null,
        "manual_adjusted_at": null,
        "manual_lock_scores": 0,
        "manual_lock_flags": 0,
        "crawl_blocked": 0,
        "crawl_blocked_by": "",
        "crawl_blocked_reason": null,
        "safety_score": 100,
        "fraud_score": 0,
        "legitimacy_score": 60,
        "infrastructure_risk_score": 0,
        "score_confidence": 53,
        "tag_confidence": 27,
        "category_confidence": 99,
        "deep_crawl_pages": 0,
        "resolved_ip": "2.23.210.100",
        "category_candidates_json": "[{\"category\":\"News & Media: Local & Regional\",\"score\":83},{\"category\":\"Business: Corporate & Professional Services\",\"score\":22},{\"category\":\"News & Media\",\"score\":17},{\"category\":\"Sports\",\"score\":17}]",
        "page_signals_json": "[]",
        "score_reasons_json": "[\"Trusted status now requires clean crawl access and stronger confidence, so this result was downgraded to caution.\",\"Overall rating is now capped by evidence confidence to prevent inflated scores from thin signals.\"]",
        "route_domain": "fox2detroit.com",
        "display_domain": "fox2detroit.com"
    },
    "explainability": {
        "summary": "fox2detroit.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "54/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "good",
                "detail": "72/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "weighted_contributions": [
            {
                "label": "Quality system",
                "points": "+19.0",
                "tone": "caution",
                "detail": "Technical quality, crawl depth, page structure, and implementation hygiene. Current subsystem score: 56/100."
            },
            {
                "label": "Reputation system",
                "points": "+18.4",
                "tone": "caution",
                "detail": "Authority, search visibility, reach, engagement, and registry stability. Current subsystem score: 54/100."
            },
            {
                "label": "Safety system",
                "points": "+32.0",
                "tone": "good",
                "detail": "Fraud, spam, and trust signals from infrastructure, crawl, and registry evidence. Current subsystem score: 100/100."
            },
            {
                "label": "Risk clamp",
                "points": "-5.0",
                "tone": "risk",
                "detail": "Safety thresholds capped the final score until the risk profile improves."
            }
        ],
        "evidence_cards": [
            {
                "label": "Authority and trust",
                "value": "55/100 · trust 80/100",
                "tone": "caution",
                "detail": "388 monthly visitors, 99 organic keywords, brand completeness 100/100, engagement 79/100."
            },
            {
                "label": "Backlink and search evidence",
                "value": "4 referring domains",
                "tone": "good",
                "detail": "4 backlinks across 4 referring domains. Diversity 94/100; spam penalty 0."
            },
            {
                "label": "Registry and domain stability",
                "value": "29.6 years old",
                "tone": "good",
                "detail": "Stability 100/100 · age 29.6 years · registrar GoDaddy Corporate Domains, LLC · expires in 140 days."
            },
            {
                "label": "Safety and fraud posture",
                "value": "Safety 100/100 · fraud 0/100",
                "tone": "good",
                "detail": "Primary tag T · safety 100/100 · fraud 0/100."
            }
        ],
        "positives": [
            "Established domain age: 29.6 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence.",
            "DNSSEC is enabled.",
            "Registry history looks stable, which supports legitimacy and trust."
        ],
        "risks": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-23 06:56:29",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 24d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-19 23:25:07",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 27d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-16 12:15:38",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-16 12:15:38",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "section_notes": {
            "audience": "Audience geography is estimated from category, country, traffic mix, and brand signals until first-party audience data is collected.",
            "keywords": "Top keywords are estimated from crawl language, brand, category, and visibility signals until tracked keyword snapshots are stored.",
            "history": "Rank history is estimated from the current profile because no stored history exists for this domain yet."
        },
        "base_weighted_score": 69,
        "fraud_clamp_penalty": 5,
        "final_score": 64
    },
    "insight_snapshot": {
        "version": 1,
        "generated_at": "2026-04-16T12:15:38+00:00",
        "domain": "fox2detroit.com",
        "display_name": "FOX 2 Detroit",
        "is_tracked": false,
        "is_estimated": true,
        "overall_score": 64,
        "authority_score": 55,
        "trust_score": 80,
        "safety_score": 100,
        "fraud_score": 0,
        "confidence_score": 54,
        "traffic_confidence": 72,
        "last_crawled_at": "2026-03-23 06:56:29",
        "crawl_blocked": false,
        "summary": "fox2detroit.com currently scores 64/100. The score is being shaped by a mixed signal profile rather than one dominant factor. Evidence confidence is moderate, so the score should settle further after more crawl depth or registry checks. This is an estimated profile rather than a manually tracked one. Crawler access looks clean.",
        "badges": [
            {
                "label": "Profile",
                "value": "Estimated profile",
                "tone": "unknown",
                "detail": null
            },
            {
                "label": "Evidence confidence",
                "value": "Moderate confidence",
                "tone": "caution",
                "detail": "54/100"
            },
            {
                "label": "Traffic confidence",
                "value": "Solid confidence",
                "tone": "good",
                "detail": "72/100"
            },
            {
                "label": "Crawler access",
                "value": "Clean visibility",
                "tone": "good",
                "detail": null
            }
        ],
        "top_positive_signals": [
            "Established domain age: 29.6 years.",
            "Low registrar / ownership churn with solid registry stability.",
            "Healthy crawl quality and on-page completeness.",
            "Search evidence is broad enough to classify with better confidence.",
            "DNSSEC is enabled."
        ],
        "top_risk_signals": [
            "External evidence was mixed or sparse, so the tag model keeps an uncertainty buffer instead of overcommitting."
        ],
        "freshness": [
            {
                "label": "Crawl evidence",
                "value": "2026-03-23 06:56:29",
                "tone": "risk",
                "detail": "Crawl and page content sample. Age: 24d ago."
            },
            {
                "label": "WHOIS snapshot",
                "value": "2026-03-19 23:25:07",
                "tone": "risk",
                "detail": "Registry profile and stability signals. Age: 27d ago."
            },
            {
                "label": "Keyword view",
                "value": "2026-04-16 12:15:38",
                "tone": "good",
                "detail": "Estimated visibility until tracked keyword snapshots exist. Age: 0s ago."
            },
            {
                "label": "Rank history",
                "value": "2026-04-16 12:15:38",
                "tone": "good",
                "detail": "Estimated trend derived from current profile and crawl signals. Age: 0s ago."
            },
            {
                "label": "Audience geography",
                "value": "Not captured yet",
                "tone": "unknown",
                "detail": "Audience mix is estimated from available signals rather than first-party audience logs."
            }
        ],
        "top_tags": [
            {
                "code": "T",
                "label": "Trusted",
                "tone": "good"
            },
            {
                "code": "Uncertain",
                "label": "Uncertain",
                "tone": "unknown"
            }
        ]
    },
    "is_tracked": false,
    "is_estimated": true,
    "live_state": {
        "status": "processing",
        "status_label": "Cache build running",
        "message": "The refreshed page cache is still being built for this domain.",
        "updated_at": "2026-04-18T05:09:51+00:00"
    },
    "refresh_state": {
        "canRequest": false,
        "queued": true,
        "processing": true,
        "stageKey": "cache-queued",
        "stageLabel": "Cache build running",
        "cooldownUntil": null,
        "message": "The refreshed page cache is still being built for this domain.",
        "action": "/domain/fox2detroit.com/refresh",
        "isGuestCooldown": false,
        "cooldownSeconds": 0
    },
    "urlscan_report": {
        "domain": "fox2detroit.com",
        "status": "error",
        "submitted_at": "2026-03-19T23:25:05+00:00",
        "completed_at": null,
        "last_checked_at": "2026-03-19T23:25:05+00:00",
        "last_error": "Rate limit for 'public' exceeded. Limit is 5000 per day. Reset in 2093 seconds.",
        "submitted_url": "https://fox2detroit.com/",
        "uuid": "",
        "result_url": "",
        "api_result_url": "",
        "visibility": "public",
        "summary": "urlscan.io scan submission failed.",
        "report": [],
        "report_summary": [],
        "is_fresh": false,
        "can_retry": true,
        "poll_after_seconds": 20
    }
}