Skip to content

Rule · Lint

will-change applied statically to many elements

lint/will-change-staticwarnvoid lintupdated

Why it matters

Each will-change layer costs GPU memory; applied statically (or to html/body) it can make rendering slower, blur text and exhaust memory on low-end phones.

How to fix it

Remove static will-change. Set it only just before an interaction/animation (and remove after), or rely on the browser's own layer promotion for transform/opacity animations.

Example

ts
el.style.willChange = 'transform'   // on pointerdown
el.style.willChange = 'auto'        // on transitionend

References

void lint reports 67 rules in this category. Static source checks with no browser: Tailwind v4 silent failures, Next.js 16 API traps, React render-body bugs, accessibility markup, SEO files and motion hygiene.