Visual regression testing for teams shipping with AI agents

Your agent said “no visual changes.”It lied.

You review the logic in the diff. Nobody reviews the pixels — until a 4px button shift and a wrong shade of green land in production. pixmoat catches every screenshot, on every viewport, on every PR your agent opens.

Start free

Free plan, no card.

Building with a team? Start with Pro€15/seat, 25,000 shots a month.

  • Drop-in Playwright client
  • Nothing to self-host
  • Diffs your agent can read

Read the Playwright setupSee the merge request guideAI agent setupMachine-readable docs

app.pixmoat.com/review
Baseline
Current build

Inspect every change your way — wipe, blink, or highlight the exact pixels that moved. Drag the handle or pick a mode.

It shows up where you already work — the CI log.

No new dashboard to babysit. pixmoat runs inside your existing Playwright suite, uploads on every build, and fails the check with a link straight to the review. Your agent reads the summary; you make the call.

ci · pipeline #482
$ npx playwright test
  ✓ dashboard renders            1.2s
  ✓ settings page                0.8s
  pixmoat › uploading 24 screenshots… done
  pixmoat › 23 match baseline · 1 changed

  ✗ dashboard.png  — 412 px moved (2.3%)
      “Save” button shifted 4px down
      success green  #22c55e → #16a34a
      review → app.pixmoat.com/review/9f2a

✖ 1 visual change needs a human
The review

See what moved — not a wall of red.

Every shot lands next to its approved baseline. Wipe, blink, or highlight the exact pixels that changed. Approve the intended stuff, reject the regression, and the status flows straight back to the MR.

See a real review →
app.pixmoat.com/review
pixmoat build review: a dashboard diff side by side against its baseline
Built for agents

A diff your coding agent can actually act on.

Compact, structured summaries — not a screenshot dump. Claude Code, Cursor, and the rest get "button moved 4px, color drifted," decide whether it's intentional, and either fix it or ask you. The MCP server wires it up in one command.

  • Machine-readable change summaries
  • pixmoat mcp — 8 tools over stdio
  • Flaky snapshots quarantined automatically
agent

Refactored the settings layout. All tests green — merging.

pixmoat

Hold on — settings.png changed 2.3%. Toggle row shifted 6px, contrast on the label dropped below AA. Intentional?

agent

Not intentional. Reverting the padding change and re-running.

The unglamorous parts, handled.

Nothing to host

Fully managed. No storage buckets, no diff workers, no 2am pager. Add a token to CI and you're live.

Multi-viewport

Desktop, tablet, mobile in one run.

Adjustable threshold

Tune out the noise, keep the signal.

Flakiness detection

Automatic quarantine for jittery snapshots, so a rogue cursor blink never blocks a merge again.

Accessibility baselines

Catch new contrast and WCAG violations beside the visual diff.

Performance budgets

Track LCP, CLS, INP, and payload size to catch performance regressions before they reach users.

Console regressions

Baseline browser errors, warnings, and failed requests before they reach users.

Policy-aware review

Required approvals and CODEOWNERS routing put the right human on the right change.

Works with your Git host

GitLab, GitHub, Bitbucket, or a generic status/comment adapter.

Three steps. Then you forget it's there.

  1. 01

    Capture

    The Playwright client snaps your screens during the suite you already run, and uploads on every CI build.

  2. 02

    Compare

    pixmoat diffs each shot against the approved baseline and flags exactly what moved — down to the pixel.

  3. 03

    Review

    Approve the intended change or reject the regression. Approved shots quietly become the new baseline.

Pricing

Start free. Scale when you need to.

Start free, then give every Pro seat 25,000 screenshots per month for agent-heavy CI.

Free
€0/ month

Everything you need to put visual review into your workflow.

  • 5,000 snapshots per month
  • 3 projects
  • 1 seat
  • 30-day retention
  • Playwright, CI, MCP and CLI access
Start free
Pro
€15/ seat / month

Annual billing: €150/seat/year — 2 months free.

More capacity and retention for teams and coding agents running visual checks continuously.

  • 25,000 screenshots per seat / month
  • Choose the number of Pro seats you need
  • 90-day retention
  • Unlimited projects
  • Flakiness detection and CI integration
  • Everything in Free
Start with Pro

FAQ

Questions, answered

Do I need to host or run anything?

No. pixmoat is fully hosted. You add a project token to your CI and upload screenshots — there are no servers, database, or storage for you to run or maintain.

How does the comparison work?

Every screenshot is compared against the approved baseline for its branch. pixmoat highlights exactly what changed with an adjustable threshold, so anti-aliasing noise does not create false positives. You approve intended changes or reject regressions right in the review UI.

Which frameworks and CI providers are supported?

Capture with Playwright today, and upload from any pipeline. GitLab CI/CD and GitHub Actions both post results back as status checks. Cypress and Selenium support are on the way — tell us what you use and we will prioritise it.

Is my data private?

Yes. Screenshots are scoped to your project and protected by per-project access tokens. Only members you invite can view or review them.

Can my AI coding agent use pixmoat?

Yes. pixmoat ships an MCP server and a CLI so agents like Claude Code, Cursor, and Codex can capture, check diffs, and approve or reject changes autonomously — with exit codes that drive the loop.

What does it cost?

Start with the free plan with no credit card. Pro is €15 per seat per month and includes 25,000 screenshots per seat per month. Annual billing is available; see the pricing cards above for current limits and retention.

How large can a screenshot be?

Each PNG can be up to 10 MB, 8,192 pixels wide, 16,384 pixels tall, and 25 million decoded pixels. A multi-capture check supports up to five images. These safeguards are separate from your monthly screenshot allowance.

Ship the feature. Keep the layout.

Connect your first project in the time it takes to grab a coffee — free, or poke around the live demo first.

Start free

Or go straight to Pro for your team.