(Created on )

Puppeteer: targetManager is not initialized

A target's internal target manager was not initialized.


A target’s internal target manager was not initialized.

Error message

targetManager is not initialized

How this error happens

A target was used before its target manager was initialized. This is an internal initialization or registry check, not an application input validator.

Use a running Chrome/CDP browser named browser. The following is a lifecycle race to rule out.

const page = await browser.newPage();

await Promise.all([
    page.createCDPSession(),
    page.close(),
]);

Creation and shutdown overlap in this example. Depending on event order, Puppeteer may report a target/session-closed error instead. It is not a deterministic reproduction of this particular registry message.

How to fix

Keep the browser and context alive until creation and page work finish. Run the corrected sequence with a fresh live browser.

const page = await browser.newPage();
const session = await page.createCDPSession();

try {
    await session.send(
        "Runtime.enable"
    );
} finally {
    await session.detach();
    await page.close();
}

Things to keep in mind

If this exact initialization error persists with sequential public API calls, retain the full stack and a minimal reproduction and report the browser/Puppeteer failure. Do not manufacture target IDs, initialize private maps, or retry an external side effect blindly.

All Puppeteer errors

Keep Reading

Puppeteer Guides

All Guides →