JS Engine & Runtime bench - Featured Image
Web development7 min read

JS Engine & Runtime bench

This benchmark compares 32 JavaScript engines and runtimes across different platforms, evaluating their performance using various test suites including Richards, DeltaBlue, Crypto, RayTrace, EarleyBoyer, RegExp, Splay, and NavierStokes.

Benchmark Date: July 7, 2025, 1:54:50 AM

Top Performing Engines (Overall Score)

Tier 1: Elite Performance (40,000+ Score)

šŸ„‡ Bun - Score: 47,990 | Size: 97.2M | Efficiency: 493/MB → Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/oven-sh/bun, https://github.com/oven-sh/setup-bun

🄈 JavaScriptCore - Score: 47,659 | Size: 37.4M | Efficiency: 1,272/MB → WebKit's built-in JavaScript engine implementing ECMAScript ECMA-262 → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/WebKit/webkit/tree/main/Source/JavaScriptCore, https://github.com/ahaoboy/jsc-build

šŸ„‰ V8 - Score: 45,318 | Size: 53.3M | Efficiency: 850/MB → Google's open source high-performance JavaScript and WebAssembly engine → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://v8.dev, https://github.com/ahaoboy/v8-build

Deno - Score: 41,077 | Size: 103.1M | Efficiency: 398/MB → Modern runtime for JavaScript and TypeScript → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/denoland/deno

Node.js - Score: 40,199 | Size: 121.6M | Efficiency: 330/MB → Traditional Node.js JavaScript runtime → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/nodejs/node

Tier 2: High Performance (20,000-39,999 Score)

Dune - Score: 39,376 | Size: 67.1M | Efficiency: 586/MB → Hobby runtime for JavaScript and TypeScript → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/aalykiot/dune

ChakraCore - Score: 20,101 | Size: 19.4M | Efficiency: 1,035/MB → Microsoft's open source JavaScript engine with C API → Platforms: āœ… Unix, āŒ macOS ARM, āœ… macOS AMD, āœ… Windows | Links: https://github.com/chakra-core/ChakraCore, https://github.com/ahaoboy/ChakraCore-build

Tier 3: Mid Performance (10,000-19,999 Score)

SpiderMonkey - Score: 18,955 | Size: 40M | Efficiency: 473/MB → Mozilla's JavaScript and WebAssembly Engine, used in Firefox https://spidermonkey.dev, https://github.com/ahaoboy/spidermonkey-build

MozJS - Score: 17,111 | Size: 35.2M | Efficiency: 485/MB → Rust bindings to SpiderMonkey → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āŒ Windows | Links: https://github.com/servo/mozjs, https://github.com/ahaoboy/mozjs-cli

GraalJS - Score: 13,349 | Size: 199.7M | Efficiency: 66/MB → ECMAScript 2023 compliant with polyglot language interoperability | Links: https://github.com/oracle/graaljs

Tier 4: Experimental / Low Performance (Below 10,000 Score)

JJS - Score: 5,940 | Size: 3.4M | Efficiency: 1,747/MB → Small JavaScript interpreter written by Fabrice Bellard → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āŒ Windows | Links: https://github.com/openjdk/nashorn

Hermes - Score: 4,239 | Size: 35.2M | Efficiency: 120/MB → JavaScript engine optimized for React Native → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows → | Links: https://github.com/facebook/hermes

QuickJS - Score: 3,350 | Size: 1.6M | Efficiency: 2,094/MB → Small and embeddable JavaScript engine → Platforms: āœ… Unix, āœ… macOS ARM, āœ… macOS AMD, āœ… Windows → | Links: https://github.com/bellard/quickjs, https://github.com/ahaoboy/quickjs-build

Other JavaScript Engines

Primjs – 772ā˜… | 857K downloads | 922/M āœ… Unix, āœ… macArm, āœ… macAmd, āŒ Windows | JavaScript Engine Optimized for Lynx | Links: https://github.com/lynx-family/primjs, https://github.com/ahaoboy/primjs-build

Rquickjs – 713ā˜… | 1.3M downloads | 529/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows | High level bindings to the quickjs javascript engine | Links: https://github.com/DelSkayn/rquickjs, https://github.com/ahaoboy/rquickjs-cli

