fastify/benchmarks

Fast and low overhead web framework fastify benchmarks

JavaScript

634

442 commits

updated Oct 19, 2026

See the code

README

CI Package Manager
CI Web
site neostandard javascript style CII Best Practices

NPM
version NPM
downloads Security Responsible
Disclosure Discord Contribute with Gitpod Open Collective backers and sponsors


TL;DR

  • Fastify is a fast and low overhead web framework for Node.js.
  • This package shows how fast it is compared to other JS frameworks: these benchmarks do not pretend to represent a real-world scenario, but they give a good indication of the framework overhead.
  • The benchmarks are run automatically on GitHub actions, which means they run on virtual hardware that can suffer from the "noisy neighbor" effect; this means that the results can vary.
  • For metrics (cold-start) see metrics.md

Requirements

To be included in this list, the framework should captivate users' interest. We have identified the following minimal requirements:

  • Ensure active usage: a minimum of 500 downloads per week
  • Maintain an active repository with at least one event (comment, issue, PR) in the last month
  • The framework must use the Node.js HTTP module

Usage

Clone this repo. Then

node ./benchmark [arguments (optional)]

Arguments

  • -h: Help on how to use the tool.
  • bench: Benchmark one or more modules.
  • compare: Get comparative data for your benchmarks.

Create benchmark before comparing; benchmark bench

You may also compare all test results, at once, in a single table; benchmark compare -t

You can also extend the comparison table with percentage values based on fastest result; benchmark compare -p

Benchmarks

  • Machine: linux x64 | 4 vCPUs | 15.6GB Mem
  • Node: v24.21.0
  • Run: Mon Oct 12 2026 16:26:53 GMT+0000 (Coordinated Universal Time)
  • Method: autocannon -c 100 -d 40 -p 10 localhost:3000 (two rounds; one to warm-up, one to measure)
VersionRouterRequests/sLatency (ms)Throughput/Mb
fastify5.12.5✓89257.610.6816.00
node-httpv24.21.0✗88876.810.7715.85
0http5.1.1✓88459.210.8015.78
restana6.1.0✓88012.810.9015.70
polka0.5.2✓86872.011.0415.49
connect3.7.0✗86849.611.0615.49
hono4.13.13✓84884.811.3013.92
connect-router2.2.0✓83936.011.4414.97
micro10.0.1✗83062.411.5614.81
srvx1.0.5✗81238.411.8713.17
adonisjs9.3.1✓80232.012.0514.31
elysia1.4.30✓77915.212.2912.78
h32.0.1-rc.32✓76521.612.5613.43
koa3.2.1✗75681.612.7813.50
whatwg-node-server0.13.0✗71952.013.3812.83
koa-router15.7.0✓70249.613.7312.53
restify12.0.0✓65248.014.8411.76
hapi21.4.10✓62316.015.5511.11
express5.2.1✓62053.615.6311.07
microrouter3.1.3✓57695.216.8410.29
express-with-middlewares5.2.1✓53272.818.2819.81
fastify-big-json5.12.5✓25612.438.53294.71
trpc-router11.19.0✓21496.446.004.90
fastest
fastify
fastify-library
framework
nodejs
web

fastify/benchmarks

Fast and low overhead web framework fastify benchmarks

JavaScript

634

442 commits

updated Oct 19, 2026

See the code

README

CI Package Manager
CI Web
site neostandard javascript style CII Best Practices

NPM
version NPM
downloads Security Responsible
Disclosure Discord Contribute with Gitpod Open Collective backers and sponsors


TL;DR

  • Fastify is a fast and low overhead web framework for Node.js.
  • This package shows how fast it is compared to other JS frameworks: these benchmarks do not pretend to represent a real-world scenario, but they give a good indication of the framework overhead.
  • The benchmarks are run automatically on GitHub actions, which means they run on virtual hardware that can suffer from the "noisy neighbor" effect; this means that the results can vary.
  • For metrics (cold-start) see metrics.md

Requirements

To be included in this list, the framework should captivate users' interest. We have identified the following minimal requirements:

  • Ensure active usage: a minimum of 500 downloads per week
  • Maintain an active repository with at least one event (comment, issue, PR) in the last month
  • The framework must use the Node.js HTTP module

Usage

Clone this repo. Then

node ./benchmark [arguments (optional)]

Arguments

  • -h: Help on how to use the tool.
  • bench: Benchmark one or more modules.
  • compare: Get comparative data for your benchmarks.

Create benchmark before comparing; benchmark bench

You may also compare all test results, at once, in a single table; benchmark compare -t

You can also extend the comparison table with percentage values based on fastest result; benchmark compare -p

Benchmarks

  • Machine: linux x64 | 4 vCPUs | 15.6GB Mem
  • Node: v24.21.0
  • Run: Mon Oct 12 2026 16:26:53 GMT+0000 (Coordinated Universal Time)
  • Method: autocannon -c 100 -d 40 -p 10 localhost:3000 (two rounds; one to warm-up, one to measure)
VersionRouterRequests/sLatency (ms)Throughput/Mb
fastify5.12.5✓89257.610.6816.00
node-httpv24.21.0✗88876.810.7715.85
0http5.1.1✓88459.210.8015.78
restana6.1.0✓88012.810.9015.70
polka0.5.2✓86872.011.0415.49
connect3.7.0✗86849.611.0615.49
hono4.13.13✓84884.811.3013.92
connect-router2.2.0✓83936.011.4414.97
micro10.0.1✗83062.411.5614.81
srvx1.0.5✗81238.411.8713.17
adonisjs9.3.1✓80232.012.0514.31
elysia1.4.30✓77915.212.2912.78
h32.0.1-rc.32✓76521.612.5613.43
koa3.2.1✗75681.612.7813.50
whatwg-node-server0.13.0✗71952.013.3812.83
koa-router15.7.0✓70249.613.7312.53
restify12.0.0✓65248.014.8411.76
hapi21.4.10✓62316.015.5511.11
express5.2.1✓62053.615.6311.07
microrouter3.1.3✓57695.216.8410.29
express-with-middlewares5.2.1✓53272.818.2819.81
fastify-big-json5.12.5✓25612.438.53294.71
trpc-router11.19.0✓21496.446.004.90
fastest
fastify
fastify-library
framework
nodejs
web

Project health

Overall

7.3/10

Maintained

10/10

Code review

1/10
OpenSSF Scorecard

Latest release

1.0.0 · Mar 1, 2019

Releases this year

0

Significant stargazers

Antonio Tripodi

226 followers · starred Jun 2026

Daiki Ihara

72 followers · starred May 2021

HE Shi-Jun

4,693 followers · starred May 2020

Andrei Pechkurov

426 followers · starred Jan 2020