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

In Puppeteer, a browser tag names a moving release channel; a build ID identifies a particular browser build. To identify the binary consistently, record the browser family, resolved build ID, and platform, then check the running browser with browser.version() and confirm its compatibility with your Puppeteer version.

Browser tag vs. build ID: what each identifies

A tag such as stable or canary describes a release channel, not a permanent version number. Resolve a tag to a build ID when you need to select a concrete build. The Puppeteer BrowserTag documentation lists tags including stable, beta, canary, dev, devedition, esr, latest, and nightly.

A useful binary identity is the browser, build ID, and platform together. Puppeteer’s install and executable-path APIs use a build ID intended to uniquely identify a binary and support caching. A tag is useful when you want a channel’s current build; a resolved build ID is useful when you need to pin and record a specific selection. See the InstallOptions and Options documentation.

Resolve a tag and record the selected build

Use the browser-management APIs from @puppeteer/browsers. The essential workflow is to choose a browser and platform, resolve the channel tag to a build ID, and preserve those values with your environment or build logs. API signatures can vary across package versions, so follow the reference documentation for the version you have installed.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  1. Choose a channel or pin. Use a tag when you want a release channel’s current selection; use a specific build ID when you need a reproducible binary selection.
  2. Resolve the tag. Call resolveBuildId() for the selected browser and tag using the API version installed in your project. The result is the build ID, not the tag itself.
  3. Record the complete identity. Log the browser family, resolved build ID, and platform (including the relevant operating-system and architecture choice). Do not store only a channel label if later reproduction matters.
  4. Install or locate that build. Supply the browser, build ID, and platform to the applicable installation or executable-path API.
  5. Verify the launched process. Ask the running Puppeteer browser for its version string and keep that output alongside the selected build details.

Consult the @puppeteer/browsers API reference for the exact calls available in your installed release. A channel can advance over time, so resolving it again later may select a different build.

Check which browser Puppeteer actually launched

Once launched, call browser.version(). Puppeteer’s examples show strings such as HeadlessChrome/..., Chrome/..., or Firefox/.... This is useful runtime evidence of the browser name and version, but Puppeteer warns that the format may change; avoid parsing it as a permanent, stable grammar. See Browser.version().

Rank #2
Sale
HTML and CSS: Design and Build Websites
  • HTML CSS Design and Build Web Sites
  • Comes with secure packaging
  • It can be a gift option

Compare this runtime value with your recorded browser, build ID, and platform. If they do not correspond, check which executable your launch configuration selected, whether a channel setting or explicit path is in effect, and whether the process is using the binary you installed.

Find the browser version supported by your Puppeteer release

Use Puppeteer’s supported browsers table to check the Chrome for Testing and Firefox versions mapped to Puppeteer releases. Do not assume an arbitrary browser version is compatible. If the exact Puppeteer release is not listed, the documentation says its supported browser version is the one listed for the immediately prior Puppeteer version.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Web Design with HTML, CSS, JavaScript and jQuery Set
  • 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

Puppeteer tests and guarantees Chrome for Testing binaries. Other browser providers are not officially supported; if you use a custom or system-provided binary, compatibility testing, feature validation, maintenance, and cross-platform version consistency are your responsibility. The @puppeteer/browsers documentation describes this support boundary.

Configure browser selection with puppeteer-core

Unlike the standard Puppeteer setup that uses its bundled browser configuration, puppeteer-core requires an explicit executablePath or channel at launch. The API documents this requirement in PuppeteerNode and LaunchOptions.

  • Choose executablePath when you have installed a specific binary and need to point Puppeteer to that file.
  • Choose channel when selecting through a supported release channel is the intended behavior.
  • For the documented guaranteed configuration, use Puppeteer’s bundled browser. Treat other executable paths as your compatibility responsibility.

Compare browser-build choices consistently

When reviewing two candidate builds, compare the properties that determine what will actually run:

  • Selection: moving channel tag or pinned build ID.
  • Browser family: for example, Chrome for Testing or Firefox.
  • Platform: the target operating system and architecture.
  • Puppeteer compatibility: the mapping for the installed Puppeteer version.
  • Provider: Chrome for Testing or a custom/system provider with user-validated compatibility.

Troubleshoot mismatched or unexpected builds

  • The browser changed between runs: you may have selected a moving channel tag. Resolve it and record the resulting build ID, or explicitly select a pinned build.
  • The version string does not look as expected: inspect the launched executable and configured channel. Treat browser.version() as runtime evidence, not as a guaranteed string format.
  • The browser launches but behaves incompatibly: check the supported-browser mapping for your Puppeteer release. If using a custom provider, validate the required features and platforms yourself.
  • puppeteer-core cannot select a browser: configure either executablePath or channel in launch options.
  • A recorded build will not reproduce elsewhere: verify that the record includes browser family and platform as well as build ID, and that the same executable is being installed and launched.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Or skip the browser setup

If your goal is a website screenshot rather than managing a local Puppeteer binary, ScreenshotNeo provides a screenshot API and MCP server. A single GET request can return an image or PDF; its cleanup accepts cookie banners and removes known consent platforms, newsletter popups, and chat widgets before capture. Bot checks, blank pages, and failed loads are not billed, and an MCP server lets AI agents take screenshots.

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

Example cURL request (see the ScreenshotNeo documentation for options):

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

The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000. Sign up for ScreenshotNeo.

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.

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.