Puppeteer: Unsupported unserializable value:
A CDP remote object has an unserializableValue token the decoder does not recognize.
A CDP remote object has an unserializableValue token the decoder does not recognize.
Error message
Unsupported unserializable value:
How this error happens
CDP reports some primitives with an unserializableValue token. Puppeteer only decodes tokens it recognizes; a malformed token from an incompatible browser or custom transport violates that contract.
The failing block shows protocol data. The fix uses an open page named page.
{
"type": "number",
"unserializableValue": "not-a-number-token"
}
How to fix
Use a compatible browser and normal transport. For application data, request ordinary serializable fields through public evaluation rather than editing remote-object tokens.
const value = await page.evaluate(() => {
return {
count: 3,
};
});
console.log(value);
Things to keep in mind
The JSON is an example of an invalid protocol response, not a browser value that normal page JavaScript can manufacture. There is no public snippet that makes a healthy browser emit an arbitrary decoder token.