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

If Puppeteer reports that Chrome or Chrome Headless Shell is missing in CI, first identify whether the failure occurs during dependency installation, browser download, cache restore, archive extraction, or puppeteer.launch(). Then fix that stage: allow or run Puppeteer’s installer, keep the browser cache consistent between jobs, check the configured download host and version, or resolve a runtime dependency. Headless Shell is a separate browser binary, so changing launch flags alone will not repair a failed download.

First identify which browser and stage are failing

Collect the full error and these details before changing the workflow:

  • The installed puppeteer or puppeteer-core version.
  • Node.js version, package manager and version, runner operating system, and CPU architecture.
  • Whether the error appears during dependency installation, an explicit browser-install command, or puppeteer.launch().
  • Whether installation and execution happen in the same job, container, user account, and home directory.
  • The configured Puppeteer cache directory, download base URL, and browser version, if any.

Puppeteer’s installation guide says the package downloads Chrome for Testing and Chrome Headless Shell; the separate shell download has been included since Puppeteer v21.6.0. The headless guide distinguishes regular headless Chrome, selected with headless: true, from the old headless mode using the separate shell binary, selected with headless: 'shell'. The shell does not behave exactly like regular Chrome. See the Puppeteer headless modes guide and installation guide.

Make sure the workflow actually needs Headless Shell. If it does, keep the shell browser mode and repair its installation. If regular headless Chrome meets the requirement, switching modes may avoid a dependency on the shell artifact, but it changes browser behavior; it is not a general fix for a broken download.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Dell Optiplex 3060 Desktop Computer | Intel i5-8500 (3.2) | 32GB DDR4 RAM | 1TB SSD Solid State | Built in WiFi | Bluetooth | Windows 11 Professional | Home or Office PC (Renewed)
  • [INTEL POWERED CONTENT] - Built with a 8th Generation Hexa-Core Intel i5 and 32GB of DDR4 RAM; Modern, Windows 11 ready, with 4K support, Executive multitasking, media streaming and smooth, multi-tab web browsing; Perfect as an all-purpose multimedia computer; built for content creators; Plenty of RAM and Mass storage for photo and video editing powered by Intel HD 630
  • [LATEST WIRELESS TECH] - This Dell Desktop Computer easily connects to the internet through the Built In WiFi / Bluetooth
  • [SOLID STATE STORAGE] - This Dell Computer setup comes with an ultra-fast 1TB Solid State Drive (SSD); Setup as the primary boot device; Boot and load programs with lightning speed ; Additional expansion available
  • [BUY & OWN WITH CONFIDENCE] - From the world's largest Microsoft Authorized Refurbisher; Quality Guarantee and Free Tech Support; Award-winning Customer Service; | Support Sustainable Business
  • [MODERN HI-SPEED PORTS] - USB 3.0 (x4) | USB 2.0 (x4) | DisplayPort (x1) | HDMI Port (x1) | Audio Combo Jack (x1) | Audio Out (x1) | RJ-45 Ethernet (x1) | Internal SATA (x3)

If the browser is missing immediately after package installation

Check whether lifecycle scripts were blocked

Puppeteer’s automatic browser download is normally tied to package installation. Package-manager security settings or project policy can block lifecycle scripts, leaving the package installed but no browser downloaded. The installation guide warns that this can lead to a Could not find Chrome (ver. ...) error. Review the package-manager output and project configuration for disabled scripts before retrying the job.

There are two supported approaches: explicitly run Puppeteer’s browser installer in the workflow, or configure the package manager to allow Puppeteer’s install script. The exact allow-list syntax varies by package manager and version, so use the form documented for the version pinned by the project rather than copying a command intended for another release. Puppeteer’s installation guide documents the installer and package-manager-specific script-policy options.

Install the browser explicitly

For a project using the puppeteer package, an explicit install step makes the download stage visible in CI logs. Run it after dependencies are installed and before the job starts the application or test suite:

npx puppeteer browsers install

