Labs

10,000 blocks.
One frame.

Load a whole book into a real Nabu editor, then type anywhere in it. The meter times every keystroke, from the key to the pixels.

Load

Starting the editor…

Key to next paint

n/a

Waiting for the document…

one frame · 16.7 ms

p50
n/a
p95
n/a
keys
0

Engine work · p50 n/a

How we measure

Key to next paint

The clock starts at the keyboard event's own timestamp: the moment the browser received the key, so any time the key spent waiting behind other work counts. It stops at the first frame painted after the text on screen has been updated. It is the idea behind the browser's "Interaction to Next Paint", applied to every keystroke. This is the big number.

Engine work

Same start, but it stops as soon as the text of the edited block has changed in the page, before the browser lays out and paints. It is what Nabu itself spends, without the browser's share. A detail, shown in small.

The budget

16.7 ms is one frame on a 60 Hz screen. A keystroke on screen within one frame cannot be told from an instant one. On a 120 Hz screen the frame is 8.3 ms, and the first keys of a session are slower while the browser warms up. p50 is the typical keystroke, p95 the slow one in twenty, both since the document was loaded.

Your machine, your numbers

Everything runs in your browser, on your device: the document is generated here, nothing is saved, nothing is sent anywhere. The results depend on your CPU, your browser, your screen's refresh rate and the extensions you run.