FAQ
Installation
Section titled “Installation”Do I need a cookie banner?
Section titled “Do I need a cookie banner?”The default tracker stores nothing on the device and reads nothing it did not put there, which is outside what the ePrivacy consent rule regulates. That is the basis on which cookieless analytics is commonly run without a banner — but it is not a determination about your site, and GDPR obligations do not disappear with the cookie. Read Cookieless & GDPR and take your own advice.
Why does nothing appear when I test locally?
Section titled “Why does nothing appear when I test locally?”The tracker refuses to send from localhost, 127.0.0.1, [::1] and file:
URLs. Set localStorage.tracing_debug = "1" and reload.
→ Opt-out & debugging
Does it work with my framework’s router?
Section titled “Does it work with my framework’s router?”Yes, for anything that navigates through the History API — Next.js, React
Router, Vue Router, SvelteKit, Astro View Transitions. Hash routers need
data-hash="true". → Pageviews & SPAs
Will ad blockers block it?
Section titled “Will ad blockers block it?”Some filter lists block third-party analytics hostnames. Proxy the collector behind your own domain and the request becomes first-party.
How big is the script?
Section titled “How big is the script?”About 5 KB, served with an ETag and max-age=3600. It loads one more request
— the identity probe — and posts one per hit.
Numbers
Section titled “Numbers”Why are my visitor counts higher than in Google Analytics?
Section titled “Why are my visitor counts higher than in Google Analytics?”Because a visitor id rotates at midnight UTC, so somebody who visits on three days is three visitors over a 30-day range. Read the number as browser-days. → How visitors are counted
Why is retention zero after D1?
Section titled “Why is retention zero after D1?”Same reason. In Visitors mode it is zero by construction. Use
tracing.identify() and switch Retention to
Identified users.
Why doesn’t my funnel work across days?
Section titled “Why doesn’t my funnel work across days?”A step taken tomorrow belongs to a different visitor id. “Same day” is the widest window a cookieless funnel can honestly offer. → Funnels
Why is bounce rate high on a page where people convert?
Section titled “Why is bounce rate high on a page where people convert?”A bounce is a visit with one or fewer pageviews. Events do not clear it. Use the Converted chip on Sessions to separate the two.
Why do totals not match between two screens?
Section titled “Why do totals not match between two screens?”Check the range, the filters and, on Revenue, the currency. → Filters
Why is a visit split in two around midnight?
Section titled “Why is a visit split in two around midnight?”The visitor id rotates at midnight UTC, independently of the site timezone. A visit spanning it becomes two visits by two visitors.
My whole office shows as one visitor
Section titled “My whole office shows as one visitor”The hash includes the IP address, so a shared NAT with identical browsers collapses. Nothing can be done about it without an identifier on the device.
Do you store IP addresses?
Section titled “Do you store IP addresses?”No. The IP is an input to the visitor hash and the geo lookup, and is discarded. → What is stored
How accurate is the city?
Section titled “How accurate is the city?”Country is reliable; city frequently is not. Mobile carriers, corporate VPNs and privacy relays routinely place a visitor somewhere else. → Geo
Can I import historical data?
Section titled “Can I import historical data?”There is no import endpoint. The collector accepts hits at POST /e and
POST /api/send — the umami-compatible alias — so a bulk load is possible by
posting hits, but nothing supports it officially and the visitor hash would be
computed from your request rather than the original visitor’s.
Can I delete one visitor’s data?
Section titled “Can I delete one visitor’s data?”Not from the UI. You can reset a whole site, or ask the operator for a per-visitor erasure. → Data retention
How long is data kept?
Section titled “How long is data kept?”30 days on Hobby, 2 years on Pro, 5 years on Business. No automatic deletion job ships today — see the caveat on Data retention.
Revenue
Section titled “Revenue”Why is my revenue zero when my store shows sales?
Section titled “Why is my revenue zero when my store shows sales?”No revenue event has arrived. The script has to run on the page that completes
the purchase, and the call has to carry a numeric revenue. Work through
Troubleshooting revenue.
Why is a sale credited to Direct when the customer came from an ad?
Section titled “Why is a sale credited to Direct when the customer came from an ad?”Revenue belongs to the visit it fired in. If the ad click was on Monday and the purchase in a fresh visit on Friday, Friday’s visit had no referrer. → How attribution works
Do I need to connect a payment processor?
Section titled “Do I need to connect a payment processor?”No. Revenue is an event your page sends, in either of two forms. → Tracking revenue
Why is my revenue in dollars when I sell in euros?
Section titled “Why is my revenue in dollars when I sell in euros?”currency defaults to USD when it is left out. Pass the currency on every
call. → Troubleshooting revenue
Account
Section titled “Account”Which screens need a paid plan?
Section titled “Which screens need a paid plan?”Events, Performance, Revenue, Goals, Funnels and Retention, plus the REST API. They unlock together on Pro. Collection is never gated: the tracker records custom events, Core Web Vitals and revenue on Hobby too, so upgrading shows the history rather than starting it. → Plans & limits
What happens if I go over my plan’s events?
Section titled “What happens if I go over my plan’s events?”Pro and Business meter it at $2 and $1 per additional 100k. Hobby has no overage rate. → Usage & overage
Can I have one key per site?
Section titled “Can I have one key per site?”No. API keys are account-wide. Issue one key per consumer so you can revoke them independently. → Authentication
Is there a rate limit on the API?
Section titled “Is there a rate limit on the API?”None is published or enforced. These endpoints run real aggregate queries; cache on your side and do not poll tightly. → Errors & limits
Can I self-host?
Section titled “Can I self-host?”Not currently. tracing.tools is a hosted service. Your data is yours to take out at any time through the HTTP API and the CSV export.
How do I share a dashboard without giving someone an account?
Section titled “How do I share a dashboard without giving someone an account?”Publish a read-only public dashboard. Treat the URL as the credential.