Use the project’s locally installed Puppeteer CLI where possible; that ties the installer to the package version in the lockfile. If this command fails, diagnose its network, version, and extraction output as a browser-install problem rather than proceeding to launch-flag changes.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Dell Optiplex 7050 SFF Desktop PC Intel i7-7700 4-Cores 3.60GHz 32GB DDR4 1TB SSD WiFi BT HDMI Duel Monitor Support Windows 11 Pro Excellent Condition(Renewed)
  • Model: Dell OptiPlex 7050 Small Form Factor (SFF)
  • Processor: Intel Core i7-7700 3.60 GHz
  • Memory: 32GB DDR4 Ram
  • Storage: 1TB Solid State Drive (SSD) Fast Boot + Storage
  • Operating System: Windows 11 Pro (64-bit)

Check whether the project uses puppeteer-core

puppeteer downloads a compatible browser as part of its installation workflow. puppeteer-core does not download Chrome; it is intended for setups where the browser is managed separately. With puppeteer-core, the CI job must install or provide a browser and configure Puppeteer to use it. Do not expect enabling the puppeteer lifecycle script to install a browser when the project depends only on puppeteer-core.

If installation succeeds but a later CI step cannot find the browser

Use the same cache path at install and runtime

Since Puppeteer v19, the default browser cache is ~/.cache/puppeteer. A download can appear to succeed in one step and still be unavailable later if the next step runs in another container, under another user, with a different home directory, or on a fresh ephemeral runner. Puppeteer supports setting the cache location explicitly with PUPPETEER_CACHE_DIR or the cacheDirectory configuration option. See the Puppeteer configuration guide.

For example, choose a project cache path and set it for both installation and execution:

export PUPPETEER_CACHE_DIR="$PWD/.cache/puppeteer"
npx puppeteer browsers install
node your-script.js

This shell example assumes both commands run from the same directory in the same job. If your CI splits installation and execution into separate jobs, persist and restore the cache between them, and ensure both jobs use the same configured path. If you change Puppeteer cache configuration, Puppeteer’s troubleshooting guide says to reinstall so the change takes effect.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
HP All-in-OneDesktop Computer, 16GB DDR5 RAM, Intel Quad-Cores, 128GB SSD, WiFi6, Keyboard & Mouse, Windows 11
  • IMMERSIVE 24 INCH DISPLAY: Experience stunning clarity on a Full HD IPS screen with ultra-thin bezels, offering a 90% screen-to-body ratio that makes everything from spreadsheets to streaming come alive with vibrant colors and crisp details.
  • POWERFUL INTEL PROCESSING: Tackle demanding tasks with ease thanks to the Intel processor and 16GB of high-speed memory, delivering smooth performance whether you're multitasking between applications or running productivity software.
  • GENEROUS STORAGE: Store all your important files, photos, and programs with blazing-fast solid state drive technology that ensures quick boot times, rapid file access, and plenty of space for your digital life.
  • ENHANCED PRIVACY AND COLLABORATION: Work confidently with the pop-up privacy camera that tucks away when not in use, plus dual microphones with noise reduction for crystal-clear video calls that keep you connected professionally.
  • ECO-CONSCIOUS DESIGN: Feel good about your purchase with an EPEAT Gold registered and ENERGY STAR certified computer that combines premium performance with responsible environmental manufacturing practices.

Key restored caches to the browser environment

A CI cache that includes downloaded browser artifacts should distinguish the Puppeteer/browser version and runner platform. Browser downloads are version- and platform-specific; reusing an artifact across incompatible versions or architectures can restore the wrong files. The Puppeteer documentation does not prescribe a cache-key format for a particular CI provider, so adapt the key to your provider and include the project’s pinned Puppeteer version and relevant OS/architecture inputs.

If the download host is unreachable or the wrong browser version is fetched

Check whether CI can reach Puppeteer’s configured download host. The Headless Shell configuration exposes a download base URL and version setting, with environment-variable overrides; the documented default host is Chrome for Testing’s public storage endpoint. A mirror can help when network policy blocks that host, but it must serve the expected artifact and preserve the required path layout. The base URL may need a path prefix and should not end in a slash.

Those option names and details are version-sensitive: some are documented in Puppeteer’s next-version configuration reference. Check the API reference matching the Puppeteer release in your lockfile before setting an override. Avoid changing both the browser version and the download host at once; change one variable, rerun the explicit installer, and inspect its logs.

