Skip to content

Chess player stats, chess games and chess rankings

Chess.com returns public player profiles, ratings, records, puzzle scores, top-player rankings, and completed public games for a selected month, defaulting to the current UTC month.

Get player stats

Get a Chess.com player’s public profile, ratings, game records, best puzzle rating and Puzzle Rush best score from a username or profile link. Unplayed time controls and unpublished values are null.

Your information

Player’s Chess.com username or profile link, for example Hikaru or https://www.chess.com/member/Hikaru.

1 credit per run

Example results

Daily
Not provided
Title
GM
Country
Norway
Username
magnuscarlsen
Followers
318,642
Is Streamer
No
Joined Date
2010-08-26
Display Name
Magnus Carlsen
Profile Link
chess.com
Last Online Date
2026-09-28
Avatar Image Link
Avatar Image LinkOpen image
Best Puzzle Rating
400
Puzzle Rush Best Score
Not provided
Blitz
Wins
4,942
Draws
838
Losses
1,104
Best Rating
3,410
Current Rating
3,402
Best Rating Date
2026-06-24
Rapid
Wins
135
Draws
110
Losses
32
Best Rating
2,977
Current Rating
2,941
Best Rating Date
2023-02-06
Bullet
Wins
1,519
Draws
222
Losses
494
Best Rating
3,390
Current Rating
3,270
Best Rating Date
2023-03-27
Example data · Run in Studio for fresh results.

Choose an action

About Chess.com

Chess.com (Chesscom) returns public player profiles, ratings, records, best puzzle ratings, and Puzzle Rush scores from a username or profile link.

List recent games returns completed public games for a username and selected month, with optional game speed and result limit.

List top players returns ranked players for a selected time control, with ratings, records, and profile links.

Built by Fous from chess.com and checked automatically; it last passed a check on Sep 29, 2026. Fous is not affiliated with Chess.com.

Actions

Get player stats

1 credit per run

Get a Chess.com player’s public profile, ratings, game records, best puzzle rating and Puzzle Rush best score from a username or profile link. Unplayed time controls and unpublished values are null.

What you provide

FieldTypeRequiredDescription
UsernameusernameTextRequiredPlayer’s Chess.com username or profile link, for example Hikaru or https://www.chess.com/member/Hikaru.Example: https://www.chess.com/member/MagnusCarlsen

What you get

FieldTypeDescription
BlitzblitzDetailsNull when this time control has never been played.
Winsblitz.winsNumberExample: 4942
Drawsblitz.drawsNumberExample: 838
Lossesblitz.lossesNumberExample: 1104
Best Ratingblitz.best_ratingNumberHighest published rating.Example: 3410
Current Ratingblitz.current_ratingNumberMost recently published rating.Example: 3402
Best Rating Dateblitz.best_rating_dateDateDate of highest published rating.Example: 2026-06-24
DailydailyDetailsNull when this time control has never been played.
Winsdaily.winsNumberExample: 73
Drawsdaily.drawsNumberExample: 4
Lossesdaily.lossesNumberExample: 11
Best Ratingdaily.best_ratingNumberHighest published rating.Example: 2464
Current Ratingdaily.current_ratingNumberMost recently published rating.Example: 2239
Best Rating Datedaily.best_rating_dateDateDate of highest published rating.Example: 2014-04-10
RapidrapidDetailsNull when this time control has never been played.
Winsrapid.winsNumberExample: 135
Drawsrapid.drawsNumberExample: 110
Lossesrapid.lossesNumberExample: 32
Best Ratingrapid.best_ratingNumberHighest published rating.Example: 2977
Current Ratingrapid.current_ratingNumberMost recently published rating.Example: 2941
Best Rating Daterapid.best_rating_dateDateDate of highest published rating.Example: 2023-02-06
TitletitleTextExample: GM
BulletbulletDetailsNull when this time control has never been played.
Winsbullet.winsNumberExample: 1519
Drawsbullet.drawsNumberExample: 222
Lossesbullet.lossesNumberExample: 494
Best Ratingbullet.best_ratingNumberHighest published rating.Example: 3390
Current Ratingbullet.current_ratingNumberMost recently published rating.Example: 3270
Best Rating Datebullet.best_rating_dateDateDate of highest published rating.Example: 2023-03-27
CountrycountryTextCountry name.Example: Norway
UsernameusernameTextExample: Magnuscarlsen
FollowersfollowersNumberExample: 318642
Is Streameris_streamerYes or noExample: No
Joined Datejoined_dateDateExample: 2010-08-26
Display Namedisplay_nameTextExample: Magnus Carlsen
Profile Linkprofile_linkLinkExample: https://www.chess.com/member/MagnusCarlsen
Last Online Datelast_online_dateDateExample: 2026-09-28
Avatar Image Linkavatar_image_linkTextExample: https://images.chesscomfiles.com/uploads/v1/user/3889224.121e2094.200x200o.361c…
Best Puzzle Ratingbest_puzzle_ratingNumberExample: 400
Puzzle Rush Best Scorepuzzle_rush_best_scoreNumberExample: 123

