• Log InLog In
  • Register
Liquid`
Team Liquid Liquipedia
EDT 03:35
CET 08:35
KST 16:35
  • Home
  • Forum
  • Calendar
  • Streams
  • Liquipedia
  • Features
  • Store
  • EPT
  • TL+
  • StarCraft 2
  • Brood War
  • Smash
  • Heroes
  • Counter-Strike
  • Overwatch
  • Liquibet
  • Fantasy StarCraft
  • TLPD
  • StarCraft 2
  • Brood War
  • Blogs
Forum Sidebar
Events/Features
News
Featured News
[ASL21] Ro24 Preview Pt1: New Chaos0Team Liquid Map Contest #22 - Presented by Monster Energy7ByuL: The Forgotten Master of ZvT30Behind the Blue - Team Liquid History Book19Clem wins HomeStory Cup 289
Community News
Weekly Cups (March 16-22): herO doubles, Cure surprises3Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool48Weekly Cups (March 9-15): herO, Clem, ByuN win42026 KungFu Cup Announcement6BGE Stara Zagora 2026 cancelled12
StarCraft 2
General
Potential Updates Coming to the SC2 CN Server What mix of new & old maps do you want in the next ladder pool? (SC2) Blizzard Classic Cup @ BlizzCon 2026 - $100k prize pool Weekly Cups (March 16-22): herO doubles, Cure surprises Weekly Cups (August 25-31): Clem's Last Straw?
Tourneys
WardiTV Mondays Sparkling Tuna Cup - Weekly Open Tournament World University TeamLeague (500$+) | Signups Open RSL Season 4 announced for March-April WardiTV Team League Season 10
Strategy
Custom Maps
[M] (2) Frigid Storage Publishing has been re-enabled! [Feb 24th 2026]
External Content
The PondCast: SC2 News & Results Mutation # 518 Radiation Zone Mutation # 517 Distant Threat Mutation # 516 Specter of Death
Brood War
General
Which mirror match you like most or least? How much money terran looses from gas steal? Gypsy to Korea BGH Auto Balance -> http://bghmmr.eu/ mca64Launcher - New Version with StarCraft: Remast
Tourneys
[Megathread] Daily Proleagues [ASL21] Ro24 Group C [ASL21] Ro24 Group B 2026 Changsha Offline Cup
Strategy
Fighting Spirit mining rates What's the deal with APM & what's its true value Simple Questions, Simple Answers Soma's 9 hatch build from ASL Game 2
Other Games
General Games
General RTS Discussion Thread Nintendo Switch Thread Stormgate/Frost Giant Megathread Path of Exile Dawn of War IV
Dota 2
Official 'what is Dota anymore' discussion The Story of Wings Gaming
League of Legends
G2 just beat GenG in First stand
Heroes of the Storm
Simple Questions, Simple Answers Heroes of the Storm 2.0
Hearthstone
Deck construction bug Heroes of StarCraft mini-set
TL Mafia
TL Mafia Community Thread Five o'clock TL Mafia Mafia Game Mode Feedback/Ideas Vanilla Mini Mafia
Community
General
US Politics Mega-thread Canadian Politics Mega-thread Russo-Ukrainian War Thread European Politico-economics QA Mega-thread Things Aren’t Peaceful in Palestine
Fan Clubs
The IdrA Fan Club
Media & Entertainment
[Req][Books] Good Fantasy/SciFi books Movie Discussion! [Manga] One Piece
Sports
Cricket [SPORT] 2024 - 2026 Football Thread Formula 1 Discussion Tokyo Olympics 2021 Thread General nutrition recommendations
World Cup 2022
Tech Support
Laptop capable of using Photoshop Lightroom?
TL Community
The Automated Ban List
Blogs
Funny Nicknames
LUCKY_NOOB
Money Laundering In Video Ga…
TrAiDoS
Iranian anarchists: organize…
XenOsky
FS++
Kraekkling
Shocked by a laser…
Spydermine0240
Unintentional protectionism…
Uldridge
ASL S21 English Commentary…
namkraft
Customize Sidebar...

Website Feedback

Closed Threads



Active: 7888 users

[I] Kespa Ranking Points Calculation Formula

Forum Index > BW General
Post a Reply
Jaester88
Profile Joined September 2009
United States143 Posts
Last Edited: 2010-04-02 05:40:54
April 02 2010 04:39 GMT
#1
Source: http://www.fomos.kr/gnuboard4/bbs/board.php?bo_table=best&wr_id=5765

Note: None of this is my work. Full credit goes to username 와이엘 (YL) within the Fomos forums, who apparently did all this work by himself (using previous Kespa rankings) to figure out exactly how the Kespa ranking points are calculated (His OP is the link above). His post was written January 4, 2010, presumably immediately before the January Kespa ranking was released, and he predicted that Jaedong’s Kespa points in Jan 2010 would be 2806.0 points. Sure enough, he was correct, down to the decimal. Since then, Kespa hasn’t confirmed or denied the validity of his methods, but it seems to be more or less considered truth, since it’s now stood the test of time for four months and has not yet failed.

If anyone just wants a general idea, but not the rather tedious details, I’d just read up to the <Fundamental Rules> section.

In brackets are my interpretations of what he says, because some of them are kind of confusing. If anyone finds better explanations for those, let me know and I will change it if I think you're right.

-----


<Leagues that are counted towards the calculation of Kespa points>

• Individual Leagues: OSL, MSL, Survivor, Offline Qualifiers (Including the now non-existent Dual Tournament, StarChallenge)

• Team Leagues: Proleague [including Winners League], Post-Season (including WL PO)


<Fundamental Rules>

• Points are only added; there are never any subtractions

• For Individual League points, whether or not they advanced is all that counts. It doesn’t matter if someone advanced 3:0, or if they only barely advanced through Wild Card or something; as long as you advance, you get the points.

• Team League Points depend only upon the number of wins.

• The past three months’ results count 100%, each month after that go down by 10% at a time, so that the 12th month past counts 10% [and any months prior, 0%].

• There are no other factors.

• The points displayed in the Kespa Homepage are the points that have been rounded to the 2nd decimal.


<Team League Points>

• A win is worth 30 points.

• Ace match and Post-Season (including WL PO) match wins are worth 45 points (30pts * 1.5).

• Post-Season ace match wins are worth 67.5 points (30pts * 1.5 * 1.5).

• The players with the most wins after a proleague season [i.e. Jaedong and Flash from 08-09, etc] get an additional 100 points (Other awards seem to not count, but this may be different every season).

• Games that were in a certain month count towards that month’s calculations.


<Individual League Points>
[This section will be fairly confusing for those who don’t know the structures of OSL and MSL very well, including myself. Consulting the [R&S] threads for each league will probably help some.]

• Basically, if you make it to RoXX, then you will be awarded YY points. Therefore, even if you don’t show up to a game, there is no effect on the points you have already accumulated for that league.

• Points are awarded starting with Offline Qualifiers Ro8; anything below doesn’t count.

• If you are seeded into a certain point of a league, then you are accordingly awarded points for all levels below your seeded point in that league, same as if you had played and won up to that point (Points are awarded when all members of that equivalent seed have been decided, [i.e. if there are 12 seeds into the Ro36, then points for seed into Ro36 are awarded only when all 12 seeds have been confirmed.])

• If equivalent level matches are played through the course of a month, then points are awarded when the all equivalent matches have been played. [I’m not completely sure what he means here, but my interpretation is: e.g. hypothetically, if Semi-Final A for OSL is played on the last week of January and Semi-Final B for OSL is played on the first week of February, then the winner of Semi-Final A for OSL will not receive points until the March Kespa ranking.]

• The points awarded for each level are as follows:

Offline Preliminaries Ro8: 5.625
Offline Preliminaries Ro4: 11.25
Offline Preliminaries Finals: 22.5

OSL Ro36 round 1, Survivor: 37.5
OSL Ro36 round 2, MSL Ro32: 75 (37.5 * 2)
OSL/MSL Ro16: 112.5 (37.5 * 3)

OSL/MSL Ro8: 75
OSL/MSL Ro4: 112.5 (75 * 1.5)
OSL/MSL Finals: 187.5 (75 * 2.5)
OSL/MSL Champion: 150 (75 * 2)

• In the case of OSL, when the Ro8 ends, points for seeding into the next OSL Ro36 (37.5 + 75 = 112.5) are awarded to those who dropped out at the Ro8/16. Also, those who advanced to the Ro4 are awarded points for seeding into the next OSL Ro16 (37.5 + 75 + 112.5 = 225). [This, I think, is mainly the reason for the huge inflation of points for those who make it deep into the leagues.]

• In the case of MSL, when the Ro16 ends, points for seeding into the next Survivor are awarded (37.5) for those who made Ro16/32 but not Ro8. Likewise, those who advanced to the Ro8 are awarded points for seeding into the next MSL Ro32 (37.5 + 75 = 112.5). [As many expected, I’m sure, points for seeding into MSL are lower than for OSL.]

-----


Applying the above criteria, let’s analyze Jaedong’s December 2009 points.

Total: 2549.0 / Individual League: 1395.0 / Team League: 1154.0

<Individual Leagues>

Nov 09: None
Oct 09: None
Sep 09: None
Aug 09: MSL Ro4(112.5) + OSL Finals(187.5) + OSL Champion(150) = 450 * 90% = 405
Jul 09: MSL Ro16(112.5) + MSL Ro8(75) + MSL Ro36 Seed (37.5+75) + OSL Ro8(75) + OSL Ro4(112.5) + OSL Ro16 Seed (37.5+75+112.5) = 712.5 * 80% = 570
Jun 09: None
May 09: MSL Ro32(75) * 60% = 45
Apr 09: OSL Champion(150) * 50% = 75
Mar 09: OSL Finals(187.5) + OSL Ro4(112.5) + OSL Ro16 Seed (37.5+75+112.5) = 525 * 40% = 210
Feb 09: OSL Ro8(75) + Survivor Seed (37.5 - MSL16 ended this month) = 112.5 * 30% = 33.75
Jan 09: OSL Ro16(75+112.5 - OSL Ro36 rounds 1,2 calculated simultaneously) + MSL Ro32(75) = 262.5 * 20% = 52.5
Dec 08: OSL Ro36(37.5) * 10% = 3.75

405 + 570 + 45 + 75 + 210 + 45 + 75 + 33.75 + 52.5 + 3.75 = 1395.0

<Team League>

Nov 09: 3W(90) + Ace 2W(90) = 180
Oct 09: 2W + Ace 1W = 105
Sep 09: None
Aug 09: PO2W(90) * 90% = 81 -> It should be PO1W + PO Ace1W = 112.5, but it seems Kespa made a mistake
Jul 09: 1W + Most Wins (100) = 130 * 80% = 104
Jun 09: 7W + Ace 2W = 300 * 70% = 210
May 09: 5W + Ace 1W = 195 * 60% = 117
Apr 09: 2W + Ace 1W = 105 * 50% = 52.5
Mar 09: 1W + WL PO 7W = 345 * 40% = 138
Feb 09: 13W = 390 * 30% = 117
Jan 09: 4W = 120 * 20% = 24
Dec 08: 4W + Ace 3W = 255 * 10% = 25.5

180 + 105 + 81 + 104 + 210 + 117 + 52.5 + 138 + 117 + 24 + 25.5 = 1154.0


If the points are calculated in the same way for January 2010,
Jaedong’s Kespa points should be… IL: 1650 / TL: 1156 / Total: 2806 points.
[This is correct in all three counts.]

Edit: Just looked up liquipedia and apparently this was more or less already known. Nevertheless, if anyone for some reason wanted the specific numbers, well, here they are.
Zona
Profile Blog Joined May 2007
40426 Posts
April 02 2010 05:00 GMT
#2
Wow, finally someone reverse engineered the arcane formula they used. Thanks for translating.

I think it's a reasonable ranking, even though sometimes it's divorced from actual skill.
"If you try responding to those absurd posts every day, you become more damaged. So I pay no attention to them at all." Jung Myung Hoon (aka Fantasy), as translated by Kimoleon
Djabanete
Profile Blog Joined May 2008
United States2786 Posts
April 02 2010 05:29 GMT
#3
How was this figured out --- did they just solve a system of a gazillion equations or something?
May the BeSt man win.
TwoToneTerran
Profile Joined March 2009
United States8841 Posts
April 02 2010 05:33 GMT
#4
I don't know, I figure they took multiple scoring differences between months and took everything that could be relevant to the ranking and worked from there by just plugging in numbers.
Remember Violet.
Zona
Profile Blog Joined May 2007
40426 Posts
April 02 2010 05:36 GMT
#5
Nah, Liquipedia didn't have the specific numbers for points earned for each game type, so this is new information.
"If you try responding to those absurd posts every day, you become more damaged. So I pay no attention to them at all." Jung Myung Hoon (aka Fantasy), as translated by Kimoleon
TheYango
Profile Joined September 2008
United States47024 Posts
April 02 2010 06:09 GMT
#6
So wait, Kespa doesn't even *consider* the skill of the opponent when determining points for a win?
Moderator
peidongyang
Profile Joined January 2009
Canada2084 Posts
April 02 2010 22:41 GMT
#7
On April 02 2010 15:09 TheYango wrote:
So wait, Kespa doesn't even *consider* the skill of the opponent when determining points for a win?


Thus, making decaying ELO with weighting due to the importance of a match a far more accurate and up-to-date ranking of a player's skill.
the throws never bothered me anyway
Heyoka
Profile Blog Joined March 2008
Katowice25012 Posts
April 02 2010 22:52 GMT
#8
On April 03 2010 07:41 peidongyang wrote:
Show nested quote +
On April 02 2010 15:09 TheYango wrote:
So wait, Kespa doesn't even *consider* the skill of the opponent when determining points for a win?


Thus, making decaying ELO with weighting due to the importance of a match a far more accurate and up-to-date ranking of a player's skill.


This is how we should probably have elo calculated in TLPD but right now its just a straight score. I ran some simulations last year and came to the conclusion that KeSPA is actually more accurate in trying to determine the winner of future matches, its a better measure of 'who is more in form at the moment' generally, but with some tweaking an elo can do the same job from what I understand. One of my longterm goals is to mess with how we treat this stuff in our database but I'm really not well read enough on it anymore to do it.

This is fucking awesome, thanks a ton for the post.
@RealHeyoka | ESL / DreamHack StarCraft Lead
Cambium
Profile Blog Joined June 2004
United States16368 Posts
April 02 2010 22:56 GMT
#9
Did he mention how he did it?

I'm quite certain he used a machine learning algorithm, I'm just curious which one. Data gathering was probably a major pain in the butt.
When you want something, all the universe conspires in helping you to achieve it.
nonduc
Profile Joined May 2009
Russian Federation405 Posts
April 03 2010 12:37 GMT
#10
GJ Jaester88! Really!
티라노사저그 렉스 화이팅~!
writer22816
Profile Blog Joined September 2008
United States5775 Posts
April 04 2010 00:03 GMT
#11
Kespa gonna change it now
8/4/12 never forget, never forgive.
Please log in or register to reply.
Live Events Refresh
Replay Cast
00:00
WardiTV Mondays #76
LiquipediaDiscussion
[ Submit Event ]
Live Streams
Refresh
StarCraft 2
Nina 171
ProTech122
Livibee 70
StarCraft: Brood War
Zeus 2963
sorry 43
ToSsGirL 42
sSak 37
Bale 27
Shinee 24
NotJumperer 17
GoRush 16
Nal_rA 13
Sharp 12
[ Show more ]
SilentControl 7
League of Legends
JimRising 547
Super Smash Bros
C9.Mang0371
Other Games
ceh9105
Mew2King103
RuFF_SC246
Organizations
Dota 2
PGL Dota 2 - Main Stream72
StarCraft 2
Blizzard YouTube
StarCraft: Brood War
BSLTrovo
sctven
[ Show 11 non-featured ]
StarCraft 2
• Berry_CruncH314
• AfreecaTV YouTube
• intothetv
• Kozan
• IndyKCrew
• LaughNgamezSOOP
• Migwel
• sooper7s
StarCraft: Brood War
• BSLYoutube
• STPLYoutube
• ZZZeroYoutube
Upcoming Events
KCM Race Survival
1h 26m
The PondCast
2h 26m
WardiTV Team League
4h 26m
BASILISK vs Team Liquid
OSC
4h 26m
OSC
10h 26m
Replay Cast
16h 26m
WardiTV Team League
1d 4h
Big Brain Bouts
1d 9h
Fjant vs SortOf
YoungYakov vs Krystianer
Reynor vs HeRoMaRinE
RSL Revival
2 days
Cure vs Zoun
herO vs Rogue
WardiTV Team League
2 days
[ Show More ]
Platinum Heroes Events
2 days
BSL
2 days
RSL Revival
3 days
ByuN vs Maru
MaxPax vs TriGGeR
WardiTV Team League
3 days
BSL
3 days
Replay Cast
3 days
Replay Cast
4 days
Afreeca Starleague
4 days
Light vs Calm
Royal vs Mind
Wardi Open
4 days
Monday Night Weeklies
4 days
OSC
4 days
Sparkling Tuna Cup
5 days
Afreeca Starleague
5 days
Rush vs PianO
Flash vs Speed
Replay Cast
6 days
Afreeca Starleague
6 days
BeSt vs Leta
Queen vs Jaedong
Replay Cast
6 days
Liquipedia Results

Completed

Proleague 2026-03-24
WardiTV Winter 2026
Underdog Cup #3

Ongoing

KCM Race Survival 2026 Season 1
BSL Season 22
CSL Elite League 2026
CSL Season 20: Qualifier 1
ASL Season 21
Acropolis #4 - TS6
RSL Revival: Season 4
Nations Cup 2026
NationLESS Cup
BLAST Open Spring 2026
ESL Pro League S23 Finals
ESL Pro League S23 Stage 1&2
PGL Cluj-Napoca 2026
IEM Kraków 2026
BLAST Bounty Winter 2026
BLAST Bounty Winter Qual

Upcoming

2026 Changsha Offline CUP
CSL Season 20: Qualifier 2
CSL 2026 SPRING (S20)
Acropolis #4
IPSL Spring 2026
BSL 22 Non-Korean Championship
CSLAN 4
Kung Fu Cup 2026 Grand Finals
HSC XXIX
uThermal 2v2 2026 Main Event
IEM Cologne Major 2026
Stake Ranked Episode 2
CS Asia Championships 2026
IEM Atlanta 2026
Asian Champions League 2026
PGL Astana 2026
BLAST Rivals Spring 2026
CCT Season 3 Global Finals
IEM Rio 2026
PGL Bucharest 2026
Stake Ranked Episode 1
TLPD

1. ByuN
2. TY
3. Dark
4. Solar
5. Stats
6. Nerchio
7. sOs
8. soO
9. INnoVation
10. Elazer
1. Rain
2. Flash
3. EffOrt
4. Last
5. Bisu
6. Soulkey
7. Mini
8. Sharp
Sidebar Settings...

Advertising | Privacy Policy | Terms Of Use | Contact Us

Original banner artwork: Jim Warren
The contents of this webpage are copyright © 2026 TLnet. All Rights Reserved.