Skip to content

Dungbeetle vs Percy

Percy is BrowserStack's visual testing platform: your CI uploads page snapshots, Percy renders them across Chrome, Firefox, Edge, and Safari at the responsive widths you choose, and you review pixel diffs in its web UI. Dungbeetle is a snapshot and visual regression testing tool — a free CLI plus self-hostable cloud — built for AI agents and the humans they work for. The short verdict: if you need true cross-browser rendering coverage backed by an established vendor, Percy is the safer pick; if you want flat pricing, semantic diffs, and snapshots beyond the browser, Dungbeetle is the simpler bet.

When Percy is the better choice

Honestly: if "does this render correctly in Safari?" is a question your team has to answer, Percy answers it and Dungbeetle doesn't.

  • A real cross-browser rendering grid. Every Percy plan — including Free — renders your snapshots in Chrome, Firefox, Edge, and Safari, at customizable responsive widths, on BrowserStack's infrastructure (pricing). The Desktop & Mobile plan adds real mobile browsers.
  • An established enterprise vendor. Percy has been the default answer to "visual testing SaaS" for years, and BrowserStack behind it means procurement, support, and compliance boxes get ticked.
  • A polished review UI with diff grouping — Percy groups similar screenshots together so one CSS change doesn't mean fifty separate approvals.
  • Deep BrowserStack ecosystem integration if you already use their device cloud for functional or app testing.

If cross-browser visual coverage is the job, use Percy — sincerely.

When Dungbeetle is the better choice

  • Predictable pricing as your suite grows. Percy meters every rendering: one page at two browsers and three widths is six billed screenshots, per build (their definition). Past your plan's allowance, each additional screenshot costs $0.036 on Percy Professional (as of July 2026). Run the arithmetic: 50 pages × 2 browsers × 3 widths = 300 screenshots per build, so 34 builds a month exhausts the 10,000-screenshot $199/mo plan and every build after that adds ~$10.80. Dungbeetle's proposed tiers are flat — soft caps on paid plans, and the only metered overage is storage at $0.10/GB-month. Never a per-snapshot charge.
  • Semantic diffs, not just pixels. Dungbeetle normalizes output to reviewable JSON — DOM, terminal, API, desktop accessibility tree, game state — so a renamed button is one changed attribute, not a pixel blob. Screenshots are additionally pixel-compared with configurable tolerance.
  • No server required. Baselines can live in dungbeetle.snapshots/ in your repo and get reviewed in ordinary PRs. Percy's baselines live in Percy; there is no offline mode.
  • More than web. Terminal output, API responses, desktop a11y trees, and game state are first-class capture types alongside web pages.
  • Agent-native workflow. RFC 8628 device-flow login for coding agents, scoped revocable tokens, an MCP server (Claude Code, Cursor, Codex, Gemini CLI), reviews attributed to the agent — and promoting a baseline requires a human-granted baselines:write scope, so an agent can't approve its own changes.
  • Unlimited seats on every plan — though to be fair, Percy's plans also include unlimited users.

Pricing compared

Percy, as of July 2026 (browserstack.com/pricing?product=percy):

Percy planPrice (annual billing)Screenshots/moOverageBuild history
Free$05,00030 days
Professional$199/mo ($249 month-to-month)10,000$0.036/screenshot12 months
Professional$449/mo ($549 month-to-month)25,000$0.036/screenshot12 months
Desktop & Mobile$599/mo ($729 month-to-month)25,000$0.048/screenshot12 months

All Percy plans include unlimited users and projects, and the free tier's 5,000 screenshots/month is genuinely useful for small suites. The number to watch is the multiplier: a "screenshot" is one page in one browser at one width, so a modest matrix multiplies fast.

Dungbeetle's managed cloud is in closed beta (free during beta; access by allowlist). The GA tiers below are proposed, not final:

Dungbeetle plan (proposed)PriceReposSnapshots/moRetention
Free$015,000 hard cap14 days
Starter$29/mo525,000 soft cap60 days
Team$99/mo25100,000 soft cap180 days
Business$249/moUnlimited1 year, SSO

Every plan has unlimited seats; the only overage is storage ($0.10/GB-month), with 2GB included on Free. Details on /pricing. The CLI with repo-committed baselines is free forever, source-available (FSL-1.1, converting to Apache-2.0 after two years). Self-hosting the cloud server is an enterprise option (BUSL-1.1, on request).

The workflow difference

Percy: your CI captures DOM snapshots and uploads them → Percy's cloud renders each one across your browser/width matrix and pixel-diffs against the baseline → you approve in their web UI. The renderer and the diff both live on their side.

Dungbeetle: capture locally or in CI — a zero-dependency fetch driver (DOM only), a Playwright driver (DOM + screenshots), or ingest PNGs your suite already writes (screenshotFile mode) → semantic JSON diff plus pixel comparison → review as a plain diff in the PR, or in the cloud UI with approve/promote. The cloud is an upgrade, not a prerequisite.

Try it against your current setup

sh
npx dungbeetle init
npx dungbeetle update   # mint baselines → dungbeetle.snapshots/
npx dungbeetle test     # exits non-zero on any change

Or skip setup entirely: try the hosted demo, or diff two URLs with no account at all:

sh
npx dungbeetle anon https://staging.your-site.example --compare https://your-site.example

Coming from another pixel-diff tool? There are importers and guides for Lost Pixel, Wraith, BackstopJS, and Loki — see all migration guides and pricing.

Source-available: CLI under FSL-1.1-ALv2, cloud server under BUSL-1.1. See Licensing.