Check the exact Puppeteer version in your project against Puppeteer’s supported browsers table. Use the Chrome for Testing or Firefox version listed for that Puppeteer release. If your version has no row, the table says to use the browser version listed for the immediately preceding Puppeteer release. A custom Chrome or Chromium path only selects a binary; it does not guarantee that the version is compatible.
1. Find the Puppeteer version your project actually uses
Compatibility depends on the installed Puppeteer release, not just the version range written in a package manifest. Check the project’s lockfile or inspect the installed package version. For example, in a Node.js project you can run:
npm ls puppeteer
If the project uses a package manager other than npm, inspect its lockfile or use that manager’s equivalent dependency command. Make sure you check the version resolved for the project you will run, rather than a global installation or a different workspace.
2. Match that release in Puppeteer’s supported-browser table
Open the official supported browsers table and locate the exact Puppeteer release. Record the matching browser version before changing or upgrading either package. The table is the authoritative version lookup; a generic claim that Puppeteer supports “Chrome” does not identify which Chrome release is paired with your Puppeteer version.
#1 Best Overall
For a release without its own row, Puppeteer’s table instructs readers to use the browser version associated with the immediately prior Puppeteer release. This is a fallback mapping, not a promise that any newer browser will work.
The table retrieved for this article lists Puppeteer 25.12.0 with Chrome for Testing 154.0.8037.57 and Firefox 156.0.1. Version mappings change, so check the live table for the version you are using instead of treating those figures as permanent.
3. Check which browser binary Puppeteer will launch
Default downloaded browser
By default, Puppeteer downloads and uses a specific Chrome version matched to its release. That bundled Chrome for Testing version is the best-supported choice. If you are troubleshooting, first confirm the browser has been installed; a missing download can prevent launch even when the version mapping is correct.
Rank #2
- HTML CSS Design and Build Web Sites
- Comes with secure packaging
- It can be a gift option
Custom Chrome or Chromium
If your application uses a separately installed browser, pass its path as executablePath to puppeteer.launch. Then compare that binary’s version with the supported-browser table and test it in the same operating system, container, or runtime as the application. Puppeteer does not guarantee operation with every other Chrome version.
PC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Outdated Drivers Are Slowing You Down
One free scan finds every outdated or missing driver and matches the right update for your exact hardware.Free scan · exact hardware matchconst browser = await puppeteer.launch({
executablePath: '/path/to/chrome',
});
Use the actual path for your environment. Setting executablePath chooses which executable to start; it does not establish that the selected browser version is supported.
4. Check Firefox support and protocol behavior
Puppeteer supports Chrome and Firefox from v23.0.0 onward. Use the Firefox mapping in the supported-browser table just as you would the Chrome mapping. Puppeteer’s FAQ says Chrome uses the Chrome DevTools Protocol (CDP) by default, while Firefox uses WebDriver BiDi by default. These protocol differences are another reason to check the exact browser pairing rather than assuming that a browser family alone determines compatibility.
Rank #3
The Puppeteer FAQ explains the version coupling: “Every Puppeteer release is tightly bundled with a specific browser release to ensure compatibility with the implementation of the underlying protocols, the Chrome DevTools Protocol and WebDriver BiDi.” The FAQ notes that this helps prevent browser changes from unexpectedly breaking Puppeteer.
5. Confirm the pairing can launch in your runtime
A matching version is necessary, but it does not prove that the browser is installed or that the operating system has everything it needs. Run a minimal launch test in the target environment before relying on the pairing in a larger job:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
const puppeteer = require('puppeteer');
(async () => {
const browser = await puppeteer.launch();
console.log(await browser.version());
await browser.close();
})().catch((error) => {
console.error(error);
process.exitCode = 1;
});
For an ES module, import Puppeteer with import puppeteer from 'puppeteer'; and use the same launch and close calls. If the test fails, use the error to distinguish a version mismatch from a missing browser installation or operating-system dependency.
Rank #4
- Brand: Wiley
- Set of 2 Volumes
- A handy two-book set that uniquely combines related technologies Highly visual format and accessible language makes these books highly effective learning tools Perfect for beginning web designers and front-end developers
6. Troubleshoot common compatibility and launch failures
| Symptom | Likely cause | What to check or do |
|---|---|---|
| The installed Chrome launches inconsistently or fails after a browser update. | The custom browser version may not match the Puppeteer release. | Compare the actual executable’s version with the Puppeteer supported-browser table. Test the mapped Chrome for Testing version or choose a supported Puppeteer/browser pairing. |
| Puppeteer cannot find Chrome. | The browser download may not have run or may have been blocked. | Follow the Puppeteer troubleshooting guide’s manual installation step: npx puppeteer browsers install. |
| Chrome is installed, but it exits immediately on Linux. | Required shared-library dependencies may be missing. | Check the launch error and system dependencies using the guidance in the Puppeteer troubleshooting guide. |
| Chrome works but Firefox does not, or the reverse. | The browser mapping, installation, or protocol path differs. | Check the corresponding browser column for your exact Puppeteer release; remember that Chrome defaults to CDP and Firefox to WebDriver BiDi. |
| The table has no row for the project’s Puppeteer version. | The release is not explicitly listed in the table. | Follow the table’s fallback rule and use the browser version for the immediately prior listed Puppeteer release, then launch-test in the target environment. |
Or skip the browser setup
If your goal is a website screenshot rather than browser automation, ScreenshotNeo provides a screenshot API and MCP server, so you do not have to install and maintain Puppeteer and a browser for that task. Its one-call cURL example is:
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 documentation for request options. Cookie banners, newsletter popups, and chat widgets can be removed before capture; bot checks, blank pages, failed loads, timeouts, and cache hits are not billed. An 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 shots.
Sign up for ScreenshotNeo’s free plan to try 1,000 screenshots a month without a card.
Frequently Asked Questions
Which Chrome version works with my Puppeteer version?
Use the Chrome for Testing version listed for your exact Puppeteer release in the official supported browsers table: pptr.dev/chromium-support.
Best Value
Does Puppeteer support Firefox?
Yes. Puppeteer supports Firefox from v23.0.0 onward; check the supported browsers table for the Firefox version paired with your release.
Does setting executablePath prove that my Chrome version is supported?
No. It tells Puppeteer which browser executable to launch. Compare that browser’s version with the table and test the pairing in the target runtime.
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.

