Execution context is not available in detached frame or worker '{value}' (are you tryin...

How to fix the Puppeteer error: Execution context is not available in detached frame or worker '{value}' (are you tryin...


Error

Execution context is not available in detached frame or worker "${this.environment.url()}" (are you trying to evaluate?)

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("Execution context is not available in de")) {
    // Apply the fix above, then retry or fail with a clearer message.
  }
  throw error;
}

Keep Reading

Puppeteer Guides

All Guides →