Tainted Canvas May 2026

Once a canvas is "tainted," it is no longer considered "origin-clean," and the browser blocks functions that allow you to read its pixel data:

: The content remains visible to the user, but it cannot be programmatically read back or saved by scripts. Why It Exists Tainted Canvas

: You cannot use toDataURL() , toBlob() , or captureStream() . Once a canvas is "tainted," it is no

: Attempting to use getImageData() will throw a SecurityError . Once a canvas is "tainted