Scoring algorithm for rankings #807
privatenumber
started this conversation in
General
Replies: 1 comment 7 replies
-
Raw metrics
99/1 (or no weighted score is even better, as 99/1 won't affect the score in most of the cases whereas when it does, it'd probably result in a confusion).
|
Beta Was this translation helpful? Give feedback.
7 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
In #787 (and the follow-up 2a859ce), we introduced a scoring algorithm that produces a single ranking reflecting both compression size and minification speed.
How does the scoring algorithm work?
Algorithm source: https://github.com/privatenumber/minification-benchmarks/blob/master/packages/data/update-readme/analyzed-data.ts#L92-L124
What's the different perespectives?
Community discussion around this change has surfaced different but valid priorities:
Size-first
Compression size is the only important metric. Since code is minified once but served millions of times, minification time is negligible. Some argue weights should be closer to 99.9% size vs 0.1% time.
Balanced
Emphasis on build performance, CI/CD efficiency, and developer experience. Extremely slow minifiers are impractical, and efficiency is often a hallmark of good engineering.
Speed-first
Throughput is the most important metric. In use cases like CDNs or edge systems performing on-demand minification, every millisecond counts. Smaller output matters less than minimizing latency and cost at scale.
Discussion goals
The scoring algorithm was added to provide an extra lens, not to hide facts. Raw data (minified size, minzipped size, and time) is still in the table, and the 🏆 emoji still highlights top performers in each column.
However, the default ordering has a real impact on how people consume this benchmark. Since this affects methodology, I'd like to gather broader community feedback here:
This benchmark exists to serve the community and we're open to change. The goal is to find a fair, transparent, and useful way to represent trade-offs between size and speed.
Please share your thoughts!
Beta Was this translation helpful? Give feedback.
All reactions