Northstar Supply

Render time comparison

The same request data rendered in this server process by all three renderers, after a warm-up. Times are for the render call alone (performance.now()), interleaved per input so the three see the same machine load. A specialized renderer that meets data it was not specialized for hands that request to React; the “fell back” column is the share of inputs where that happened (the HTML is identical either way).

Store pages · 200 inputs × 5 rounds

random live requests: home, categories, search, product pages, cart, sign-in, 404

renderermedianp90meanspeedupfell back to React
React 182.2 µs482.8 µs245.6 µs 1.00× –
Prepack 40.5 µs100.8 µs47.8 µs 4.50× 0.0% (0/200)
Hybrid 35.0 µs94.1 µs50.9 µs 5.21× 0.0% (0/200)

HTML byte-identical across all three: 200/200 inputs

Whole catalog · 5 inputs × 5 rounds

the “View all” listing: 192 products, ~300 KB of HTML

renderermedianp90meanspeedupfell back to React
React 3.00 ms4.94 ms3.36 ms 1.00× –
Prepack 529.4 µs641.7 µs553.6 µs 5.66× 0.0% (0/5)
Hybrid 530.2 µs590.1 µs534.2 µs 5.65× 0.0% (0/5)

HTML byte-identical across all three: 5/5 inputs

Measured in 1.9 s on 8 vCPUs, Node v26.7.0. About this demo · Open the store