Skip to content

Mmr calculation

ipax77 edited this page May 16, 2026 · 19 revisions

MMR Calculation Rules

Player ratings are an indicator of current strength. They are not a perfect measurement, but they are more useful than raw winrate because they account for the strength of both teams.

Ratings are calculated on the dsstats server. The desktop app and browser PWA do not calculate or maintain their own local MMR anymore; they receive rating values from the server when online.

dsstats uses Elo-style team ratings. Winning against a stronger team gives more rating than winning against a weaker team. Losing against a stronger team costs less than losing against a weaker team.

Important rules

  • Ratings are server-side only.
  • Apps can decode and store replay data locally, but rating values come from the server.
  • Apps need server data to show player ratings, replay rating changes, and session rating progress.
  • Ratings can change when older replays are uploaded, because past games may add missing opponents, teammates, or results to the server rating history.
  • Ratings are not meant to be a grind system. After enough games, the rating should represent current skill more than total game count.
  • Leaving, disconnecting, rage quitting, and missing lost uploads can receive special handling to keep ratings fair.
  • Close games are expected to move rating more symmetrically. Upsets move rating more strongly.

App behavior

The desktop app and PWA still decode replays locally and can keep local replay history. That local data is useful for replay browsing and upload workflows.

MMR is different: ratings are produced by the server rating pipeline from the shared replay dataset. When the app shows a rating, rating gain, expectation to win, or session rating progress, it is using server-provided rating data.

If the app is offline, local replay data can still be available, but current server ratings and rating changes may not be.

Rating types

All

All supported Direct Strike game modes since SC2Arcade public match data became available on 2021-02-01. In current dsstats versions this is the broadest rating pool and includes more than only the old 3v3 commander/standard split.

Commanders

  • Player count 6, 3v3.
  • Game modes Commanders and CommandersHeroic.
  • Non-TE map.

Standard

  • Player count 6, 3v3.
  • Game mode Standard.
  • Non-TE map.

CommandersTE

  • Player count 6, 3v3.
  • Commanders games on Tournament Edition map.

StandardTE

  • Player count 6, 3v3.
  • Standard games on Tournament Edition map.

Leavers

Games with leavers are still useful, but they can distort rating because the remaining players can gain stacking or control advantages. dsstats applies special leaver handling instead of treating all leaver games as normal clean games.

Consistency and confidence

The rating system tracks stabilizing values so ratings do not jump endlessly from single results.

Consistency reduces rating movement when a player's results are predictable. Confidence helps control rating movement as more evidence is collected. Newer or less certain ratings can move more than established ratings.

Expectation to win

Expectation to win is the estimated win chance based on server ratings for both teams. It is also useful as a filter: limiting stats to near-even games can reduce noise from heavily stacked lobbies.

Clone this wiki locally