Methodology
Glicko-2 Rating System
RankHub uses the Glicko-2 rating system, developed by Mark E. Glickman as an improvement over the Elo rating system. Glicko-2 introduces a "rating deviation" (RD) that measures the reliability of a rating, and a "volatility" that captures the consistency of performance.
How Votes Work
Each vote is a head-to-head matchup between two items. When you vote, the system:
- Calculates expected scores based on current ratings and RDs
- Updates both items' ratings (winner goes up, loser goes down)
- Adjusts RDs (they decrease with more games, increase with inactivity)
- Updates volatility to reflect performance consistency
Why Not Simple Vote Counting?
Simple vote counting is vulnerable to:
- Recency bias (newer items get fewer votes)
- Selection bias (matchup pairing affects outcomes)
- No uncertainty measure (can't tell if rankings are reliable)
Glicko-2 solves all three: inactive items' RDs grow (uncertainty increases), matchup selection is randomized, and every rating has a confidence interval.
Integer Math Storage
For cross-isolate determinism, all Glicko-2 metrics are stored as integers:
- Rating: display_value * 100 (e.g., 1500.00 stored as 150000)
- RD: display_value * 100 (e.g., 350.00 stored as 35000)
- Volatility: display_value * 10^6 (e.g., 0.06 stored as 60000)
This ensures identical results across different runtime environments (JavaScript, Rust, WASM) without floating-point precision issues.