fivebar

Error pages

Copy page
View Markdown
Open with
Connect MCP
Claude Mistral Vibe Cursor VS Code

Pages answered with an error are counted on the Errors page, and kept out of every other figure.

The Errors page shows which addresses fail, how often, and where their visitors came from, which is where broken links show up. Chrome, Edge and Firefox report errors by themselves. Safari needs one attribute on your error pages’ tag, usually a single change to the template they share.

What counts as an error

A page load answered with an HTTP status of 400 or more: 404 Not Found, 410 Gone, 500 Internal Server Error and the rest. A redirect, or any other status under 400, is an ordinary page. Pages counted before 23 September 2026 aren’t marked as errors, and show as they always did.

Errors are left out of everything else: pageviews, visits, visitors, sources, speed, engagement and goals. A visit that started on an error page is left out whole, with its visitor and its goals. A visit that only passed through one keeps its other pages.

Safari needs data-status

Chrome and Edge 109 and later, and Firefox 129 and later, tell the script the status of the page they loaded. Safari doesn’t, so give the tag on your error pages a data-status attribute with the status the page is served with:

<script async data-domain="example.com" data-status="404" src="https://fiveb.ar/js/tally.js"></script>

Most sites have a template for each error, or one for all of them with the status to hand, so it’s one change: data-status="{{ status }}", or however your templates write it. Ordinary pages need nothing.

Without it, a Safari visitor’s 404 counts as an ordinary page and turns up among your top pages. Where the browser and data-status both give a status, data-status wins. Only a whole number from 100 to 599 is read.

API and MCP

The API reads them as the errors pane, one status alone with status=404, and the client or server errors with status=4xx or status=5xx. An app connected over MCP reads them too, and its whats_new tool flags new ones.

Turning them off

data-http-errors="off" on the tag stops the script sending the status of the page, so error pages count as ordinary pages and Safari’s data-status is ignored.

<script async data-domain="example.com" data-http-errors="off" src="https://fiveb.ar/js/tally.js"></script>

Single-page apps

Only a page the browser loaded has a status. A page a single-page app moves to has none, so a not found page the app draws is counted as an ordinary page.