Cloudflare Web Analytics integration

Cloudflare Web Analytics is on the map, not in the product yet.

Free traffic and performance signal for published pages, read straight from Cloudflare's edge.

Not connectable yet

We read from this source rather than publish to it, which means our webhook is no substitute: it delivers outward. This needs an inbound OAuth connection we have not built yet, so there is nothing here to connect today.

How it works

Cloudflare Web Analytics connects with an API token carrying the Account Analytics Read permission. We query Cloudflare's GraphQL API, reading the RUM pageload and performance datasets to see traffic and loading performance for published pages as measured at the edge. For sites already on Cloudflare, this is measurement that costs nothing and required no new script.

In the loop, this connection is a supporting signal in the measure step rather than the system of record. Cloudflare samples its RUM data adaptively and flags these datasets as beta, so the numbers are estimates. We use them as a directional read on traffic and page speed, a useful early signal after publishing and a cross-check on your primary analytics, not a replacement for it.

Best forSites on Cloudflare that want a free, zero-setup traffic and performance signal alongside their primary analytics.

Setup, step by step

  1. Confirm Cloudflare Web Analytics is enabled for your site in the Cloudflare dashboard.
  2. Create an API token with the Account Analytics Read permission.
  3. Paste the token into SearchHandled's Cloudflare connector.
  4. Select the account and site the token can read.
  5. Review the first pull, which adds edge-measured traffic and performance to your dashboard.

Best practices

Scope the token to Analytics Read

Cloudflare tokens are granular. A token holding only Account Analytics Read can query these datasets and touch nothing else in your Cloudflare account, which is the only shape we ask for.

Read the numbers as directional

Adaptive sampling means Cloudflare's figures are estimates that can drift from your primary analytics. Trends and comparisons between your own pages are reliable; exact counts are not the point.

Use the performance data

The RUM performance dataset shows real-user loading times per page. A published page that ranks but loads slowly is leaving results on the table, and this data surfaces that without a separate tool.

Keep a primary analytics connected

This signal works best alongside GA4, Matomo, Plausible, or Fathom. When the directional read and your system of record diverge, the system of record wins, and the divergence itself is worth a look.

Known issues

What practitioners actually report, from official docs, issue trackers, and community forums.

The RUM datasets are flagged beta

Cloudflare marks the rumPageloadEventsAdaptiveGroups and rumPerformanceEventsAdaptiveGroups datasets as beta, so schemas and behavior can change with little notice.

How we handle itWe treat the datasets as a supplementary signal, monitor for schema changes on our side, and a dataset change degrades this one signal rather than anything in your core reporting.

developers.cloudflare.com

Adaptive sampling makes counts estimates

Cloudflare samples RUM events adaptively, so reported figures are extrapolated estimates that rarely match your primary analytics exactly.

How we handle itEverything from this connection is labeled directional in your dashboard. We use it for trends and early post-publish signal, and we never blend its counts into figures sourced from your primary analytics.

developers.cloudflare.com

Questions teams ask

Why do Cloudflare's numbers differ from our analytics tool?

Cloudflare samples adaptively and extrapolates, and it measures at the edge rather than in the same script as your analytics. Differences are expected, which is why we present this data as directional.

Is this a replacement for GA4 or Plausible?

No. It is a free supplementary signal, useful for early traffic reads and page performance. Your primary analytics remains the system of record for content evaluation.

What can the API token do in our Cloudflare account?

Read analytics, nothing else. The token carries only the Account Analytics Read permission, so DNS, firewall, and every other Cloudflare surface stays out of reach by construction.

Not connectable yet

Start with the plan, not the connector.

Build a Growth Map from your site to see the work itself. Approved pages can leave through the export or the webhook today, and telling us Cloudflare Web Analytics matters moves it up the rollout.

Build my Growth Map