Localhost and staging environments
Development traffic in production numbers is noise. BobRay filters the obvious cases automatically and gives you rules for the rest.
- Key takeaways
- localhost/127.0.0.1/*.local never count; preview wildcards are one-click exclusions.
- Hostname rules drop excluded traffic at ingestion, before it can count.
- Teams that want staging numbers give staging its own site ID.
Filtered automatically
localhost,127.0.0.1, and*.localhostnames never count.- The dashboard's own verification pings are excluded.
- Known cloud-preview wildcards can be one-click enabled as exclusions (e.g.
*.vercel.app,*.netlify.app,*.pages.dev).
Excluding your staging domain
Add a hostname rule under Settings → Exclusions, e.g. staging.example.com or wildcard *.staging.example.com. Rules apply at ingestion, excluded hits are dropped before they ever count.
Or give staging its own site
Teams that want to see staging behavior create a separate free-of-charge site for it on Growth/Scale, real dashboards, zero pollution of production. Same snippet, different data-site per environment via an env var.
Common pitfalls
The mistakes we see most often on this topic, so you can skip them entirely.
- Sharing one site ID across prod and staging 'temporarily'.
- Excluding by IP for a VPN'd team whose IPs rotate, prefer hostname rules.
- Testing on localhost and filing a 'no data' ticket.
Quick reference
| Auto-filtered | localhost, 127.0.0.1, *.local |
| Previews | *.vercel.app etc., toggle |
| Rule type | Hostname or IP |
| Alt approach | Separate staging site |
Did this solve it? If not, write to support with your site ID, a real person replies within one business day.