{
  "schema": "pagespeed-audit/findings@1",
  "run": {
    "run_id": "sample-2026-10-30",
    "generated_at": "2026-10-30T08:24:46Z",
    "skill_version": "sample",
    "site": "example.com",
    "url": "https://example.com/",
    "final_url": "https://example.com/",
    "strategy": "mobile",
    "date": "2026-10-30",
    "lighthouse_version": null,
    "data_sources": [
      "PSI/Lighthouse",
      "CrUX field (28-day p75)"
    ],
    "field_available": true,
    "binding_constraint": "field p75 TTFB 1.6 s — passing in the lab, absent from all 21 flags",
    "missing_from_psi": "field p75 TTFB 1.6 s: the server-response-time audit passes in the lab (~1 ms from the datacenter)",
    "adjudication_counts": {
      "confirmed": 1,
      "false_positive": 2,
      "deprioritized": 2,
      "platform_blocked": 1,
      "readout": 0
    },
    "framework": "noise-silence/four-verdicts@1",
    "noise_rate": 0.8333
  },
  "metrics": [
    {
      "metric": "TTFB",
      "source": "field_page",
      "value": 1600,
      "unit": "ms",
      "category": "needs-improvement",
      "good": 800,
      "poor": 1800
    },
    {
      "metric": "LCP",
      "source": "field_page",
      "value": 2784,
      "unit": "ms",
      "category": "needs-improvement",
      "good": 2500,
      "poor": 4000
    },
    {
      "metric": "CLS",
      "source": "field_page",
      "value": 0,
      "unit": "",
      "category": "good",
      "good": 0.1,
      "poor": 0.25
    },
    {
      "metric": "TTFB",
      "source": "lab",
      "value": 1,
      "unit": "ms",
      "category": null,
      "good": 800,
      "poor": 1800
    },
    {
      "metric": "CLS",
      "source": "lab",
      "value": 0.122,
      "unit": "",
      "category": null,
      "good": 0.1,
      "poor": 0.25
    }
  ],
  "adjudications": [
    {
      "audit_id": "render-blocking-resources",
      "disposition": "confirmed",
      "claim": "Reduce render-blocking resources — save 2,330 ms",
      "evidence": "Field p75 LCP = 2,784 ms. The chain is real, but the saving is a lab-graph counterfactual on a different baseline; impact recomputed against field data.",
      "finding_ref": "F1",
      "metric_savings": {
        "LCP": 2330
      }
    },
    {
      "audit_id": "uses-responsive-images",
      "disposition": "false_positive",
      "claim": "Properly size images",
      "evidence": "srcset / sizes present and correct; the flag fired on 2x density at the emulated DPR. Correct responsive art direction misread as oversizing."
    },
    {
      "audit_id": "font-display",
      "disposition": "false_positive",
      "claim": "Ensure text remains visible during webfont load",
      "evidence": "Icon font with font-display: block. Blocking is the correct behaviour for icon fonts; swap would flash raw ligature text."
    },
    {
      "audit_id": "unsized-images",
      "disposition": "deprioritized",
      "claim": "Image elements do not have explicit width and height",
      "evidence": "Lab CLS 0.122; field p75 CLS 0.00 with an essentially all-good CLS distribution. The shift appears under cold-cache lab conditions; no materially affected cohort in the field."
    },
    {
      "audit_id": "unused-javascript",
      "disposition": "deprioritized",
      "claim": "Reduce unused JavaScript — 909 KiB",
      "evidence": "The flag's own metricSavings are zero on the metrics modelled, and the bytes are attributed to reCAPTCHA: security-owned, interaction-path code.",
      "metric_savings": {
        "LCP": 0,
        "FCP": 0
      }
    },
    {
      "audit_id": "uses-long-cache-ttl",
      "disposition": "platform_blocked",
      "claim": "Serve static assets with an efficient cache policy",
      "evidence": "Assets served by the platform's CDN; TTLs not merchant-controllable on this plan. True and material — and owned by the platform.",
      "finding_ref": "F3"
    }
  ],
  "findings": [
    {
      "id": "F1",
      "slug": "render-blocking-resources:critical-path",
      "title": "Render-blocking resources on the critical render chain: the chain is real, the 2,330 ms saving is a lab counterfactual",
      "severity": "HIGH",
      "confidence": "HIGH",
      "tags": [
        "lcp",
        "render-blocking"
      ],
      "evidence": "Lighthouse's render-blocking-resources flag models a 2,330 ms saving on a page whose real users' p75 LCP is 2,784 ms — a saving nearly the size of the entire field experience. The chain is real; the magnitude is not transferable.",
      "scope": null,
      "chain": null,
      "impact": {
        "narrative": "The chain is real. The saving is not 2,330 ms: that number is a lab-graph counterfactual, so the range is recomputed against the field p75 LCP of 2,784 ms rather than subtracted from it.",
        "arithmetic": "2,784 ms field p75 − 2,330 ms lab saving would imply a ~450 ms LCP — arithmetic across incompatible baselines. The honest range is recomputed against field data.",
        "metric": "LCP",
        "unit": "ms",
        "min": null,
        "max": null,
        "direction": "decrease",
        "confidence": "MEDIUM-HIGH"
      },
      "sequencing": null
    },
    {
      "id": "F2",
      "slug": "origin-ttfb:field-p75",
      "title": "Silent Bottleneck: real users wait 1.6 s for the first byte while the lab measures ~1 ms",
      "severity": "CRITICAL",
      "confidence": "HIGH",
      "tags": [
        "ttfb",
        "silent-bottleneck",
        "field-vs-lab"
      ],
      "evidence": "Field p75 TTFB 1.6 s — double the 0.8 s guideline Google's documentation sets for server response — against a lab TTFB near 1 ms from the datacenter. The server-response-time audit passes; none of the 21 flags names it.",
      "scope": null,
      "impact": {
        "narrative": "The binding field constraint appears nowhere in the flag list. Every millisecond of it precedes the first byte of every page.",
        "arithmetic": null,
        "metric": "TTFB",
        "unit": "ms",
        "min": null,
        "max": null,
        "direction": "decrease",
        "confidence": "HIGH"
      }
    },
    {
      "id": "F3",
      "slug": "cdn-cache-ttl:platform-owned",
      "title": "Static-asset cache TTLs are set by the platform's CDN, not the merchant",
      "severity": "MEDIUM",
      "confidence": "HIGH",
      "tags": [
        "caching",
        "locked"
      ],
      "evidence": "Assets are served by the platform's CDN; TTLs are not merchant-controllable on this plan.",
      "impact": {
        "narrative": "True and material — and owned by the platform.",
        "metric": null,
        "direction": null
      },
      "locked": true,
      "redirect": "Effort redirected to the controllable equivalent on this plan; the flag is not a to-do for the merchant."
    }
  ],
  "deliverables": [],
  "plan": [
    {
      "bucket": "today",
      "position": 1,
      "item": "Take the render-blocking resources off the critical render chain (F1)"
    },
    {
      "bucket": "sprint",
      "position": 1,
      "item": "Investigate origin response time against the 1.6 s field p75 TTFB (F2)"
    }
  ],
  "tags": [
    {
      "name": "Intercom",
      "category": "chat",
      "owner": "Support / customer success",
      "hosts": [
        "widget.intercom.io"
      ],
      "transfer_bytes": 214000,
      "main_thread_ms": 380,
      "blocking_ms": 140,
      "loaded_by": [],
      "pre_consent": null,
      "measured_gains": {
        "lcp_ms": 210,
        "tbt_ms": 130
      },
      "verdict": "defer",
      "owner_decides": false,
      "protected": false,
      "reason": "Costs 380 ms main thread, 140 ms blocking, 209 KB on every load for a feature used after the page is up.",
      "fix": "Show a static chat button; load the widget on the first click.",
      "disposition": "confirmed",
      "redirect": null,
      "platform": null,
      "money": {
        "lcp_saving_ms": 210,
        "baseline_lcp_ms": 3400,
        "baseline": "field p75 (CrUX)",
        "lcp_saving_at_baseline_ms": 238,
        "conversion_uplift": {
          "low": 0.0109,
          "central": 0.0154,
          "high": 0.0176
        },
        "monthly_revenue": null,
        "currency": null,
        "model": "pagespeedaudit.com/research/the-cost-of-a-millisecond",
        "assumptions": "No revenue supplied, so only the conversion range is given."
      },
      "evidence": [],
      "server_side": null
    },
    {
      "name": "Cookiebot",
      "category": "consent",
      "owner": "Legal / privacy",
      "hosts": [
        "consent.cookiebot.com"
      ],
      "transfer_bytes": 152000,
      "main_thread_ms": 210,
      "verdict": "keep",
      "owner_decides": false,
      "protected": true,
      "reason": "PSI counts it as third-party cost to cut, but it must stay: Consent / CMP — must run first, and its choice gates the other tags.",
      "fix": null,
      "disposition": "false_positive",
      "redirect": "Leave it in place. Self-host or preconnect it so it starts sooner.",
      "evidence": []
    },
    {
      "name": "Pinterest",
      "category": "marketing",
      "owner": "Paid media / marketing",
      "hosts": [
        "s.pinimg.com"
      ],
      "transfer_bytes": 9000,
      "main_thread_ms": 20,
      "verdict": "keep",
      "owner_decides": false,
      "protected": false,
      "reason": "Costs little (20 ms main thread, 9 KB).",
      "fix": null,
      "disposition": "deprioritized",
      "evidence": []
    }
  ],
  "tag_totals": {
    "tags": 3,
    "transfer_bytes": 375000,
    "main_thread_ms": 610,
    "share_of_main_thread": 0.21,
    "by_verdict": {
      "keep": 2,
      "defer": 1,
      "offload": 0,
      "remove-candidate": 0
    },
    "by_disposition": {
      "confirmed": 1,
      "false_positive": 1,
      "deprioritized": 1,
      "platform_blocked": 0
    },
    "noise_rate": 0.667,
    "money": {
      "lcp_saving_ms": 210,
      "baseline_lcp_ms": 3400,
      "baseline": "field p75 (CrUX)",
      "lcp_saving_at_baseline_ms": 238,
      "conversion_uplift": {
        "low": 0.0109,
        "central": 0.0154,
        "high": 0.0176
      },
      "monthly_revenue": null,
      "currency": null,
      "model": "pagespeedaudit.com/research/the-cost-of-a-millisecond",
      "assumptions": "No revenue supplied, so only the conversion range is given."
    }
  }
}