Quickjs-ng – 651ā˜… | 2M downloads | 330/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows QuickJS, the Next Generation: a mighty JavaScript engine | Links: https://github.com/quickjs-ng/quickjs

Ladybird – 568ā˜… | 45.8M downloads | 12/M āœ… Unix, āœ… macArm, āŒ macAmd, āŒ Windows Truly independent web browser | Links: https://github.com/LadybirdBrowser/ladybird, https://github.com/ahaoboy/ladybird-js-build

Duktape – 506ā˜… | 2.1M downloads | 238/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows Embeddable Javascript engine with a focus on portability and compact footprint | Links: https://github.com/svaarala/duktape, https://github.com/ahaoboy/duktape-build

Mujs-one – 397ā˜… | 685K downloads | 593/M āœ… Unix, āŒ macArm, āŒ macAmd, āŒ Windows mujs by c2rust | Links: https://github.com/ahaoboy/mujs-one

Mujs – 358ā˜… | 414.5K downloads | 884/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows An embeddable Javascript interpreter in C | Links: https://github.com/ccxvii/mujs, https://github.com/ahaoboy/mujs-build

Goja – 278ā˜… | 13.2M downloads | 21/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows ECMAScript/JavaScript engine in pure Go | Links: https://github.com/dop251/goja, https://github.com/ahaoboy/goja-build

Xst – 270ā˜… | 2.1M downloads | 130/M āœ… Unix, āœ… macArm, āœ… macAmd, āŒ Windows JavaScript on microcontrollers for open IoT | Links: https://github.com/Moddable-OpenSource/moddable

Jint – 188ā˜… | 69M downloads | 2/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows Javascript Interpreter for .NET | Links: https://github.com/sebastienros/jint, https://github.com/ahaoboy/jint-cli

Boa – 107ā˜… | 27M downloads | 3/M āœ… Unix, āŒ macArm, āœ… macAmd, āœ… Windows Experimental Javascript engine written in Rust | Links: https://github.com/boa-dev/boa

Kiesel – 106ā˜… | 12.6M downloads | 8/M āœ… Unix, āœ… macArm, āœ… macAmd, āœ… Windows JavaScript engine written in Zig | Links: https://codeberg.org/kiesel-js/kiesel, https://github.com/ahaoboy/kiesel-build

JerryScript – 454.2K downloads āŒ Unix, āŒ macArm, āŒ macAmd, āŒ Windows Ultra-lightweight JavaScript engine for the Internet of Things | Links: https://github.com/jerryscript-project/jerryscript, https://github.com/ahaoboy/jerryscript-build

Nova – No stats |āŒ Unix, āŒ macArm, āŒ macAmd, āŒ Windows JavaScript and WebAssembly engine written in Rust | Links: https://github.com/trynova/nova

Engine262 – 7.3K downloads āŒ Unix, āŒ macArm, āŒ macAmd, āŒ Windows Implementation of ECMA-262 in JavaScript | Links: https://github.com/engine262/engine262

Rhino – 1.1G downloads āŒ Unix, āŒ macArm, āŒ macAmd, āŒ Windows JavaScript in Java (open-source by Mozilla) | Links: https://github.com/mozilla/rhino

Njs – 8.4M downloads āŒ Unix, āŒ macArm, āŒ macAmd, āŒ Windows Subset of JavaScript for nginx | Links: https://github.com/nginx/njs, https://github.com/ahaoboy/njs-build


Platform-Specific Performance Analysis

Ubuntu Champions

šŸ† Bun        47,990 points  (97.2M)
🄈 JSCore     47,659 points  (37.4M)
šŸ„‰ V8         45,318 points  (53.3M)
4th Deno      41,077 points  (103.1M)
5th Node.js   40,199 points  (121.6M)

macOS ARM64 Champions

šŸ† JSCore     66,032 points  (94.2M)
🄈 Bun        64,688 points  (56.4M)
šŸ„‰ Deno       55,881 points  (83.6M)
4th Dune      55,772 points  (57.4M)
5th Node.js   55,578 points  (110.7M)

macOS AMD64 Champions

šŸ† Bun        41,304 points  (61.9M)
🄈 V8         40,755 points  (861K)
šŸ„‰ JSCore     38,628 points  (89.6M)
4th Deno      36,062 points  (94.1M)
5th Node.js   33,904 points  (113.5M)

