Analytics
See plan usage, visits, bandwidth, disk, top requests, cache, response codes, countries, and bot traffic for a site or for your whole account.
Parts of this feature are still being built. The Not yet section lists them.
Analytics shows how your sites are used and how much of your plan they use. Your plan's visits and CDN bandwidth are shared by all your sites, so the account page adds every site together, and a site's own page shows that site's part of the same shared allowance. Open a site and choose Analytics for one environment, or choose Analytics in the main menu for every site on your account. Pick a date range at the top right: the current billing period, or the last 24 hours, 7, 30, or 90 days.
Most numbers come from your site's server log. The server counts each request, and Avaloi collects the totals every hour. A new site shows its first numbers within an hour of going live. A few reports read Cloudflare instead, for your site's own domains only. On the demo, the traffic is made up, and a Demo data chip says so.
Reports
| Tab | What it shows |
|---|---|
| Plan usage | Server bandwidth, CDN bandwidth, disk, and visits against your plan, then charts of visits, bandwidth, and disk. The account page adds a row per site. |
| Top requests | The paths visitors asked for most, the sites that sent them, and the domains they used. |
| Cache | How often the page cache answered without running PHP: hits, misses, and bypassed requests. |
| CDN & edge | Bytes Cloudflare sent to visitors, and visits per domain. From Cloudflare, saved by UTC day, with a note on what the Free plan does not give. |
| Performance | Average response time and requests over time. |
| Response | Requests grouped as 2xx, 3xx, 4xx, and 5xx. |
| Audience | Top countries, then top browsers (and networks) from Cloudflare. |
| Bot traffic | Requests from crawlers, monitors, and scripts. |
Each chart and table has a download button for a CSV file.
How a visit is counted
Your plan's visits are one count for the whole account, shared by all your sites. A visit is one visitor on one UTC day: the same IP address and browser count once, however many pages they open. The same address with a different browser counts again. Known bots, crawlers, uptime monitors, and command line tools do not count, and neither do their bytes. The counting rule is named visits-v2-node. A change to the rule gets a new name.
Bot traffic is not hidden: the Bot traffic tab shows it.
Where each number comes from
From the server log on your site's node: visits, server bandwidth, disk, page views, requests, top requests, referrers, domains, the page cache report, response codes, response time, bot traffic, and top countries. The country is the one Cloudflare names in each request, counted on the server.
From Cloudflare, for your site's domains only (your own domains and your temporary avaloi.com names):
- CDN bandwidth: the bytes Cloudflare sent to visitors, cached or not. The Plan usage bar, the CDN & edge chart, and your bill read the same saved numbers.
- Visits by domain, as Cloudflare counts them. These can differ from the server's visits, because Cloudflare uses its own rule.
- Top browsers.
- The cache split: edge hits on the cache statistics card, which are requests Cloudflare answered from its cache and which never reach the server.
- Countries and status codes, saved with each day. The Audience tab shows the server's countries, and fills in Cloudflare's when the server's log has none.
- Top networks (ASNs), which Cloudflare answers on request.
- The Activity counts on the Bot protection tab.
Avaloi reads Cloudflare once an hour for each domain, saves one row per domain and day, and the reports read those saved rows. A day is shown as a whole UTC day, and the current day grows through the day. Avaloi asks Cloudflare about each of your domains by name and never reads numbers for the whole avaloi.com zone, because that zone also carries other customers' sites. When Cloudflare cannot filter a report by domain on the zone's plan, the report says so and shows nothing.
What the Cloudflare Free plan does not give
Avaloi uses the Cloudflare Free plan, so these Cloudflare numbers have limits, and the reports say so:
- There is no unique visitor count for one domain. Cloudflare counts visits, and Avaloi shows those as visits by domain. Your plan's visits come from the server's log.
- Cloudflare keeps detailed numbers only for a short time. Avaloi saves each day as it goes, so Cloudflare history starts on the day collection started, and an older range shows only the days saved.
- Cloudflare samples busy periods, so its numbers are estimates.
- A breakdown the plan does not offer (browsers, countries, or status codes) is left out, and the report says "Cloudflare does not offer this".
- Reads are limited to a few hundred queries every five minutes, so a platform with many domains refreshes the oldest domains first and can take a few hours to go round.
When Cloudflare numbers are not available
A Cloudflare report never shows a guess. When it cannot show numbers, it says why:
- Cloudflare numbers are not available: Cloudflare refused the read. This is a setting on Avaloi's side, not yours, and the API answers with
state: "permission_needed". The Plan usage bar and the Billing page say the CDN figure is not measured, and nothing is billed from a number that was not measured. - Cloudflare is not connected: this platform has no Cloudflare analytics token yet (
state: "not_configured"). - Cloudflare does not offer this: the zone's plan lacks the field (
state: "not_on_plan").
Avaloi staff: the reads use CLOUDFLARE_API_TOKEN and AVALOI_SAAS_ZONE_ID. The token needs the Zone > Analytics > Read permission on the zone, and nothing else for this. The scheduler task edge-analytics-collect logs the refusal as "Cloudflare refused the analytics read" and records permission_needed for every company with a domain. Fix the token, and the next hourly run replaces the state.
What is not collected
To keep visitor details private, Avaloi does not collect IP addresses, full user agents, or cities. Query strings are cut from paths. There are no reports for them in the dashboard or the API.
Not yet
- Pages Cloudflare serves from its cache never reach the server, so they are not in the server's visits or bandwidth. CDN bandwidth counts them.
- Cloudflare numbers are saved per UTC day, so they cannot show hours.
- A very busy site can have a day too large to read in full. Analytics then says the day may be undercounted.
- Analytics keeps 13 months.
Usage and your bill
The Plan usage numbers are the same ones Avaloi uses for overage. Visits and server bandwidth come from the server log, CDN bandwidth from the saved Cloudflare days, and disk from the server's disk reading. See Billing and plans.
Related
Still stuck?
Email [email protected] with your site name and what you tried, or send us a message.