Prefer Puppeteer’s bundled, pinned browser unless there is a specific operational reason to manage versions independently. Puppeteer maps releases to supported Chrome versions in its supported browsers guide, and its launch API cautions that an arbitrary executable path is not guaranteed to work. If you intentionally supply another browser, validate that exact Puppeteer/browser pairing rather than assuming any installed Chrome is interchangeable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Dell Optiplex 3050 SFF Desktop Computer PC, Intel Quad Core i5-6500 up to 3.6GHz, 16GB DDR4, 256GB SSD, WiFi, 4K Support, DP, HDMI, Windows 11 Pro 64 Bit (Renewed)
  • This Certified Refurbished product is tested and certified to look and work like new. The refurbishing process includes functionality testing, basic cleaning, inspection, and repackaging. The product ships with all relevant accessories, a minimum 90-day warranty, and may arrive in a generic box. Only select sellers who maintain a high-performance bar may offer Certified Refurbished products on Amazon.com.
  • Dell Optiplex 3050 SFF Desktop computer PC, Intel Quad Core i5-6500 up to 3.6GHz, 16GB DDR4, 256GB SSD
  • Includes: USB Keyboard & Mouse, USB WiFi adapter, Microsoft office 30 days free trail.
  • Port: Front: USB 3.0(2), USB 2.0(2); Rear: DP, HDMI, USB 3.0(2), USB 2.0(2), RJ-45.
  • Support 4K (3840x2160) Dual display, makes it easy to connect two monitors at the same time, and you can expand working Windows, mirror content, or expand a single window across multiple monitors.

If the download completes but extraction or launch fails

Check Node.js, operating system, and architecture

Compare the runner against the requirements for the Puppeteer version actually installed. The current Puppeteer system requirements page, version 25.12.0 at the time of the cited documentation, lists Node.js 22.12 or later and Chrome for Testing support on Windows x64; macOS x64 and arm64; Debian/Ubuntu Linux x64 and arm64; and openSUSE/Fedora Linux x64 and arm64. These requirements can change, so verify the page for the pinned release: Puppeteer system requirements.

Check archive extraction tools and Linux libraries

The same requirements page identifies tar and PowerShell or unzip as extraction prerequisites, unless the optional yauzl dependency is installed. If the installer downloaded an archive but could not unpack it, check the relevant tool and its availability in the runner image. If extraction succeeds but launch reports missing shared libraries, install the required Linux distribution packages for the supported environment; that is a runtime dependency issue, not evidence that the download itself failed.

Do not treat sandbox flags as a download fix

A sandbox or permissions error after the browser is present belongs to launch configuration. Puppeteer’s troubleshooting page includes Linux sandbox guidance, but its sandbox section is marked as mostly out of date. Do not add --no-sandbox as a universal CI remedy: first identify the specific launch error and apply an environment-appropriate fix.

A minimal CI verification sequence

  1. Confirm the dependency. Check the lockfile and installed package to determine whether the project uses puppeteer or puppeteer-core.
  2. Confirm the intended mode. Verify whether the code requests headless: 'shell' or regular headless Chrome.
  3. Install visibly. Run npx puppeteer browsers install after dependencies are installed, with lifecycle scripts allowed if relying on automatic installation.
  4. Keep paths stable. Set PUPPETEER_CACHE_DIR consistently if install and runtime do not share the default home directory.
  5. Check compatibility. Match Puppeteer version, browser artifact, Node version, operating system, architecture, and extraction tools.
  6. Separate stages in the logs. Determine whether the error is download, extraction, cache lookup, missing system library, or browser launch before changing configuration.
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 task is to capture website screenshots rather than run a full Puppeteer browser workflow, ScreenshotNeo is a website screenshot API and MCP server: one GET request with a URL returns a PNG, JPEG, WebP, or PDF. For example, see the API documentation for parameters and response details:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
Dell Windows 11 Desktop Computer OptiPlex 5060 | Intel Core i5-8500 Six Core (4.3GHz Turbo) | 16GB DDR4 RAM | 500GB SSD Solid State + 1TB HDD | WiFi + Bluetooth | Home or Office PC (Renewed)
  • Connectivity: Includes WiFi, Bluetooth, and LAN for wireless and wired connections
  • Memory: Features 16GB DDR4 RAM for smooth multitasking and performance
  • Storage: Combines 500GB SSD and 1TB HDD for ample storage space
  • Graphics: Integrated Intel UHD Graphics 630 for crisp visuals and video playback
  • Design: Sleek desktop tower with black color and slim profile for modern look
