Skip to main content

Player ratings

Real ratings for your sport.
All in one place.

Beleeg ships six industry-standard rating algorithms — PTI for paddle, DUPR-style for pickleball, Elo, Glicko-2, TrueSkill for teams, and a statistical Handicap for golf and bowling. Pick whichever fits your league. Or upload your last three seasons of results and we will generate one.

Why ratings matter

Three things win / loss records can never give you.

Fairer matchups

Skill-balanced free-agent placement, balanced doubles draws, automated promotion / relegation — every season ends with the right people facing the right people.

Real bragging rights

Per-player history charts, percentile rank, biggest upsets, longest win streaks. Public profiles your players actually want to share.

Mobility between leagues

Ratings travel with the player. Join a new league and your rating + match history come along — no starting from zero every season.

Six engines, one place

The rating systems your players already know.

Open standards — Elo, Glicko, TrueSkill — run exactly as published. For the scales players expect (PTI for paddle, DUPR-style for pickleball, handicaps for bowling and golf) we stay true to how they behave, on the numbers everyone recognizes. Switch per league, tune the knobs that matter, and the math underneath stays correct.

1000 – 2400

Elo

Chess-style head-to-head. K-factor configurable. Settles fast and stays simple — the one everyone has heard of, for good reason.

Starts at 1500

Best for

  • Pickleball
  • Tennis
  • Racquet head-to-head
1000 – 2400

Glicko-2

Inactivity-aware. Carries rating + deviation + volatility, so a player who has not played in six months gets a wider confidence band.

Starts 1500 / RD 350

Best for

  • Chess clubs
  • Bridge
  • Irregular attendance
μ ≈ 0 – 50

TrueSkill

Microsoft's Bayesian system. Genuinely models teams and multiplayer — not by averaging teammates, but by treating the team as a joint distribution.

μ=25, σ=8.33

Best for

  • Team sports
  • Gaming
  • Multiplayer events
10 – 80 (lower = better)

PTI (paddle)

Tuned for platform tennis and paddle doubles. Lower is better — top pros sit near 10, club regulars in the 30s and 40s.

Starts at 50

Best for

  • Platform tennis
  • Paddle
2.0 – 8.0

DUPR-style

Pickleball-tuned. Asymmetric — losing close to a higher-rated player still earns partial credit. The 2.0 – 8.0 scale everyone knows.

Starts at 3.5

Best for

  • Pickleball
  • Mixed doubles
Score vs. base

Handicap

Statistical handicap derived from your score history vs. par or lane average. USBC bowling, WHS golf, PDGA disc golf — all compatible.

First 5 scores set baseline

Best for

  • Bowling
  • Golf
  • Disc golf

Configure every parameter

Every knob is yours. Every guardrail is ours.

Every engine ships with sensible defaults. Every meaningful knob is exposed in the admin UI.

What you can tune

Seven knobs that change behavior

  • K-factor (Elo)

    Convergence speed. Higher K = ratings move faster on each match — good for short seasons.

  • Tau (Glicko-2)

    Volatility constraint. Caps how much a single match can swing a consistent player.

  • Initial rating

    Where brand-new players start. Pick a number that sits in the middle of your league.

  • Provisional period

    How many matches before a player rating shows publicly. Keeps small samples from looking like rankings.

  • Decay on inactivity

    How much a rating widens or drifts back to mean after months without a match. Off by default.

  • Asymmetry (DUPR-style)

    How much partial credit losers earn against higher-rated opponents. The lever that makes pickleball ratings feel fair.

  • Course rating / base (Handicap)

    The reference value every score is measured against. Per-course for golf, per-house for bowling.

What you cannot break

The engine math stays correct

  • Engine math stays correct

    Whatever you tune, the underlying algorithm is the published one. Glicko-2 stays Glicko-2 — we do not invent half-hybrids.

  • Ratings stay reversible

    Every match update returns deltas — any match can be undone, the entire season replayed from scratch after a fix. No silent rebases.

  • Bounds stay sane

    You cannot configure an Elo K-factor of 400 or a starting rating outside the engine's designed range. We refuse the values that break the math.

  • Schemas stay typed

    Parameters live in a typed schema that the admin UI validates against. No magic strings — your league config is checked before it ever touches the engine.

Historical CSV import

Bring your history with you.

Upload your last three seasons of match results — or ten, or a hundred. We replay them chronologically through whichever engine you picked.

  • CSV format — date, players, scores. From any spreadsheet.
  • Up to 1,000 matches per import — split a bigger history across a few.
  • Every player gets a starting rating, and any import can be undone.
  • Available on Pro and Enterprise.
matches.csv3 of 840 rows
datehomeawayha
2024-03-12morgan.kpriya.r6,4,74,6,5
2024-03-15devon.smorgan.k2,36,6
2024-03-19priya.rdevon.s6,63,4

→ 840 matches replayed through Glicko-2, in order. 312 players rated.

Sandbagging detection

Catch underrated players before bracket draws.

Every night we walk your league's match history and compare each player's actual win-rate against the rating engine's prediction. When a player materially outperforms expectation, we surface them for your review with the evidence attached.

  • Engine-aware — uses the same logistic the rating engine uses to predict outcomes.
  • Statistical, not heuristic — flags z-score gated against a Poisson-binomial of per-match win probabilities.
  • Reviewable — dismiss, confirm, or escalate every flag with an audit-logged note.

Sample flag

What the admin sees when the detector spots an underrated player.

priya.r

Score 84 · high
  • · Won 85% over 13 matches vs. predicted 22%
  • · Actual wins exceed prediction by 4.61σ (threshold 2.00)
  • · 5 consecutive wins against +280-rated opponents
  • · Average opponent 240 points stronger

Runs nightly at 03:00 UTC, or on-demand from the admin UI. Pro+ only.

Ready when you are

Pick your engine.
Run your season.

Most leagues pick Elo or DUPR-style on day one. Ratings settle in over the first 5–10 matches per player, then quietly do their job in the background.