Windows Champions

šŸ† V8         44,521 points  (52.6M)
🄈 Bun        43,691 points  (131.9M)
šŸ„‰ JSCore     43,208 points  (122.8M)
4th Node.js   39,446 points  (115.8M)
5th Dune      38,960 points  (78.7M)

Efficiency Champions (Score per MB)

Most Bang for Buck

V8 (macOS AMD64) → 48,470 points per MB (861K total) JavaScriptCore → 1,272 points per MB (37.4M total) Bun (macOS ARM64) → 1,145 points per MB (56.4M total) ChakraCore → 1,035 points per MB (19.4M total) PrimJS → 922 points per MB (857K total)

Lightweight Performers

MuJS → 884 points per MB (414.5K total) Dune → 586 points per MB (67.1M total) MuJS-One → 593 points per MB (685K total) RQuickJS → 529 points per MB (1.3M total) Bun → 493 points per MB (97.2M total)


Individual Test Champions

Richards Benchmark Leaders

šŸ† Bun (macOS ARM64)         51,947 points
🄈 JavaScriptCore (macOS ARM64) 51,389 points
šŸ„‰ Deno (macOS ARM64)        48,533 points

DeltaBlue Benchmark Leaders

šŸ† Dune (macOS ARM64)        108,473 points
🄈 Deno (macOS ARM64)        104,863 points
šŸ„‰ Node.js (macOS ARM64)     104,361 points

Crypto Benchmark Leaders

šŸ† JavaScriptCore (macOS ARM64) 72,778 points
🄈 Bun (macOS ARM64)         71,140 points
šŸ„‰ Node.js (macOS ARM64)     59,764 points

RayTrace Benchmark Leaders

šŸ† JavaScriptCore (macOS ARM64) 185,589 points
🄈 Bun (macOS ARM64)         175,895 points
šŸ„‰ JavaScriptCore (Ubuntu)   117,066 points

Platform Compatibility Matrix

Universal Champions (All Platforms)

Bun, JavaScriptCore, V8, Deno, Node.js, Dune, SpiderMonkey, GraalJS, Hermes, LLRT, QuickJS, Duktape, MuJS, Goja, Jint, Kiesel

Limited Platform Support

MozJS → Missing Windows support ChakraCore → Missing macOS ARM support PrimJS → Missing Windows support MuJS-One → Unix only Boa → Missing macOS ARM support


Key Insights & Recommendations

Performance Trends

šŸ’” ARM64 Advantage: Many engines show 20-40% better performance on Apple Silicon šŸ’” Size Efficiency: Smaller isn't always better - JavaScriptCore excels in both size and performance šŸ’” Platform Optimization: V8 shows exceptional efficiency on certain platforms

Best Use Cases

Production Applications → Bun, JavaScriptCore, V8 Development/Testing → Deno, Node.js Embedded Systems → QuickJS, Duktape, MuJS Experimental Projects → Dune, LLRT, Hermes

Winner by Category

šŸ† Overall Champion: Bun (Best all-around performance) šŸ† Efficiency King: JavaScriptCore (Best score-to-size ratio) šŸ† Speed Demon: V8 (Platform-specific optimization) šŸ† Lightweight Champion: MuJS (Smallest footprint with decent performance)


Execution Time Analysis

Fastest Execution (20 seconds)

Bun, JavaScriptCore, V8, Deno, Node.js, Dune, SpiderMonkey, MozJS

Moderate Execution (21-50 seconds)

ChakraCore, GraalJS, Hermes, QuickJS variants

Slower Execution (50+ seconds)

Lightweight engines like MuJS, Duktape, Goja - acceptable trade-off for size


This benchmark provides a comprehensive overview of JavaScript engine performance across different platforms and use cases. Choose the engine that best fits your specific requirements for performance, size, and platform compatibility.

Posted on: 09/7/2025

Posted by

ā€Œ
ā€Œ
ā€Œ
ā€Œ

Subscribe to our newsletter

Join 2,000+ subscribers

Stay in the loop with everything you need to know.

We care about your data in our privacy policy

Background shadow leftBackground shadow right

Have something to share?

Write on the platform and dummy copy content

Be Part of Something Big

Shifters, a developer-first community platform, is launching soon with all the features. Don't miss out on day one access. Join the waitlist: