(Created on )

Puppeteer: Provider is required for installation

An internal browser installUrl call lacks its provider object.


An internal browser installUrl call lacks its provider object.

Error message

Provider is required for installation

How this error happens

Puppeteer’s internal URL installer received no provider. Normal public install calls create a default provider; a plugin or direct internal call that bypasses that setup can break the invariant.

Use the first snippet to narrow the failure to a normal public installation flow.

import {
    Browser,
    BrowserPlatform,
    install,
    resolveBuildId,
} from "@puppeteer/browsers";

const buildId = await resolveBuildId(
    Browser.CHROME,
    BrowserPlatform.LINUX,
    "stable"
);

await install({
    cacheDir: "/absolute/path/browser-cache",
    browser: Browser.CHROME,
    platform: BrowserPlatform.LINUX,
    buildId,
});

How to fix

Use the public installer and omit custom provider overrides unless you intentionally own them. For a standard Puppeteer project, its CLI supplies the normal provider setup.

npx puppeteer browsers install

Things to keep in mind

The public example is the installation entry point, not a deterministic reproduction: it supplies the default provider automatically. If the missing-provider error still appears there, isolate a custom integration rather than constructing private installer arguments.

All Puppeteer errors

Keep Reading

Puppeteer Guides

All Guides →