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-06-23T13:23:56.971Z
Nodev24.14.1
Commit2f5894a2c23f0ecd5656e1625299510fe670a622
Neuron-JS version0.5.2
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-discount1,262,6990.0007570.0009617.5413,0400.0002430
@sebasoft/neuron-jseligibility-approval1,362,1270.0006920.0008597.5413,0400.0004250.000058
@sebasoft/neuron-jsworkflow-routing1,221,3620.0007840.0009597.5413,0400.0004720.000042
json-rules-enginepricing-discount199,1000.0047990.0063279.16781,55000
json-rules-engineeligibility-approval217,4910.0044340.0057899.16781,55000
json-rules-engineworkflow-routing217,9690.0044480.0054399.16781,55000
json-logic-jspricing-discount3,764,1150.0002430.0003761.6525,54400
json-logic-jseligibility-approval4,875,3730.0001880.0002031.6525,54400
json-logic-jsworkflow-routing5,047,3190.0001870.0001971.6525,54400
hand-coded-typescriptpricing-discount11,695,3320.0000880.0000920.981000
hand-coded-typescripteligibility-approval10,362,6940.0000820.0001180.981000
hand-coded-typescriptworkflow-routing12,090,6850.000080.0000830.981000
rule-engine-jspricing-discount844,7340.001090.0018352.72546,16500
rule-engine-jseligibility-approval902,8430.0010620.0013852.72546,16500
rule-engine-jsworkflow-routing852,6300.0011260.0014482.72546,16500

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