Does Hotjar work with Flutter web?
No, Hotjar does not work on Flutter web. Its recordings come back blank and its heatmaps have nothing to anchor to, because Hotjar records the DOM and a Flutter web app exposes no DOM.
Hotjar recordings and heatmaps are built on reading and replaying the DOM. The snippet observes DOM elements, mutations, and pointer positions relative to those elements.
The reason is how Flutter web renders. It does not draw your interface to the DOM. With the CanvasKit renderer (a WebAssembly build of Google’s Skia graphics engine, and the production default for most Flutter web apps) and the newer Skwasm renderer, Flutter paints the entire UI as pixels onto one HTML canvas element. To the browser, and to any tool that reads the DOM, your app is a single opaque rectangle. No buttons, no text nodes, nothing to attach to.
A Flutter web app exposes a single canvas instead of a DOM tree. Hotjar has nothing to record, and nothing to anchor its heatmaps against. You get blank recordings and heatmaps that point at no UI element in particular.
It is not a configuration problem
Teams often spend hours re-checking their Hotjar install, sure they have misconfigured something. They have not. The limitation is architectural: no DOM-based recorder, Hotjar included, can reconstruct a UI that was never expressed as DOM in the first place.
A Flutter-native alternative
Pixeltrace records the frames Flutter draws, so you get a real replay on Flutter web instead of the empty box Hotjar leaves you with. Because it starts from the canvas rather than the DOM, there's no install to second-guess and nothing to misconfigure. Recording either happens or it doesn't.
Pixeltrace isn't generally available yet. Add your email to the waitlist for launch notification.