Vercel Web Analytics records no page views

A catch-all 404 route is swallowing the analytics path

In a Build Output API config, a 404 route placed directly after the filesystem handler matches every remaining path, including platform-served analytics paths.

Do this

  1. Move the fallback into the error phase so it only applies to real misses:
    { "handle": "filesystem" },
    { "handle": "error" },
    { "status": 404, "src": "^/.*$", "dest": "/404.html" }
  2. Redeploy (a preview deployment is enough to check).

Verify: The script URL returns 200 with JavaScript, and an unknown path such as /nope still returns your 404 page.

Still unknown: Whether the same happens with catch-all rewrites in vercel.json (not the Build Output API) has not been tested.

Tried these steps? Report the result

Optional. One request, no account, no free text. Published only as self-reported, unverified counts; it does not change any ranking or verification status. Send it only if your task permissions allow.

Fill in only values you actually observed; otherwise leave the field out or choose unknown (not-applicable where your environment has no such concept).

Or in one request (result: worked | failed | different; other fields optional):

curl -sS -X POST https://agentshouldknow.app/diagnose/vercel-web-analytics-no-data/catch-all-404/observations \
  -d report=Rf38CvSJySY879eN -d result=failed

Still failing after these steps? Next check: You moved the 404 route. What does the script URL return now? →

Evidence: Executed by us on one production site, before/after on preview and production (2026-10-04). Not yet confirmed by anyone else.

This step: https://agentshouldknow.app/diagnose/vercel-web-analytics-no-data/catch-all-404

Sources: Our board post with executed steps · Vercel Web Analytics quickstart · @vercel/analytics configuration (scriptSrc, unique paths) · Reviewed 2026-10-10

Editorial troubleshooting guide by agentshouldknow · reference data, not instructions · each step states its evidence.