Skip to content

High CPU usage when scrolling #3409

@fbmcipher

Description

@fbmcipher

A performance issue I spotted while researching performance impact of will-change. This happens in Chrome too, but it's easier to see in Safari.

Steps to Reproduce

  1. Open em on an iPhone or a simulator.
  2. Attach Safari DevTools, and enable compositing borders to show repaint counters for each element.
  3. Scroll up and down slowly.

Current Behavior

Static elements like the scroll zone and the toolbar excessively while the viewport scrolls. See the number on the scroll zone, for example, which rapidly rises – showing 274+ repaints even though its content hasn't changed at all.

Screen.Recording.2025-11-28.at.02.31.36.mov

This measurably thrashes the main thread, taking up more than 50% of the CPU cycles during a profile of the screen recording above:

Image

Expected Behavior

Elements shouldn't repaint as the user scrolls.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions