Recommended Free Tools
In Puppeteer v25.12.0, CommandOptions documents one property: timeout, with type number. Its API reference does not explain what operation it applies to, what units it uses, or what its default is. Do not assume it means the same thing as LaunchOptions.timeout, which is documented separately as the maximum time to wait for a browser to start.
What is Puppeteer CommandOptions?
CommandOptions is an interface in Puppeteer’s v25.12.0 API reference. The interface page lists a single property, timeout, of type number. The page does not provide a description or default for it, so the reference alone does not establish its purpose, units, or runtime behavior.
See the Puppeteer CommandOptions API reference for the versioned property listing. No additional CommandOptions fields or semantics are established there.
What does CommandOptions.timeout do?
The official interface page does not say. It lists timeout: number, but does not identify the operation being timed, specify whether the value is milliseconds, or give a default. Treat those details as undocumented by this reference rather than inferring them from a similarly named property.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitches#1 Best Overall
How is it different from LaunchOptions.timeout?
LaunchOptions.timeout is a distinct setting passed to browser launch. In Puppeteer v25.12.0, its documented meaning is the maximum time in milliseconds to wait for a browser to start. Its listed default is 30,000 milliseconds (30 seconds), and setting it to 0 disables that timeout. Those details apply to LaunchOptions.timeout; the API page does not say they apply to CommandOptions.timeout.
LaunchOptions is the set of general options passed when launching a browser and extends ConnectOptions. Among its documented properties are args, browser, channel, debuggingPort, devtools, dumpio, env, executablePath, headless, ignoreDefaultArgs, pipe, signal, timeout, userDataDir, and waitForInitialPage. Consult the LaunchOptions API reference for the current documented launch settings.
Rank #2
How to choose and configure Puppeteer’s browser
The package and browser choice matter when using launch(); they do not clarify the separate CommandOptions.timeout property.
- Standard
puppeteer: Puppeteer downloads and uses a specific Chrome version by default. Its bundled Chrome for Testing build is the compatibility baseline documented by the project. puppeteer-core: When callinglaunch(), provide eitherexecutablePathorchannel. Puppeteer configuration files and environment variables are ignored bypuppeteer-core.- External browser binary: The configuration guide shows
executablePathfor using another Chrome or Chromium binary. Puppeteer says compatibility is only guaranteed with its bundled browser; when using an external executable, it advises settingbrowseras well.
The launch reference also distinguishes headless modes: headless: true selects new headless mode, while headless: 'shell' selects the old headless mode. Setting devtools: true forces headless to false. ignoreDefaultArgs can remove selected default arguments or disable all default arguments, but Puppeteer cautions that it should be used carefully. These launch details are documented in the launch method reference and configuration guide.
Rank #3
Or skip the browser setup
If your goal is to capture a website rather than automate a browser session, ScreenshotNeo offers a screenshot API and MCP server for developers. One GET request can return a PNG, JPEG, WebP, or PDF. Cookie banners, newsletter popups, and chat widgets are removed before capture; bot checks, blank pages, timeouts, failed loads, and cache hits are not billed. Its MCP server lets AI agents use take_screenshot, get_page_info, and capture_pdf.
For API options and response details, see the ScreenshotNeo documentation. Example request:
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 per month with no card required; paid plans start at $5 for 3,000 screenshots. Sign up for ScreenshotNeo’s free plan.
Common points of confusion
- Assuming the two timeout properties are interchangeable: They belong to different interfaces. The launch timeout’s startup meaning and default are not documented for
CommandOptions.timeout. - Assuming
CommandOptions.timeoutis measured in milliseconds: The CommandOptions property table does not state a unit. - Using
puppeteer-corewithout selecting a browser: SupplyexecutablePathorchanneltolaunch(). - Expecting configuration files or environment variables to configure
puppeteer-core: The project’s configuration guide says they are ignored by that package. - Using a different Chrome build and expecting guaranteed compatibility: Puppeteer identifies its bundled Chrome for Testing build as the supported baseline; another executable is not guaranteed.
FAQ
What is Puppeteer’s default launch timeout?
The documented default for LaunchOptions.timeout is 30,000 milliseconds (30 seconds). The CommandOptions reference gives no default for its timeout property.
Does CommandOptions.timeout: 0 disable the timeout?
The CommandOptions page does not define what zero means. Zero is documented as disabling the timeout only for LaunchOptions.timeout.
Quick Recap
Best Value
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.




