Frame detached.
How to fix the Puppeteer error: Frame detached.
Error
Frame detached.
What it means
Puppeteer raised this from its frame and evaluation code. In practice, it usually means your script reached a browser, page, frame, element, or option state that the API cannot use safely.
How to fix it
- Do not keep handles across navigations, reloads, iframe removals, or worker shutdowns.
- Wait for navigation to settle, then query the element again in the current frame.
- Wrap actions that can trigger navigation in
Promise.all([page.waitForNavigation(...), action]).
Minimal guard
try {
// Run the Puppeteer operation that triggers this error.
} catch (error) {
if (error instanceof Error && error.message.includes("Frame detached.")) {
// Apply the fix above, then retry or fail with a clearer message.
}
throw error;
}