Custom object serialization not possible. Use plain objects instead.

How to fix the Puppeteer error: Custom object serialization not possible. Use plain objects instead.


Error

Custom object serialization not possible. Use plain objects instead.

What it means

Puppeteer raised this from its WebDriver BiDi 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

  • This API is not available through the WebDriver BiDi connection yet.
  • Use the default CDP connection for this feature, or remove the unsupported option when launching/connecting with BiDi.

Minimal guard

try {
  // Run the Puppeteer operation that triggers this error.
} catch (error) {
  if (error instanceof Error && error.message.includes("Custom object serialization not possible")) {
    // Apply the fix above, then retry or fail with a clearer message.
  }
  throw error;
}

Keep Reading

Puppeteer Guides

All Guides →