Third-party data and licences
Last updated: August 14, 2026
Traceten includes a small number of open datasets in the product. Their licences require attribution, and this page is that attribution. It covers data we compile into the service, not the software libraries we depend on.
Datasets
| Dataset | What we use it for | Licence |
|---|---|---|
| GeoNames | Coordinates for country and city names, so dashboard maps have a point to draw. Modified (see below). | CC BY 4.0 |
| Natural Earth (via world-atlas) | The country outlines the dashboard's world map is drawn from. Sent to your browser as part of the page. | ISC |
| DiceBear (Notionists) | The illustrated faces on the live visitor globe. Rendered once by us into a single image file shipped with the dashboard. No avatar service is ever contacted, and nothing about a visitor leaves Traceten to draw one. The faces are decorative and assigned at random; they are not depictions of anyone. | CC0 1.0 |
| Mapbox | The globe's map imagery, and the lookup that places a city's marker on a public park or square. The only entry on this page that involves contacting an outside service (see below for exactly what is sent). | Mapbox Terms of Service |
GeoNames
Map coordinates in Traceten come from GeoNames, licensed under CC BY 4.0. We build two lookup tables from it, and we modify its data to do so.
The city table starts from the GeoNames list of cities above 15,000 people. We keep only the coordinates, round them to two decimal places, re-key each entry by a simplified form of the city name so that spellings match whatever a visitor's browser request resolved to, add the English names GeoNames publishes separately, and where two cities in one country reduce to the same name we keep the larger. The country table is not a GeoNames list at all: GeoNames does not publish one, so we compute a single point per country ourselves, as the population-weighted centre of that country's populated places. It covers the 246 countries that have one; the rest have no point and are handled below.
Modification notice. As set out above, the GeoNames data in Traceten is modified: filtered, re-keyed, rounded, deduplicated, and in the case of the country table used to compute values GeoNames does not publish. GeoNames does not endorse Traceten or this use of its data. CC BY 4.0 requires us to say so, and the derived tables remain available under that licence.
This matters for privacy as well as licensing, so here is exactly how it works. Traceten derives a visitor's country and city from their IP address at our edge, and stores nothing finer than the city. When a map needs a point to draw, it looks the city name up in the GeoNames list at the moment the map is rendered. Every visitor in a city resolves to the same point, and that point is the city's own rather than the visitor's.
We never write a coordinate to your analytics data. We do hold the finished map in a response cache so the page does not re-run the query on every load: up to 60 seconds for the live visitor globe and the visitor map, and up to 5 minutes for the country map. Those cached responses hold what the map draws: city and country centre points, the landmark points described below, and for the country map also the per-country visitor and session counts, attributed revenue, and the most-read page URL. They expire on their own, and nothing from them is added to your stored data.
A visitor whose city we cannot place is drawn at their country's point, and one whose country we cannot place is not drawn on the map at all. They are counted separately as "Unknown" rather than being put somewhere plausible.
The lists are downloaded once, by us, and compiled into our software. No request of any kind is ever sent to GeoNames.
One map does contact an outside service, and this paragraph replaces an earlier sentence that said none did. The live visitor globe is drawn with Mapbox, so two kinds of request leave us for it. Neither carries anything about a visitor.
- Map imagery. While the globe is open, the browser of whoever is signed in to your Traceten dashboard loads map tiles from Mapbox. Mapbox receives that person's IP address and the part of the world on screen, in the same way it would on any site with a map. No visitor data is in those requests.
- Landmark lookup. To draw a city's marker on a public park or square rather than on the city's bare centre point, our servers ask Mapbox what public places sit near that centre point. The request carries that centre coordinate and nothing about any visitor: no visitor identifier, no city name, no counts, and nothing identifying your site. It does say who is asking. It goes out from our servers under Traceten's own Mapbox account and a Traceten user agent, so Mapbox knows Traceten asked. What Mapbox cannot tell is which of our customers the question was for, which is why the request carries nothing that would say whose.
What we do with Mapbox's reply. Mapbox sends back the name of a public place and its coordinate, and we draw the marker there. Those two values are part of the map, so they live wherever the map does: in the response cache described above, for up to 15 seconds on the live globe. Our servers also keep the most recent 5,000 cities' landmarks in memory while the server is running, so we ask about a city once rather than on every page load. Both hold a public place and a public coordinate, and neither is written to your analytics data.
The 2D country map contacts nobody. It is drawn entirely from the outlines and coordinate lists compiled into our software.
Two endpoints in Traceten suppress a city name. We name both rather than describe a category, because a category is the kind of claim that goes quietly wrong.
The /v1/breakdowns/cities API endpoint leaves a city out of the response when fewer than five sessions came from it in your window. That threshold counts sessions, not people, so five sessions can be one person visiting five times. It stops a city being named off the back of a handful of visits; it is not a guarantee that any named city contains five different people.
/v1/geo/points applies that same five-session threshold. No product surface reads it and no API key can call it, so you are unlikely to meet it, but it suppresses and so it belongs on this list rather than in a footnote.
Everywhere else that returns a city returns it with no threshold at all, including the live visitor globe (/v1/geo/live), which applies no visitor threshold: every city with at least one visitor active in the window is named. Also unfloored: the session list and an individual session's detail, in the dashboard and over the API alike; the visitor list and an individual visitor's detail (/v1/visitors and /v1/visitors/{handle}) and the lists of visitors behind one funnel step or one goal (/v1/funnels/{id}/steps/{position}/visitors and /v1/goals/{name}/visitors), all four of which return the city of a visitor's first visit, and the first of which is what the Visitors table in the dashboard shows; the city and region breakdowns; and the data returned by an access request. Our full reasoning on city-level location is in the Privacy Policy and, in more detail, in the GDPR documentation.
Natural Earth country outlines
The world map in the dashboard is drawn from Natural Earth's country outlines, packaged as world-atlas. Natural Earth's own data is in the public domain and carries no conditions. The package that delivers it is licensed ISC, which requires its permission notice to travel with copies of the file. That file is sent to your browser when the map loads, so the notice is reproduced here in full.
This is shape data only. It describes where countries are on a map and contains nothing about any visitor. We use each country's two-letter code to pick an outline, so no coordinate is involved in shading the map.
Copyright 2013-2019 Michael Bostock
Permission to use, copy, modify, and/or distribute this software for any purpose
with or without fee is hereby granted, provided that the above copyright notice
and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
THIS SOFTWARE.How this page is maintained
A dataset is listed here from the moment its data is part of our software, which is when the licence's attribution condition applies. That can be slightly before the feature using it is visible to you: the GeoNames tables above are in the product now, while the maps that draw from them are still being built. We would rather this page ran ahead of the product than behind it.
Corrections
If you believe a dataset is used here without the attribution its licence requires, email legal@traceten.com and we will correct it.