DriversRecommendedOutdated drivers can make a good PC feel brokenScan driver issues before chasing fixes manually.Scan NowOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix Now×
Skip to content
World desk5 min

Percy vs Playwright Screenshot Testing: What’s the Difference?

Playwright provides local screenshot assertions and repository-held baselines. Percy adds a hosted visual-testing and review workflow that can integrate with Playwright.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Playwright Test can capture and compare screenshots on its own; Percy adds a hosted visual-testing and review service to a Playwright-driven test flow. They are not direct substitutes: the practical choice is between Playwright’s repository-based baseline workflow and using Playwright with Percy’s hosted review workflow.

What does Playwright screenshot testing do?

Playwright Test includes the toHaveScreenshot() assertion. On its first run, it creates a reference screenshot; subsequent runs capture the page again and compare the new image with that reference. Playwright stores reference images in a snapshots directory associated with the test file. Its documentation recommends reviewing and committing those images with the project, and provides --update-snapshots to update them after an intentional visual change. Playwright visual comparisons documentation

This is visual regression testing within the Playwright Test workflow: the assertion identifies differences from an approved reference. It does not make every difference a defect. Teams still need to decide whether a change is expected and, if so, approve a new reference.

Comparison controls and unstable page content

Playwright’s screenshot comparator uses pixelmatch. The assertion options include maxDiffPixels, which sets a tolerance for differing pixels. A stylesheet supplied through stylePath can hide or normalize volatile elements, such as content that changes between runs. When creating a baseline, Playwright takes screenshots repeatedly until two consecutive captures match, helping avoid saving a reference while rendering is still settling. Playwright visual comparisons documentation Snapshot assertion options

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Environment consistency matters

Playwright warns that browser rendering can vary with host operating system, browser version, settings, hardware, power source, headless mode, and other factors. Its documentation recommends generating and comparing screenshots in the same environment. A baseline produced locally may therefore be noisy in CI if the environments differ. Playwright visual comparisons documentation

What does Percy add to Playwright?

Percy is presented by its vendor as a hosted visual-testing and review platform, and Percy’s product page says it is part of BrowserStack. Its Playwright integration lets Playwright tests drive the application and send visual snapshots into Percy’s service. Percy adds a hosted review path; it does not replace Playwright’s browser automation or functional assertions. Percy product page Percy integrations

Percy’s integration materials describe visual review connected to code workflows, including pull or merge requests, notifications, and webhooks. That can be useful when a team wants visual changes reviewed as part of its existing code-review process rather than handling reference images solely through its repository and test process. Percy integrations

How do the workflows differ?

Decision point Playwright screenshot assertions Playwright with Percy
Capture Playwright Test captures a screenshot and checks it against a reference with toHaveScreenshot(). Playwright documentation Playwright runs the test and Percy’s integration adds its service to the visual snapshot flow. Percy integration materials
Baseline and artifacts Reference images live in the project’s snapshots directory and are normally reviewed and committed with the code. Playwright documentation Percy provides a hosted visual-testing and review workflow. The sources cited here do not establish every current detail of its baseline or artifact storage behavior. Percy product page
Comparison controls Playwright documents pixelmatch, maxDiffPixels, and stylePath. Playwright documentation Snapshot assertion options The cited Percy materials describe the platform and integrations, but do not establish a specific diff algorithm.
Review Review changes through the repository and test workflow; update references when a visual change is intentional. Playwright documentation Percy describes review integrated with code workflows, including pull or merge requests, notifications, and webhooks. Percy integrations
Environment Keep baseline generation and comparison environments aligned to reduce rendering noise. Playwright documentation Percy provides hosted review, but the cited materials do not quantify or guarantee that hosted review eliminates rendering variance. Percy product page

When should you use Playwright alone?

Choose Playwright’s built-in assertions when the repository-based baseline model and your current CI and review process are sufficient. This keeps the screenshot assertion and its references in the Playwright project. Plan how you will generate and approve baselines, keep the generation environment consistent with CI, and control dynamic page elements that otherwise create noisy diffs.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a basic test, add an assertion to a Playwright Test test file:

import { test, expect } from '@playwright/test';

test('home page matches its visual baseline', async ({ page }) => {
  await page.goto('https://example.com');
  await expect(page).toHaveScreenshot();
});

Run the test once to create its reference image, review that image, and commit it with the test project. Later runs compare against the committed reference. After an intentional design change, review the new output and update references with npx playwright test --update-snapshots. Do not use that flag as a blind fix for unexpected differences: first determine whether the application changed or the test environment is introducing noise. Playwright visual comparisons documentation

Tune a known noisy region or tolerance

Playwright exposes per-assertion options such as a pixel-difference limit and stylesheet path. For example, a stylesheet can make a volatile element invisible during the screenshot; confirm the option names and supported values against the documentation for the Playwright version installed in your project.

await expect(page).toHaveScreenshot({
  maxDiffPixels: 100,
  stylePath: './tests/visual-stability.css',
});

Keep tolerances and visual normalization targeted. A broad tolerance or a stylesheet that hides large parts of the page can conceal regressions rather than make comparisons more reliable. Snapshot assertion options

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

When is Percy worth adding?

Consider Percy when the team wants its hosted visual-testing and review workflow alongside Playwright, particularly if reviewers should inspect visual changes through code-review integrations. The trade-off is introducing an additional service into the test and review path. Before adopting it, check current integration instructions, security and data-handling terms, browser coverage, plan limits, and cost for your project; those specifics are not established by the product and integration materials cited here. Percy product page Percy integrations

Evaluate Playwright alone against Playwright plus Percy, not Percy as a replacement for Playwright’s browser automation. Percy’s surfaced integration guidance describes using it with Playwright, so the tools can be combined. Percy integrations

ScreenshotNeo is an alternative to try first

If the immediate need is capturing website screenshots through an API or an MCP server for an AI agent—not building a Playwright visual-regression test suite—try ScreenshotNeo first. It is a screenshot API and MCP server, not a like-for-like substitute for Percy’s hosted visual review or Playwright’s screenshot assertions.

Or skip the browser setup:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo API documentation for request options. ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. Its MCP server lets AI agents use screenshot tools, and the free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up free for 1,000 screenshots a month, with no card required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Frequently Asked Questions

Can I use Percy with Playwright?

Yes. Percy’s integration materials describe connecting Percy to Playwright tests; Playwright still drives the application while Percy participates in the visual snapshot and review workflow.

Does Playwright have visual regression testing built in?

Yes. Playwright Test provides the toHaveScreenshot() assertion for comparing screenshots with reference images.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.