Browser errors, without the extensions.
A public page runs a great deal its operator did not write, and all of it throws into the same handler. Bugtail can tell your code from everything else, and counts what it refused so the silence is never a mystery.
An allowlist of your own script hosts
Name the hosts your own scripts are served from and an event whose stack points somewhere else is refused. That removes the largest single source of noise in browser error tracking: password managers, translation extensions, ad blockers and injected analytics, all throwing inside your page and all arriving as your problem.
It only ever judges browser-shaped events. A PHP frame is a bare path with no host, so a server error is never caught by this, and refusing one would be an outage rather than a filter.
Refusals are counted
Per host, per day, on the collector screen. An allowlist that drops in silence is indistinguishable from an application that stopped throwing.
Empty means off
No hosts configured is the filter switched off, not "allow nothing". An upgrade never starts discarding events.
Filtered before sampled
Filtering decides whether an event is yours, sampling decides how much of yours to keep. The other order spends your sample on somebody elses noise.
Source maps, and the two cases of "no host"
Upload the maps your build produced and a minified trace is shown as the code you wrote, with the original file, line and column.
One subtlety worth knowing because it bites other tools: a stack with no host in it is two completely different situations. A stack naming no file at all is the browser refusing to identify a cross-origin script (the famous Script error), which is unattributable and is dropped. A stack naming files under a scheme with no host, such as the app:/// paths that bundler plugins and frame rewriters emit, is your own code and is kept. Collapsing the two would silently discard every event from any application whose SDK rewrites frame paths.
Sent at pagehide, in one request
Our own batch endpoint exists because a browser leaving a page can only fire a beacon: it cannot be awaited, it reports no error, and nothing orders several of them. So errors, logs and measurements go in one request rather than four, within the size a beacon allows.
Questions people actually ask
Which SDK do I use in the browser?
sentry-javascript, unchanged, pointed at your Bugtail DSN. Or post to our batch endpoint directly if you would rather not ship an SDK at all.
Will the allowlist hide real errors?
It can, which is why every refusal is counted per host on the collector screen. If a host you meant to allow shows up there, you will see it rather than wonder why the graph went quiet.
Fourteen days of Team, without a card.
Sign up with your work address, prove your domain with one DNS record, and paste a DSN. The first stack trace usually arrives before the coffee does.
No card. The trial ends by itself and drops to Free; nothing is charged unless you choose a plan.