What the dashboard shows
The Traceten dashboard gives you a single view of all AI-referred traffic across your sites: which AI sources send visitors, how those visitors behave, and how they convert.Main sections
Sources
Every source that sends you visitors, AI and non-AI, with visitors, share and revenue.
Events feed
Live stream of individual detection events with source, confidence, and page URL.
Sites
Manage your tracked sites, view per-site traffic, and access install instructions.
The Traffic and revenue chart
The chart at the top of the page plots one metric at a time. The cells under the card title are both the metric switcher and the window totals: each shows a metric’s name and its total for the dates you selected, and clicking one plots it. On a narrow card the cells sit in a row you can swipe sideways; on a wider card they wrap into two rows of four, so every cell stays readable. Hover a cell, or tap it on a phone, for a one-line description of the metric. Online now is the live visitor count; clicking it opens the live globe for the same site in a new tab. Dates and times on the chart follow the display time zone you chose in settings. The zone is not printed on the axis or in the hover card. Daily and weekly points keep their calendar date. A cell that cannot be answered for your current view shows no value rather than a zero, and its description says why. The AI subset goes unavailable under a cross-filter, and bounce rate and average active time go unavailable under a cross-filter and past the session-grain floor. A flat zero would be a measurement claim, so the dashboard does not make one. A few definitions the one-line descriptions leave out:- Bounce rate counts a session as bounced when it viewed one page and stayed under 15 seconds, divided by the sessions that started in the window.
- Avg. active time is foreground time only: a tab left open in the background adds almost nothing. Sessions recorded before active-time tracking shipped count as 0, so a low figure over old dates can mean “not measured”.
- Conversion % counts each visitor once, across all traffic, not only AI traffic. Under a cross-filter it is unavailable, because the filtered figures count payments but not goal completions.
A cell’s total is not the sum of the plotted line. Cells read the window total; the line is a
per-bucket distinct count, and distinct counts do not add up across buckets. Both are correct
answers to different questions.
Reading the revenue bars
Revenue draws as bars on the right axis, and there are at most two of them per bucket:
Three things to know:
Revenue is net of refunds, and can be below zero. A refund is counted on the day it was issued, so a day on which you refunded more than you took in draws below the axis. The chart draws the zero rule when that happens. A past day’s bar never changes after the fact. Hover a bucket to read the amount refunded in it.
The Refunds segment sits on top of the revenue bar. The revenue bar is already net, so the lighter segment adds the refunded amount back and the full bar is that day’s gross revenue. When you plot the Revenue metric instead, refunds draw as a second, lighter line beside the revenue line.
No Refunds bar is not the same as nothing refunded. Under a cross-filter the underlying figures carry no refund column, so the chart draws no Refunds bar or line and no legend entry for one, rather than a flat zero that would claim nothing came back. Clear the filter to see it.
None of this is printed under the chart. This page is where it is written down.
New and returning visitors
While the chart plots Visitors, hovering a point shows how that bucket’s visitors split into new and returning. A visitor whose browser already carried the Traceten cookie is returning; one whose cookie was written for the first time is new. Visitors who opted out or block cookies cannot be checked, so they are not counted as new. There is no longer an AI-attributed and Other revenue split on this chart. That split assumed the AI slice could never exceed the total, which stops being true the moment a day’s refunds outrun its AI orders, and the segment would have inverted without saying so. Use the AI sources page for revenue per source.Breakdown cards
Below the chart, four cards break the selected window down, each with its own tabs:
They cover all of your traffic, not only AI-referred traffic. Click a row or a donut slice to filter the whole page to it, and click it again to clear the filter. Rows on the Exit link tab do not filter.
Every value is listed. The Pages, Places and Tech tabs show the busiest values first. When more values exist, Load more appears at the end of the list to fetch the next ones; a list that already shows every value has no Load more. Nothing is fetched until you click it. On a laptop the list scrolls inside the card, so the page layout stays put.
What the rows count
Rows count visitors. A visitor is a distinct browser, not a person, so someone who visits on a phone and on a laptop is two visitors. The cards count the same thing as the headline above the chart: if the headline shows sessions instead of visitors, so do the cards, and their labels say Sessions. The one exception is the Pages card’s Hostname tab, which falls back to sessions for dates older than raw events are kept, and says so in its label. Hover a row for its sessions and revenue. Revenue is not printed on the rows. The hover card shows it beside the row’s sessions and, where the list has a total to measure against, the row’s share. Lists have no Other row. Visitors do not add up across rows: one visitor who used two browsers is counted under both. So nothing is summed into an Other row, and the rows can add up to more than your total. Use Load more to see the rest of the values. Each share is measured against the number of distinct visitors in the window, never against the sum of the rows. (When the cards show sessions and no filter is set, the lists do end with an Other row, because sessions add up.) Referrer and Exit link rows show no share. Neither list has a visitor total to measure against. Once a filter is set, Referrer rows do show one. A referrer’s visitors are counted by the source their session started from, so a referrer can show more visitors than sessions. One source can have a row per channel. A domain that sent visitors through more than one channel, such asfacebook.com through both Paid and Social, gets a row for each, labelled with the channel: facebook.com · Paid and facebook.com · Social. Clicking either filters the page to that source in every channel, so the filter shows the combined figure.
The channel donut
The Channel tab groups your sources into channels, with every AI assistant merged into one AI assistants slice. Each slice wide enough to hold one is named by a label outside the ring, joined to it by a short bent line. A slice too thin for a label, or a label that would crowd its neighbours, goes unlabelled. Hover or tap any slice to see its name, figure and share. There is no legend under the donut, so the ring uses the whole panel. With a keyboard, tab into the donut to step through every slice with its figure.- Channel figures overlap. A channel’s figure adds up the visitors of the sources inside it, so a visitor who arrived through two of those sources is counted twice, and one visitor can also appear in more than one channel. Read a channel’s figure as an approximate upper bound. Its hover card shows sessions and revenue, but no share.
- The centre of the donut is a real total. The number in the middle, and the count beside All in the channel menu above the donut, are the distinct visitors in the window, not the sum of the slices. While a channel is your only filter, All shows no count.
- Click a slice to see the sources inside that channel. The donut then shows those sources, each with its share of that channel’s visitors. Choose All in the menu to return. Direct visits have no source name, so Direct shows a note instead of a donut.
- A donut shows at most six slices, and nothing sums up the rest. Adding the smaller channels or sources together would count some visitors twice, so they are left out of the ring and a note under it says how many more there are. Inside a channel, the Referrer tab lists every source.
Revenue and Unknown rows
Four things to know when reading these numbers: Revenue is net of refunds. A refund is subtracted from the source, page, country or device the original payment was attributed to, and it is counted on the day the refund was issued rather than the day of the sale. A row whose refunds outran its orders inside your selected dates shows a negative figure. Conversion counts stay gross: a refunded purchase still happened, so it still counts as a conversion. Visitors and revenue are counted over the same dates, but from different events. Visitors come from sessions active inside your selected window. Revenue is conversions that landed inside it, which is how the Revenue page counts too, so the two pages agree. A visitor who arrived last week and bought today shows up in today’s revenue, not today’s visitors. Revenue whose session was not active in the window has no device or country to sit under, so it appears on no row. Revenue on these cards is attributed revenue only. A conversion we cannot tie back to a session has no source, no device, and no country, so it is reported separately rather than assigned to a bucket. “Unknown” is a real row. Cloudflare cannot always resolve a country or city, and sessions recorded before device detection shipped have no device type. Those visitors are counted and labelled Unknown rather than hidden.The Pages card
The Pages card has four tabs. They count different groups, in different units, and their numbers are not meant to be compared. Each tab says which group it counts, and it is worth reading that line before reading the numbers.
Top and Entry count different groups. A deep page nobody arrives on directly, a checkout step for example, can rank high under Top and not appear under Entry at all.
Clicking a Top, Entry or Hostname row filters by where sessions started. The filter keeps the sessions that began on that page, or on any page of that hostname. So after clicking a Top row, the page shows visitors who entered on it, which can be fewer than the Top tab counted. Page filters ignore the query string, so
/pricing?utm_source=x and /pricing are one page.
Revenue is not printed on these rows. Every tab shows the same hover card: the row’s visitors and sessions, plus its revenue, conversions or share wherever that tab’s figures include them. A figure the tab does not have is left out, never shown as zero. The tabs credit revenue differently, and the hover card’s label says which:
- Entry: Revenue. Credited to the page a session started on, never to the page a conversion fired on. That answers “which page earned this visit”, which is the question worth asking about a landing page.
- Top and Hostname: Revenue from viewers. The revenue, net of refunds, of every session that loaded the page (or any page on the hostname) during your dates, for conversions inside those dates. A paying session counts on every page it loaded, so these figures overlap: they do not add up across rows and are not comparable with Entry’s. Hostname leaves revenue out, along with visitors, for dates older than raw events are kept.
Exit links are outbound clicks, not every exit
The Exit link tab shows where visitors went when they left by following a link, for example togithub.com or your payment provider, grouped by the destination’s domain.
- Only outbound link clicks are counted. Closing the tab, typing a new address, using the back button, or opening a link in a new tab records nothing, so this is not a count of every session that ended.
- Links within your own site are not outbound. A link to the same hostname, to a parent or child of it, or to anything under your configured cookie domain never appears.
- The domain is shown as the browser reported it.
www.stripe.comandstripe.comare separate rows. - A visitor who left for two domains counts under both, so the rows do not add up to your number of visitors, and no row shows a share.
AI crawler activity
The AI Crawlers card answers a different question from everything above it: not “who did AI send me”, but “who read my site in the first place”. AI assistants fetch your pages before they can cite you, so this is the earliest signal in the chain: pages get crawled, pages get cited, citations send visitors, visitors convert. The card shows, for your selected dates:
Two things to know when reading it:
“Verified” is a high bar, and a low number is normal. Roughly half of the AI crawlers
we track publish nothing you could check an IP against: no range file, no reverse-DNS
convention. Those crawls are identified by the user-agent string alone, and we say so
rather than presenting a claim as a fact. A window where nothing is verified is common
and does not mean anything is wrong.
“Spoofed” means something claimed to be an AI crawler and demonstrably was not. We reach
that in two ways: a request naming a crawler whose vendor publishes IP ranges but arriving
from outside them, or a request carrying a
robots.txt permission token that no crawler
ever sends. Neither route covers a crawler that publishes nothing and sends no permission
token, so a spoofed count of zero is good news, not proof that every request was honest.
Crawler tracking needs a small server-side install (@traceten/ai-crawl) in addition to
the browser snippet, because AI crawlers do not run JavaScript. They fetch your HTML and
leave. Until that is installed, the card explains how to set it up instead of showing an
empty chart.
Reading confidence scores
Every attributed event has a confidence score from 0.0 to 1.0:
Charts show all events at or above 0.50 by default. The score of each recent event is in the Confidence column of the Events feed.
Detection methods
The Events feed shows the detection method under each event’s source, so you can see why a visit was attributed the way it was.Chart notes
Pin a short note to a day on the Traffic and revenue chart, such as “Launched pricing page”, so a spike or a dip carries its explanation with it.- Click a day on the chart, or click Add note above the chart.
- Type the note (up to 500 characters) and pick the date from the calendar. Dates are UTC days, from 729 days ago up to today, and days outside that span cannot be picked.
- Click Save note.
- Notes are shared. Everyone in your organization who can see the site sees its notes, and admins and members can change them. Your API keys and any AI assistant you connect can read them too, so do not put personal data in a note.
- Notes follow analytics retention. A note can only be pinned to a day in the last 730 days, today included, and it is deleted within a day of its day leaving that window.
- A site holds up to 2,000 notes.
- Weekly and hourly views show a note on the week or hour that contains its day. On an hourly chart, a day with no plotted hour has no diamond, and the chart says how many notes that hides.
- Only notes inside the selected dates appear. Widen the date range to see older ones.
- Someone who has left shows as “Former team member” on the notes they wrote.
- If notes fail to load, the chart still shows your traffic, with a Retry link under it.