Example result

For Username: https://www.chess.com/member/MagnusCarlsen

JSON
{
  "blitz": {
    "wins": 4942,
    "draws": 838,
    "losses": 1104,
    "best_rating": 3410,
    "current_rating": 3402,
    "best_rating_date": "2026-06-24"
  },
  "daily": null,
  "rapid": {
    "wins": 135,
    "draws": 110,
    "losses": 32,
    "best_rating": 2977,
    "current_rating": 2941,
    "best_rating_date": "2023-02-06"
  },
  "title": "GM",
  "bullet": {
    "wins": 1519,
    "draws": 222,
    "losses": 494,
    "best_rating": 3390,
    "current_rating": 3270,
    "best_rating_date": "2023-03-27"
  },
  "country": "Norway",
  "username": "magnuscarlsen",
  "followers": 318642,
  "is_streamer": false,
  "joined_date": "2010-08-26",
  "display_name": "Magnus Carlsen",
  "profile_link": "https://www.chess.com/member/MagnusCarlsen",
  "last_online_date": "2026-09-28",
  "avatar_image_link": "https://images.chesscomfiles.com/uploads/v1/user/3889224.121e2094.200x200o.361c2f8a59c2.jpg",
  "best_puzzle_rating": 400,
  "puzzle_rush_best_score": null
}

List recent games

1 credit per run

List a player’s games for a month, newest first, with results, ratings, opening and game links. Defaults to the current UTC month; only completed public games in the selected month are included.

What you provide

FieldTypeRequiredDescription
MonthmonthTextOptionalMonth of games in YYYY-MM, for example 2026-09. Defaults to the current UTC month.Example: 2026-09
UsernameusernameTextRequiredChess.com username, for example MagnusCarlsen.Example: Erik
Max Resultsmax_resultsNumberOptionalMaximum number of games, for example 50. Defaults to 50.Example: 2
Time Controltime_controlTextOptionalGame speed, for example blitz. Defaults to all.Example: Daily

What you get

FieldTypeDescription
GamesgamesList
Pgngames[].pgnText
Colorgames[].colorTextExample: Black
Ratedgames[].ratedTextExample: Yes
Resultgames[].resultTextExample: Loss
End Timegames[].end_timeDateDate and time the game ended in UTC.Example: 2026-09-28T23:06:15+00:00
Game Linkgames[].game_linkTextExample: https://www.chess.com/game/daily/1035606720
How It Endedgames[].how_it_endedTextExample: Resignation
Opening Namegames[].opening_nameTextExample: Modern Defense with 1 d4
Time Controlgames[].time_controlTextExample: 1 day per move
Player Ratinggames[].player_ratingNumberExample: 1402
Opponent Ratinggames[].opponent_ratingNumberExample: 1289
Opponent Usernamegames[].opponent_usernameTextExample: NorwegianViking82
Final Position Fengames[].final_position_fenTextExample: r1b1rnqb/pppk3p/6p1/4npB1/8/2N2BP1/PPP1P2P/2KRRNQ1 b - - 3 9

Example result

For Month: 2026-09, Username: Erik, Max Results: 2, Time Control: Daily

