{
  "schemaVersion": "1.0",
  "updatedAt": "2026-08-31",
  "status": "instrumentation_ready_not_collecting",
  "provider": {
    "name": "Cloudflare Web Analytics",
    "productUrl": "https://www.cloudflare.com/web-analytics/",
    "documentationUrl": "https://developers.cloudflare.com/web-analytics/about/",
    "selectionReason": "Free, works without moving DNS or proxying the site, uses a lightweight beacon, and states that it does not collect or use visitors' personal data."
  },
  "collection": {
    "beaconImplemented": true,
    "siteTokenConfigured": false,
    "clockStartedAt": null,
    "productionCollectionConfirmedAt": null,
    "requiredEnvironmentVariable": "NEXT_PUBLIC_CLOUDFLARE_WEB_ANALYTICS_TOKEN"
  },
  "gate": {
    "metric": "bot_excluded_monthly_visits",
    "threshold": 25000,
    "requiredConsecutiveCompleteMonths": 3,
    "currentConsecutiveMonths": 0,
    "status": "not_started"
  },
  "metricDefinition": {
    "label": "Bot-excluded monthly visits",
    "providerDefinition": "Cloudflare defines a visit as a page view reached from a different website or a direct link. One visit can include multiple page views.",
    "importantDistinction": "This is a provider-defined visit, not a cookie-backed identity session and not a unique-person count.",
    "botRule": "Monthly evidence must use Cloudflare Web Analytics with Exclude Bots set to Yes.",
    "monthRule": "Only complete UTC calendar months may enter the qualifying streak. Partial months are displayed separately and never count."
  },
  "privacy": {
    "cookiesSetByFourthDownLabsForAnalytics": false,
    "localStorageUsedForAnalytics": false,
    "fingerprintingByFourthDownLabs": false,
    "queryStringsReportedByProvider": false,
    "advertiserAccess": false,
    "subscriberDataJoined": false
  },
  "knownLimitations": [
    "JavaScript blockers, disabled JavaScript, or visitors who leave before the beacon fires can create undercounting.",
    "Bot exclusion is a provider classification, not proof that every automated request was removed.",
    "Cloudflare retains unsampled beacon data for seven days, aggregates older data, and makes Web Analytics data available for the previous six months.",
    "Cloudflare may apply adaptive sampling when querying aggregated data; any reported monthly total is a provider estimate when sampling is shown.",
    "The visit definition can count a returning reader again after an external referral or direct entry and should not be relabeled as a unique person."
  ],
  "evidenceProtocol": [
    "Confirm the beacon on the canonical production hostname without logging or publishing the token as a secret claim; the site token is public instrumentation metadata.",
    "Close each UTC month only after the provider marks the date range complete.",
    "Apply Exclude Bots = Yes and record visits, page views, sampling status, extraction time, and a SHA-256 receipt for the exported evidence.",
    "Commit the closed-month record to audience-rollups.json; never edit a closed value in place without a correction entry.",
    "Advance the advertising reach gate only after three consecutive complete months each meet or exceed 25,000 visits."
  ]
}
