What this lets you do
Answer, precisely, what leaves your server when you install AI crawler tracking, and what Traceten holds afterwards. Crawl records are records of automated software requests. They are not visits by people, and nothing on this path touches your visitor analytics.What your server sends
One report per matched crawl, containing exactly these fields:
That is the whole payload. No cookies, no request bodies, no headers beyond the user agent, no visitor analytics, and nothing about the human traffic on the same server.
Where the query string is removed matters. The middleware sends the URL as your server saw it,
query string included; we strip it at our edge before the crawl is written anywhere or placed on
any internal queue. This is different from visitor events, where the browser snippet redacts the
values of personal-data parameters before anything leaves the browser and our edge applies the
same redaction again. If a crawled URL carries a token in its query string,
that token reaches our edge in memory. If that matters for your site, exclude the path with
extraDenyPathPrefixes.Why the user agent is stored raw
We keep the full claimed user-agent string, unmodified. It is the only record of what the client actually said about itself, and it is what makes a spoofing claim auditable rather than something you have to take our word for. Truncating or normalising it would destroy the evidence. Worth being explicit about the edge case: about half of tracked crawlers cannot be verified at all, so a small share of records in that bucket may not be crawlers. If something with an ordinary browser user agent is misidentified, the string we stored is a browser string. It is still tied to a machine request rather than a session or a person, it carries no visitor identifier, and it expires with the record after 90 days.What happens to the crawler’s IP address
The crawler connects to your server, not to ours, so its address is observable only there. We use it for one purpose: checking whether the crawler was who it claimed to be. We keep the raw address in exactly two cases:- It fell inside a range the vendor publishes for that specific crawler. That is infrastructure the vendor publishes as its own.
- Its reverse DNS forward-confirmed to the vendor’s own domain.
How long we keep it
The 90-day limit is enforced by the database itself rather than by a scheduled job, and it is not a plan feature: there is no tier that keeps individual crawl records for longer. Removal runs as part of the database’s background maintenance, so a record is deleted at 90 days or shortly after, never before.
Your long-term trend survives that expiry. The daily rollups are three separate tables of counts: one grouped by crawler, provider, category, verification state and response class, one grouped by page path, and one grouped by page path and crawler. They carry no address, no hash, and no personal identifiers, which is why they can be kept indefinitely. So a year from now you can still see that GPTBot crawled you 40,000 times last quarter; you cannot see the individual 40,000 requests.
Be aware of what the two page path rollups keep: the page paths themselves are retained indefinitely, as daily per-path counts (one of them also per crawler), after the individual crawl records containing them have expired. Query strings are already gone by then, and a path with no requester attached to it is not personal data, but it is site data about your URL structure and it does not age out.
Closing your account erases all three, for every site on the account.
One exception, so the sentence above is not read wider than it is: the metered usage counts behind your invoices (how many crawl hits were recorded in each billing period, and how many of those were billed as overage) are kept as billing records. They are counts, with no URLs, no paths and no crawler identifiers, and we are required to retain them for tax and accounting purposes. See Deleting your account.
If you go over your plan’s crawl allowance
What happens depends on whether your plan offers pay-as-you-go crawl overage. Your usage page shows which state you are in, and the API reports it ascrawl_allowance_state.
On a paid plan
Nothing is rejected and nothing is lost from your totals.- Your counts stay exact. Every crawl continues to be counted into the daily rollups, so every chart, total, category split and per-page number remains correct and complete.
- Verification is reduced. The reverse-DNS check, a live lookup we run per crawl to confirm a claimed crawler really is who it says, is skipped. Affected crawls settle on a lower verification level and are recorded at lower confidence.
- Per-crawl detail pauses. Individual crawl records stop being written for the rest of the period, so the recent-crawls feed and anything that reads a single request go quiet.
On the free Starter plan
Starter has no pay-as-you-go crawl overage, so there is no way to keep serving the volume and bill for it. Measurement pauses at the limit instead.- New crawl hits stop being recorded once the cap takes effect, for the rest of the billing period. The daily rollups stop advancing, so your totals stop rising. Enforcement is checked every few minutes, so a small number of hits just past the limit may still be counted, in your favour, and never billed.
- Everything captured before the limit stays available, and stays accurate. Nothing already measured is deleted or altered.
- Your allowance resets at the start of your next billing period, and recording resumes automatically.
Keeping full detail
Turning on AI crawl overage in Settings → Billing keeps everything above running at full fidelity past your allowance: the reverse-DNS check, the verification level and the per-crawl records. The excess hits are billed per hit. It is a separate switch from event overage; turning one on does not affect the other. See Plans and billing. On a paid plan, leaving it off costs nothing and loses no counts. It only costs detail.Data subject requests
Traceten’s per-visitor access and deletion API does not cover crawl records, and this is deliberate rather than a gap. See Data deletion for the reasoning and for what to do if you receive a request that you believe reaches crawl data.Next
- Verification levels
- Data collected: the full privacy picture, including the visitor path
- Install AI crawler tracking

