Skip to content

Benchmark results ​

These are measured results produced by the Neuron-JS benchmark harness (yarn benchmark). They compare @sebasoft/neuron-js against json-rules-engine, json-logic-js, a hand-coded TypeScript baseline, and rule-engine-js across the pricing, eligibility, and workflow-routing scenarios. See the methodology for how each metric is collected.

Numbers reflect a single machine, Node version, and commit; reproduce locally before citing. No value on this page is hand-entered — charts and the table below are generated from the same source file.

Provenance ​

FieldValue
Generated2026-09-26T00:22:19.273Z
Nodev24.15.0
Commit470bee60e69375dd2c3738a393ac3670b6132c53
Neuron-JS version0.7.5
Commandyarn benchmark
Raw sourcebenchmarks/results/latest.actual.json

Throughput comparison ​

metric: throughput_decisions_per_second · decisions / second · higher is better

Throughput comparison by engine, measured Neuron-JS benchmark output.

Cold-start comparison ​

metric: cold_start_ms · milliseconds · lower is better

Cold-start comparison by engine, measured Neuron-JS benchmark output.

Bundle-size comparison ​

metric: bundle_size_minified_bytes · minified bytes (esbuild, node platform) · lower is better

Bundle-size comparison by engine, measured Neuron-JS benchmark output.

Validation overhead ​

metric: validation_overhead_ms · milliseconds per decision · lower is better

Validation overhead by engine, measured Neuron-JS benchmark output.

Neuron-JS differentiator: competitors provide no schema-validation step (0).

Explanation overhead ​

metric: explanation_overhead_ms · milliseconds per decision · lower is better

Explanation overhead by engine, measured Neuron-JS benchmark output.

Neuron-JS differentiator: competitors provide no explanation trace (0).

Full results (medium · 10,000 decisions) ​

Throughput is decisions/second (higher is better); all latency, cold-start, and overhead columns are milliseconds (lower is better); bundle size is minified bytes.

EngineScenarioThroughputp50 msp95 msCold start msBundle BValidation msExplanation ms
@sebasoft/neuron-jspricing-discount464,9090.0019690.00338722.98627,2860.0001880
@sebasoft/neuron-jseligibility-approval394,1740.0017490.00483522.98627,2860.0010810.000393
@sebasoft/neuron-jsworkflow-routing298,9230.0019670.00911122.98627,2860.0013810.000276
json-rules-enginepricing-discount89,6240.0095770.02251122.43881,55000
json-rules-engineeligibility-approval79,7170.0104220.030322.43881,55000
json-rules-engineworkflow-routing108,2050.0077480.01598522.43881,55000
json-logic-jspricing-discount2,713,0160.0002680.0006293.25,54400
json-logic-jseligibility-approval3,403,0830.0002060.0004763.25,54400
json-logic-jsworkflow-routing3,154,0110.0002110.0004393.25,54400
hand-coded-typescriptpricing-discount7,284,3980.000090.000172.603000
hand-coded-typescripteligibility-approval8,851,7900.0000850.0002272.603000
hand-coded-typescriptworkflow-routing9,071,9900.0000850.0001592.603000
rule-engine-jspricing-discount404,3010.0025410.0037934.6846,16500
rule-engine-jseligibility-approval469,3060.001930.0032074.6846,16500
rule-engine-jsworkflow-routing434,5230.0021770.0034824.6846,16500

Validation and explanation overhead are Neuron-JS capabilities (validateScript, explainExecution); the other engines provide no equivalent step, so their measured delta is 0.