To see which browser binaries Playwright has installed, run npx playwright install --list from your Node.js project. In Python, use python -m playwright install --list. These commands report Playwright browser installations; they do not prove that a particular project can launch a compatible browser. For that, also check the project’s Playwright version and browser path, and run a launch smoke test if needed.
List the browsers Playwright can find
Node.js
Open a terminal in the project whose tests are failing and run:
npx playwright install --list
The command prints the browsers found across Playwright installations on the machine. Run it through npx in the project environment so you can compare the result with the Playwright version that project resolves. The command is an inventory, not a launch test. Playwright documents it on its browser installation page.
Python
Activate the virtual environment used by the project, then run:
#1 Best Overall
python -m playwright install --list
If your system distinguishes python and python3, use the executable that belongs to the environment where Playwright is installed. The Python documentation provides the equivalent install --list command and browser installation guidance at Playwright for Python: Browsers.
What to look for
Read the output for the browser you need—typically Chromium, Firefox, or WebKit—and any installation location shown. A browser entry means Playwright found an installation; it does not establish that the current project will select that binary or successfully start it. If the output is empty or does not include the browser your test needs, install it using the project’s Playwright CLI.
Check that the listed browser works for this project
A reported installation is only one part of a working test setup. Playwright’s documentation says each Playwright version needs specific browser binary versions, and the project’s runtime must be able to locate those binaries. On Linux, required operating-system libraries are another separate requirement. See the official browser guidance and CI guidance.
- Check the resolved Playwright version. In a Node.js project, run
npx playwright --version. The CLI reports the version resolved by that command. For Python, check the package in the active environment withpython -m playwright --version. - Compare the project and browser installation. If Playwright was upgraded or the browser cache came from a different project or version, install the browser binaries again with the current project’s CLI. Playwright updates the browser versions supported by releases, so a previously populated cache may no longer match.
- Check which browser path the process uses. A custom
PLAYWRIGHT_BROWSERS_PATH, hermetic installation, different user account, or different environment can mean that the directory you inspected is not the one used at runtime. - Run a minimal launch check. Try the smallest relevant test or a launch using the same project, environment, and browser selection as the failing test. That checks binary access and runtime dependencies together; the list command alone does not.
For a Node.js project that depends on the playwright package, a minimal launch check can be run from the project root with:
Free tools Windows power users keep installed
One-click scans. No signup required.
node -e "const { chromium } = require('playwright'); (async () => { const browser = await chromium.launch(); console.log('Chromium launched'); await browser.close(); })().catch(error => { console.error(error); process.exit(1); });"
This example checks Chromium specifically. If the project uses another browser, change the imported browser and launch call to match it. It requires the project’s playwright package and a compatible installed browser. A successful launch confirms that this small check can start Chromium in that environment; it does not guarantee that every test, URL, or project configuration will work.
Find the browser cache Playwright is using
Playwright’s documented default browser cache locations are:
| Operating system | Default browser cache |
|---|---|
| Windows | %USERPROFILE%AppDataLocalms-playwright |
| macOS | ~/Library/Caches/ms-playwright |
| Linux | ~/.cache/ms-playwright |
These are defaults, not a guarantee that a specific process uses that directory. The PLAYWRIGHT_BROWSERS_PATH environment variable can redirect both browser installation and runtime lookup to a shared or custom location. Set it consistently for the install command and the process running tests; setting it only for installation can leave the test process looking somewhere else.
For example, to use a custom path in a POSIX shell for one command, set the variable before the command: PLAYWRIGHT_BROWSERS_PATH=/shared/playwright-browsers npx playwright install --list. Then use the same variable when installing or running tests. On Windows, set environment variables using the syntax for the shell in use.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Playwright also documents hermetic mode: set PLAYWRIGHT_BROWSERS_PATH=0 to place browser binaries inside the local Playwright package directory, under node_modules/playwright-core/.local-browsers. This can help keep an installation associated with a package rather than the default shared cache. The variable does not change the installation path for Google Chrome or Microsoft Edge. Details are in the Playwright browser documentation.
Rank #4
If the default folder appears empty, check the environment and account used by the process before concluding that no browser exists. A custom path or hermetic install can put the binaries elsewhere.
Install a missing or mismatched browser
Run the install command through the Playwright CLI for the project that will use the browser. The CLI’s command reference documents browser-specific installation and options.
# Install the default browser set
npx playwright install
# Install only Chromium
npx playwright install chromium
# Preview the installation actions
npx playwright install --dry-run
# Install browser binaries and Linux system dependencies
npx playwright install --with-deps
For Python, use the matching module command, optionally followed by a browser name:
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →# Install the default browser set
python -m playwright install
# Install only Chromium
python -m playwright install chromium
Use --with-deps when Linux system dependencies need installation and the environment permits it. Browser binaries and operating-system libraries are separate: finding a binary in the cache does not show that the libraries needed to launch it are present. Dependency installation may require suitable system permissions. For managed machines or containers, follow the environment’s package-management and privilege policies.
Troubleshoot common check and launch failures
The list does not show the browser you need
- Cause: The browser has not been installed for the relevant Playwright setup, or you ran the command in a different project or environment.
- Fix: Activate the project environment, then run
npx playwright install chromium(or the needed browser) for Node.js, orpython -m playwright install chromiumfor Python. List again afterward.
The browser is listed, but the project says it is missing
- Cause: The project may resolve another Playwright version, use another browser path, or run as a different user. Playwright requires browser binaries compatible with the installed Playwright version.
- Fix: Run the version command and list command from the same project environment as the failing test. Check
PLAYWRIGHT_BROWSERS_PATHfor both installation and runtime, then reinstall using that project’s CLI if versions do not match.
The browser is found but fails to launch on Linux
- Cause: Browser binaries may be present while operating-system dependencies are missing.
- Fix: Install the required dependencies with
npx playwright install --with-deps, or use Playwright’s browser-specific dependency installation as appropriate for the environment. The CI guide notes that Linux dependencies are not cacheable in the same way as browser binaries.
The command output differs between local and CI runs
- Cause: The environments may resolve different Playwright versions, use different users or browser paths, or have different system dependencies.
- Fix: Compare the version, environment variable, and installation process in both environments. Playwright generally does not recommend caching browser binaries in CI because restoring a cache can take as long as downloading them; if you do cache them, its guidance recommends keying the cache to the Playwright version. Keep Linux system dependencies in mind separately. See Playwright’s CI documentation.
The launch fails without an obvious cause
For browser launch diagnostics in CI, Playwright suggests enabling DEBUG=pw:browser. Run the failing check with that setting in the environment to collect browser launch logs, then use the error and environment details to distinguish a missing binary from an executable or dependency problem. See the CI guide.
Or skip the browser setup
If your goal is to get a website screenshot rather than verify a local Playwright installation, ScreenshotNeo provides a screenshot API and MCP server; it is not a Playwright browser-installation checker. A single GET request can return a screenshot or PDF. For example, cURL:
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. Before a capture, it accepts cookie or consent banners as a visitor and removes more than 60 known consent platforms, newsletter popups, and chat widgets; each of these steps can be turned off. Bot checks or CAPTCHAs, blank pages, timeouts, failed loads, and cache hits are not billed, and each response includes X-Page-Verdict and X-Billed headers. Its MCP server exposes take_screenshot, get_page_info, and capture_pdf for Claude, Cursor, and other MCP clients. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 screenshots. Sign up for 1,000 free screenshots a month, with no card required.
Frequently Asked Questions
Does `install –list` install or update any browsers?
No. It reports browser installations Playwright finds; use the `install` command without `–list` to install browser binaries.
Does the command tell me whether system-installed Chrome or Edge is available?
It reports browsers from Playwright installations. Playwright’s documentation notes that `PLAYWRIGHT_BROWSERS_PATH` does not change the installation path for Google Chrome and Microsoft Edge, so the list is not a general inventory of every browser installed by the operating system.
Quick Recap
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.

