What it is
A browser check is an ordered list of steps from a closed, seven-action vocabulary: goto (navigate), click, fill, waitForSelector, assertText, assertVisible, and screenshot. Each step is a plain configuration row -- a selector, a value -- interpreted by the runner, never executed as code. There is no scripting escape hatch: no page.evaluate(), no arbitrary network calls from inside the page, no conditionals or loops. A flow that needs real scripting (retry a flaky click, branch on an A/B test variant) is outside what a browser check can express in v1.
The check is up if every step runs and every assertion passes, in order. The first step that fails ends the run there and names itself in the down reason, the same "first failure names itself" rule multistep checks already use.
What you get back
A screenshot of the page as it looked at the end of the run is kept for every run. If a run fails, a full trace (DOM snapshots, network log, per-step screenshots) is kept as well, so a failed login step shows you the page it actually landed on, not just the word "failed." Screenshots are kept 14 days; failure traces 30 days.
Where and how often it runs
Browser checks run from a single region (iad) in v1 -- not the four-region picker every other check type offers. A real browser is materially heavier to run than an HTTP request, so the interval floor is 5 minutes rather than the faster ladder HTTP/TCP/DNS checks get, and each run has a 30-second timeout: a hung page (a modal that never appears, a redirect loop) ends the run rather than tying up a check indefinitely.
Availability and pricing
Browser checks are a Scale-plan feature, capped at 10 per account. Each one still counts as one monitor against your plan's normal allowance -- there is no separate per-run charge and no metered add-on, the same flat-rate promise every other check type keeps. See pricing for what each plan includes.
What it excludes, on purpose
No raw Playwright or JavaScript scripts, no region picker, no mobile device emulation, no video recording of a run, and no visual regression / pixel-diffing between runs. Not agent-bound -- the installed Monitor agent has no Chromium. Each of these is a deliberate v1 boundary, not an oversight, revisited as adoption proves the demand.