curl -G "https://api.screenshotneo.com/v1/shot" 
  -d access_key=YOUR_API_KEY 
  --data-urlencode url=https://stripe.com 
  -o shot.webp

ScreenshotNeo accepts cookie/consent banners before capture and removes more than 60 known consent platforms, newsletter popups, and chat widgets; those steps can be turned off. Bot checks, blank pages, timeouts, failed loads, and cache hits are not billed, and response headers identify the page verdict and billing status. Its MCP server provides take_screenshot, get_page_info, and capture_pdf for AI agents and MCP clients. The free plan includes 1,000 screenshots per month with no card; paid plans start at $5 for 3,000 shots. This is a screenshot service, not a replacement for Puppeteer when your tests need browser interaction or application-specific execution.

Sign up for ScreenshotNeo’s free plan: 1,000 screenshots a month with no card.

Frequently Asked Questions

Does Puppeteer install Chrome Headless Shell automatically?

The puppeteer package’s installation workflow downloads the browser artifacts, including Headless Shell since v21.6.0, unless installation scripts are blocked. puppeteer-core does not download a browser.

Can I switch to regular headless Chrome to fix a Headless Shell download failure?

Only if your use case can use regular headless Chrome instead. It uses a different browser mode and artifact, and may behave differently; it does not repair the shell download.

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

Is ScreenshotNeo a drop-in replacement for Puppeteer?

No. ScreenshotNeo provides website screenshot and PDF capture through an API and MCP tools; it does not replace Puppeteer for tests requiring custom browser interaction or application-specific execution.

Quick Recap

Bestseller No. 2
Dell Optiplex 7050 SFF Desktop PC Intel i7-7700 4-Cores 3.60GHz 32GB DDR4 1TB SSD WiFi BT HDMI Duel Monitor Support Windows 11 Pro Excellent Condition(Renewed)
Dell Optiplex 7050 SFF Desktop PC Intel i7-7700 4-Cores 3.60GHz 32GB DDR4 1TB SSD WiFi BT HDMI Duel Monitor Support Windows 11 Pro Excellent Condition(Renewed)
Model: Dell OptiPlex 7050 Small Form Factor (SFF); Processor: Intel Core i7-7700 3.60 GHz; Memory: 32GB DDR4 Ram
$399.99
Bestseller No. 4
Dell Optiplex 3050 SFF Desktop Computer PC, Intel Quad Core i5-6500 up to 3.6GHz, 16GB DDR4, 256GB SSD, WiFi, 4K Support, DP, HDMI, Windows 11 Pro 64 Bit (Renewed)
Dell Optiplex 3050 SFF Desktop Computer PC, Intel Quad Core i5-6500 up to 3.6GHz, 16GB DDR4, 256GB SSD, WiFi, 4K Support, DP, HDMI, Windows 11 Pro 64 Bit (Renewed)
Includes: USB Keyboard & Mouse, USB WiFi adapter, Microsoft office 30 days free trail.; Port: Front: USB 3.0(2), USB 2.0(2); Rear: DP, HDMI, USB 3.0(2), USB 2.0(2), RJ-45.
$179.98
Bestseller No. 5
Dell Windows 11 Desktop Computer OptiPlex 5060 | Intel Core i5-8500 Six Core (4.3GHz Turbo) | 16GB DDR4 RAM | 500GB SSD Solid State + 1TB HDD | WiFi + Bluetooth | Home or Office PC (Renewed)
Dell Windows 11 Desktop Computer OptiPlex 5060 | Intel Core i5-8500 Six Core (4.3GHz Turbo) | 16GB DDR4 RAM | 500GB SSD Solid State + 1TB HDD | WiFi + Bluetooth | Home or Office PC (Renewed)
Connectivity: Includes WiFi, Bluetooth, and LAN for wireless and wired connections; Memory: Features 16GB DDR4 RAM for smooth multitasking and performance
$255.00

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.