Geo analytics
Country charts stopped being useful years ago
Knowing that 40% of your traffic is “United States” tells you nothing you can act on. This is the layer underneath: the region and city, the accuracy radius of that answer, the network the visitor came from, whether that network is a data centre, and what hour it was where the visitor was standing.
Five breakdowns that country charts cannot give you
Regions come with the ISO subdivision code and the GeoNames identifier, so “Bavaria” and “Bayern” are the same row rather than two. Cities carry coordinates and an accuracy radius, which is what makes a map honest: a point with a twenty-kilometre radius is a range of addresses, not a person, and the interface says so.
Networks list the autonomous system number, the provider name, the proxy type of that range and — crucially — human clicks separately from total clicks. That single column answers the question every media buyer eventually asks: which provider is sending me traffic that never converts.
Traffic quality splits visits by visitor type, by proxy type and by quality score band. And activity by local hour is computed in the visitor’s own time zone at the moment of the click, because a storage engine can only convert to one fixed time zone and every row here has a different one.
- Regions with subdivision codes and GeoNames identifiers
- Cities with coordinates and an accuracy radius
- Networks with autonomous system, provider and proxy type
- Visitor type, proxy type and quality score bands
- Activity by the visitor’s local hour, not by yours
Place names in the reader’s language, not the writer’s
A click event stores an identifier, never a localised name. The name is resolved when the report is read, from the dictionary of the language the reader is using — which is why the same click reads as “Berlin” for one colleague and “Берлин” for another, from one stored row.
Names are available in eight languages out of the ten the dashboard speaks; the remaining two fall back to English rather than to an empty cell. The dictionaries are megabytes and live server-side: nothing of the sort is shipped to a browser, and the locale is taken from the reader’s own setting rather than from a request parameter — a parameter would let one person poison the shared cache of a workspace with someone else’s language.
What the data is, and what it is not
Geo answers come from licensed commercial databases packed into a format built for the edge, with a documented fallback: if the pack is unavailable the resolver degrades to the network-level data the CDN already provides and marks the result as approximate. Every row records which source answered it, so a chart never mixes precise and approximate data silently.
The visitor’s address is never stored. It exists inside a single function long enough to produce a daily fingerprint — a salted hash rotated every night — and to look up the address range; it does not reach the event. Postal codes are resolved but deliberately not recorded: in dense housing a postal code is close to an address.
Place data is credited where credit is due: city and region names come from the GeoNames database, used under CC BY 4.0, and the attribution is published on the site rather than buried in a contract.
Detail is a setting, not a fixed price
Every workspace decides how much of this to keep. Full detail stores coordinates and time zone; “city without coordinates” keeps the market and drops the point on the map; “country only” keeps the continent and country and nothing else — and at that level the geo database is not even queried for the event.
This is a setting about writing, not about reading. What a privacy mode turns off is never written down, so no report, no export and no future query can bring it back. Retention works the same way: each event carries its own retention, and the storage engine deletes the row when it expires.
Frequently asked questions
How accurate is city-level data?
Accurate enough to compare markets, not accurate enough to find a person — and the interface shows the accuracy radius so you can tell the difference. A typical city record carries a radius of tens of kilometres. The coordinates describe an address range, not a visitor.
Do you store visitors’ IP addresses?
No. The address is used in memory to compute a daily salted fingerprint and to look up the address range, then discarded. The fingerprint cannot be reversed, and the salt is rotated every night, so the same visitor is not traceable across days.
What happens if the geo database is unavailable?
Redirects keep working and analytics keeps recording. The resolver falls back to the network-level data the CDN provides and marks the row with that source, so charts stay populated and you can see which rows were approximate.
Can I turn this off for privacy reasons?
Yes, per workspace, and it takes effect at write time rather than at read time. Choose city without coordinates, country only, or the strict preset that also drops the network, the full referring address and traffic-type detection. Existing links pick up the change within seconds, not at the next cache expiry.
Launch your branded link shortener
Connect a domain, publish your prices and invite your first customer — most partners go live in an evening.
No card required for the trial.