Docs

Benchmarks

Compare Niral SSR throughput and hydration with other web frameworks. Review test conditions, measured results and reproducible benchmark methodology.

On this page 3 sections

Identical 1000-row SSR'd apps per framework, same machine, alternating-order runs, medians reported. Full methodology lives in the repo under bench/hydration/ and bench/e2e/ — run them yourself.

End-to-end — real production servers

The whole request path: each framework's own production server, dynamic SSR on every request, no caching, 100 connections for 10 seconds. Zero errors for every framework.

Frameworkreq/sp50p99build
niral~2,37439 ms81 ms0.2 s
solidstart 1~1,88543 ms151 ms4.9 s
astro 5~698140 ms338 ms1.3 s
sveltekit 2~599137 ms~1.1 s2.9 s
next 16~303305 ms~2.3 s3.9 s

niral leads every JS meta-framework on throughput — ~1.3× SolidStart (the closest rival), ~3.4× Astro, ~4× SvelteKit, ~7.8× Next.js — with the best tail latency (p99 81 ms while every other exceeds 150 ms) and the lowest memory.

Hydration (parse start → interactive)

Frameworkmedianp90JS shipped
niral6.6 ms9.1 ms29.7 KB
svelte 56.4 ms15.8 ms51.1 KB (min)
react 1920.3 ms22.5 ms189.0 KB (min)

Server rendering (renders/second, same page)

Frameworkms/renderrenders/sec
svelte 50.18~5,600
niral0.18–0.24~4,200–5,500
react 192.5~395

Niral compiles a second, string-concatenation renderer per component — server output is byte-identical to what hydration expects, with none of the tree cost.

Numbers vary with hardware and load; compare within one session and prefer medians. The bench is deliberately reproducible — we'd rather you check.