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
| Field | Value |
|---|---|
| Generated | 2026-06-23T13:23:56.971Z |
| Node | v24.14.1 |
| Commit | 2f5894a2c23f0ecd5656e1625299510fe670a622 |
| Neuron-JS version | 0.5.2 |
| Command | yarn benchmark |
| Raw source | benchmarks/results/latest.actual.json |
Throughput comparison
metric: throughput_decisions_per_second · decisions / second · higher is better
Cold-start comparison
metric: cold_start_ms · milliseconds · lower is better
Bundle-size comparison
metric: bundle_size_minified_bytes · minified bytes (esbuild, node platform) · lower is better
Validation overhead
metric: validation_overhead_ms · milliseconds per decision · lower is better
Neuron-JS differentiator: competitors provide no schema-validation step (0).
Explanation overhead
metric: explanation_overhead_ms · milliseconds per decision · lower is better
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.
| Engine | Scenario | Throughput | p50 ms | p95 ms | Cold start ms | Bundle B | Validation ms | Explanation ms |
|---|---|---|---|---|---|---|---|---|
@sebasoft/neuron-js | pricing-discount | 1,262,699 | 0.000757 | 0.000961 | 7.54 | 13,040 | 0.000243 | 0 |
@sebasoft/neuron-js | eligibility-approval | 1,362,127 | 0.000692 | 0.000859 | 7.54 | 13,040 | 0.000425 | 0.000058 |
@sebasoft/neuron-js | workflow-routing | 1,221,362 | 0.000784 | 0.000959 | 7.54 | 13,040 | 0.000472 | 0.000042 |
json-rules-engine | pricing-discount | 199,100 | 0.004799 | 0.006327 | 9.167 | 81,550 | 0 | 0 |
json-rules-engine | eligibility-approval | 217,491 | 0.004434 | 0.005789 | 9.167 | 81,550 | 0 | 0 |
json-rules-engine | workflow-routing | 217,969 | 0.004448 | 0.005439 | 9.167 | 81,550 | 0 | 0 |
json-logic-js | pricing-discount | 3,764,115 | 0.000243 | 0.000376 | 1.652 | 5,544 | 0 | 0 |
json-logic-js | eligibility-approval | 4,875,373 | 0.000188 | 0.000203 | 1.652 | 5,544 | 0 | 0 |
json-logic-js | workflow-routing | 5,047,319 | 0.000187 | 0.000197 | 1.652 | 5,544 | 0 | 0 |
hand-coded-typescript | pricing-discount | 11,695,332 | 0.000088 | 0.000092 | 0.981 | 0 | 0 | 0 |
hand-coded-typescript | eligibility-approval | 10,362,694 | 0.000082 | 0.000118 | 0.981 | 0 | 0 | 0 |
hand-coded-typescript | workflow-routing | 12,090,685 | 0.00008 | 0.000083 | 0.981 | 0 | 0 | 0 |
rule-engine-js | pricing-discount | 844,734 | 0.00109 | 0.001835 | 2.725 | 46,165 | 0 | 0 |
rule-engine-js | eligibility-approval | 902,843 | 0.001062 | 0.001385 | 2.725 | 46,165 | 0 | 0 |
rule-engine-js | workflow-routing | 852,630 | 0.001126 | 0.001448 | 2.725 | 46,165 | 0 | 0 |
Validation and explanation overhead are Neuron-JS capabilities (validateScript, explainExecution); the other engines provide no equivalent step, so their measured delta is 0.