JSON
{
  "games": [
    {
      "pgn": "[Event \"Let's Play! - Chess960\"]\n[Site \"Chess.com\"]\n[Date \"2026.09.27\"]\n[Round \"-\"]\n[White \"NorwegianViking82\"]\n[Black \"erik\"]\n[Result \"1-0\"]\n[Variant \"Chess960\"]\n[SetUp \"1\"]\n[FEN \"rnbkrnqb/pppppppp/8…",
      "color": "black",
      "rated": "yes",
      "result": "loss",
      "end_time": "2026-09-28T23:06:15+00:00",
      "game_link": "https://www.chess.com/game/daily/1035606720",
      "how_it_ended": "resignation",
      "opening_name": "Modern Defense with 1 d4",
      "time_control": "1 day per move",
      "player_rating": 1402,
      "opponent_rating": 1289,
      "opponent_username": "NorwegianViking82",
      "final_position_fen": "r1b1rnqb/pppk3p/6p1/4npB1/8/2N2BP1/PPP1P2P/2KRRNQ1 b - - 3 9"
    },
    {
      "pgn": "[Event \"Let's Play! - Chess960\"]\n[Site \"Chess.com\"]\n[Date \"2026.09.19\"]\n[Round \"-\"]\n[White \"erik\"]\n[Black \"NorwegianViking82\"]\n[Result \"1-0\"]\n[Variant \"Chess960\"]\n[SetUp \"1\"]\n[FEN \"rqbknrnb/pppppppp/8…",
      "color": "white",
      "rated": "yes",
      "result": "win",
      "end_time": "2026-09-27T12:28:43+00:00",
      "game_link": "https://www.chess.com/game/daily/1031528548",
      "how_it_ended": "resignation",
      "opening_name": "Kings Fianchetto Opening",
      "time_control": "1 day per move",
      "player_rating": 1429,
      "opponent_rating": 1311,
      "opponent_username": "NorwegianViking82",
      "final_position_fen": "6r1/pp3r2/2p4P/3pBkP1/3P4/1P6/P2KP3/6R1 w - - 0 32"
    }
  ]
}

List top players

1 credit per run

List up to 50 top Chess.com players by time control, in rank order, with ratings, game records and profile links. Puzzles rankings use puzzle scores; records are shown where published.

What you provide

FieldTypeRequiredDescription
Max Resultsmax_resultsNumberOptionalMaximum number of ranked players, for example 10.Example: 10
Time Controltime_controlTextOptionalLeaderboard category, for example blitz.Example: Blitz

What you get

FieldTypeDescription
PlayersplayersList
Nameplayers[].nameTextDisplayed full name, when available.Example: Hikaru Nakamura
Rankplayers[].rankNumberLeaderboard position.Example: 1
Winsplayers[].winsNumberPublished win count, when available.Example: 37427
Drawsplayers[].drawsNumberPublished draw count, when available.Example: 4412
Titleplayers[].titleTextChess title, when available.Example: GM
Lossesplayers[].lossesNumberPublished loss count, when available.Example: 5648
Ratingplayers[].ratingNumberLeaderboard rating or puzzle score.Example: 3469
Countryplayers[].countryTextDisplayed country name, when available.Example: United States
Usernameplayers[].usernameTextChess.com username.Example: Hikaru
Profile Linkplayers[].profile_linkTextPlayer profile page.Example: https://www.chess.com/member/Hikaru

Example result

For Max Results: 10, Time Control: Blitz

JSON
{
  "players": [
    {
      "name": "Hikaru Nakamura",
      "rank": 1,
      "wins": 37427,
      "draws": 4412,
      "title": "GM",
      "losses": 5648,
      "rating": 3469,
      "country": "United States",
      "username": "Hikaru",
      "profile_link": "https://www.chess.com/member/Hikaru"
    },
    {
      "name": "Magnus Carlsen",
      "rank": 2,
      "wins": 5126,
      "draws": 850,
      "title": "GM",
      "losses": 1133,
      "rating": 3402,
      "country": "Norway",
      "username": "MagnusCarlsen",
      "profile_link": "https://www.chess.com/member/MagnusCarlsen"
    },
    {
      "name": "Ediz Gürel",
      "rank": 3,
      "wins": 3244,
      "draws": 644,
      "title": "GM",
      "losses": 2450,
      "rating": 3339,
      "country": "Turkey",
      "username": "gurelediz",
      "profile_link": "https://www.chess.com/member/gurelediz"
    }
  ]
}

For developers

Run this workflow from your own code. In Studio, turn on Developer mode and create an API key.

cURL
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@chess-com",
  "visibility": "public",
  "operation": "get_player_stats",
  "version": 1,
  "input": {
    "username": "https://www.chess.com/member/MagnusCarlsen"
  },
  "response": {
    "format": "json"
  }
}'

What you can do with it

  • Compare player ratings and records across time controls
  • Review a player's recent games and openings
  • Filter recent games by month or game speed
  • Track top players by time control
  • Find ranked players' profile links and countries

Questions

Is Fous affiliated with Chess.com?

No. Fous is not affiliated with Chess.com. This workflow reads the public chess.com website and returns its data.

How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

Do I need a Chess.com account?

No. You only need a Fous account.

How current is the data?

Fous gets the data from chess.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 29, 2026.

What are a player's current and best ratings?

Get player stats returns published current and best ratings by time control for a username or profile link.

What games did a player recently finish?

List recent games returns completed public games for a username and month, newest first.

Who are the top players by time control?

List top players returns ranked players for a selected time control.

All Entertainment workflowsBrowse all workflows