Use case · Documentation sites
Documentation analytics: find the pages that help and the ones that fail
Updated
Docs are both support and growth: a good quickstart converts developers, a missing page creates tickets. Docs teams need signals that point at specific pages — this one is read to the end, this one has people bouncing to search, this old URL is a 404 from a blog post.
VisitTrack measures active reading time and scroll depth for every page, records 404s, rage clicks and JavaScript errors automatically, shows Search Console queries per page, and reports AI crawler visits (GPTBot, ClaudeBot, PerplexityBot and others) separately from humans. Docs on a subdomain share visitors with the main site, so docs-to-signup journeys are visible.
The documentation metrics that matter
1.Engaged reading per page
Active time (visible tab only) and scroll depth per page in the Pages tab. A reference page read for 4 minutes is doing its job; a tutorial abandoned at 20% scroll isn't.
2.Failed searches
Searches that return nothing, sent as an event. The most direct list of content to write next.
3.404s and broken inbound links
page_not_foundfires on pages whose title contains "404" or "not found", or that carry<meta name="visitrack:404">. After a restructure, it shows which old URLs need redirects.4.Docs-to-signup and docs-to-activation
Which docs pages start journeys that end in a signup or an API key. For developer products, the quickstart is often the best landing page.
5.AI crawler reads and AI referrals
Which docs pages GPTBot, ClaudeBot and PerplexityBot fetch, and how many developers arrive from ChatGPT, Claude or Perplexity. Pair with an llms.txt.
Questions docs teams ask
- Which pages should we rewrite first?
- High-traffic pages with low scroll depth or short active time, especially if they're entry pages from search.
- What are people searching for and not finding?
- Count
docs_search_emptyevents to see how often it happens and on which pages. The dashboard counts events by name, so keep the full list of failed terms in your search backend's logs; the event's prop is handy for spot checks through the events API. - Do docs readers become users?
- Filter signups by entry page, or build a funnel from a docs page to
signup. - Is the copy button on code blocks working?
- Rage clicks are recorded automatically, with the element's label — a cluster on a code block means something isn't responding.
How to set up docs analytics with VisitTrack
Add the script to your docs framework
Any framework that lets you add a script to the head works — Docusaurus (
headTagsorscriptsin the config), VitePress (headin the config), Nextra (the Next.js layout — see the Next.js guide). Use the samedata-siteas the main site.<script defer data-site="SITE_ID" src="https://visitrack.app/tracker.js"></script>Mark your 404 page
If the 404 page's title doesn't say "404" or "not found", add the meta tag so misses are counted.
<meta name="visitrack:404" />Track failed searches
From your search component, send an event when a query returns no results.
if (results.length === 0) { window.visitrack?.("docs_search_empty", { q: query.slice(0, 80) }); }Connect Search Console and AI crawler tracking
Search Console in Pages & Search; AI crawler tracking needs a few lines in your server or edge config — see AI crawler tracking.
Count completed tutorials
Add
data-vt-scroll="tutorial_done"to the last section of each tutorial; it fires once when half visible.
Example: an API product's docs in one month
Docs on docs.example.com, ~30,000 monthly readers, same site id as the marketing site.
| Metric | Value | What it tells you |
|---|---|---|
| Docs visitors | 30,400 | 48% arrive from Google, 6% from AI assistants |
| Quickstart: median active time | 3 min 10 s | Starts 37% of docs-to-signup journeys |
| Webhooks guide: scroll depth | Median 22% | Readers leave at the signature verification step |
| docs_search_empty | 1,140 | Top missing topics: rate limits, pagination |
| page_not_found | 860 | Mostly links to the old /v1/ reference |
| AI crawler hits (not billed) | 96,000 | ClaudeBot and GPTBot fetch the API reference daily |
Illustrative numbers for a typical site of this kind, not real customer data.
The month's docs backlog writes itself: fix the webhooks guide where readers stall, write rate-limit and pagination pages, redirect the old /v1/ URLs. And since AI crawlers read the API reference daily, keeping it accurate is now an acquisition task as well as a support one.
VisitTrack vs docs-platform analytics and GA4
Third-party details as of October 2026; hosted docs platforms vary.
| VisitTrack | Hosted docs-platform analytics | GA4 | |
|---|---|---|---|
| Reading time / scroll depth | Automatic per page | Varies | Engagement time; 90% scroll by default |
| Failed in-docs searches | Custom event | Often built in for their search | Custom event |
| Docs-to-signup journeys | Yes, shared visitor id with the main site | Usually not | Yes, with cross-domain setup |
| AI crawler visits | Yes, with backend snippet | Rarely | No |
| Cookie banner in the EU | Not needed in cookieless mode | Platform-dependent | Typically required |
If your docs platform already reports search analytics, keep it for that. VisitTrack adds the cross-site view — docs to signup — plus AI crawler visibility. See the developers guide and VisitTrack vs Plausible.
What VisitTrack costs for a documentation site
Docs readers browse 3–5 pages per visit; AI crawler hits are never billed.
| Profile | Events / month | Plan | Price | Notes |
|---|---|---|---|---|
| Open-source project docs | ~20,000 | Up to 25k events/mo | $9/mo or $90/yr | ~5k readers |
| Developer product docs | ~130,000 | Up to 250k events/mo | $29/mo or $290/yr | ~30k readers |
| Large API platform | ~1,500,000 | Up to 2.5M events/mo | $89/mo or $890/yr | Docs, reference and changelog |
Every feature is on every plan; the price only follows monthly events (pageviews, custom events and payments, counted across all your sites). Bot and AI-crawler hits and session replays are never billed. Yearly billing is ten months' price for twelve, every plan starts with a 14-day free trial with no card, and there's a one-time lifetime deal from $59.
Frequently asked questions
What should I measure on a documentation site?
Engaged reading (active time and scroll depth) per page, failed searches, 404s, docs-to-signup journeys and AI crawler activity. Pageviews alone don't show whether docs help.
How do I add VisitTrack to Docusaurus or VitePress?
Add the script tag through the framework's head configuration (headTags or scripts in Docusaurus, head in VitePress), using the same site id as your main site.
Can I track docs on a subdomain together with the main site?
Yes. Use the same site id on both; subdomains share one visitor id through the root-domain cookie in standard mode, and the Hostname breakdown separates them.
How do I see which docs pages AI tools read?
Install the AI crawler tracking snippet on your server or edge. Crawlers such as GPTBot, ClaudeBot and PerplexityBot are verified by reverse DNS and reported separately — never billed.
Does VisitTrack track 404 pages automatically?
Yes. A page_not_found event fires when the page title contains "404" or "not found", or when the page has a visitrack:404 meta tag.
Related
See which channels actually bring paying customers
VisitTrack is cookie-free analytics with revenue attribution built in. One script tag, no consent banner, live in two minutes. 14 days free, no card required.