Chess.com
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.
Your information
Player’s Chess.com username or profile link, for example Hikaru or https://www.chess.com/member/Hikaru.
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
Open 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
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 runGet 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
| Field | Type | Required | Description |
|---|---|---|---|
Usernameusername | Text | Required | Player’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
| Field | Type | Description |
|---|---|---|
Blitzblitz | Details | Null when this time control has never been played. |
Winsblitz.wins | Number | Example: 4942 |
Drawsblitz.draws | Number | Example: 838 |
Lossesblitz.losses | Number | Example: 1104 |
Best Ratingblitz.best_rating | Number | Highest published rating.Example: 3410 |
Current Ratingblitz.current_rating | Number | Most recently published rating.Example: 3402 |
Best Rating Dateblitz.best_rating_date | Date | Date of highest published rating.Example: 2026-06-24 |
Dailydaily | Details | Null when this time control has never been played. |
Winsdaily.wins | Number | Example: 73 |
Drawsdaily.draws | Number | Example: 4 |
Lossesdaily.losses | Number | Example: 11 |
Best Ratingdaily.best_rating | Number | Highest published rating.Example: 2464 |
Current Ratingdaily.current_rating | Number | Most recently published rating.Example: 2239 |
Best Rating Datedaily.best_rating_date | Date | Date of highest published rating.Example: 2014-04-10 |
Rapidrapid | Details | Null when this time control has never been played. |
Winsrapid.wins | Number | Example: 135 |
Drawsrapid.draws | Number | Example: 110 |
Lossesrapid.losses | Number | Example: 32 |
Best Ratingrapid.best_rating | Number | Highest published rating.Example: 2977 |
Current Ratingrapid.current_rating | Number | Most recently published rating.Example: 2941 |
Best Rating Daterapid.best_rating_date | Date | Date of highest published rating.Example: 2023-02-06 |
Titletitle | Text | Example: GM |
Bulletbullet | Details | Null when this time control has never been played. |
Winsbullet.wins | Number | Example: 1519 |
Drawsbullet.draws | Number | Example: 222 |
Lossesbullet.losses | Number | Example: 494 |
Best Ratingbullet.best_rating | Number | Highest published rating.Example: 3390 |
Current Ratingbullet.current_rating | Number | Most recently published rating.Example: 3270 |
Best Rating Datebullet.best_rating_date | Date | Date of highest published rating.Example: 2023-03-27 |
Countrycountry | Text | Country name.Example: Norway |
Usernameusername | Text | Example: Magnuscarlsen |
Followersfollowers | Number | Example: 318642 |
Is Streameris_streamer | Yes or no | Example: No |
Joined Datejoined_date | Date | Example: 2010-08-26 |
Display Namedisplay_name | Text | Example: Magnus Carlsen |
Profile Linkprofile_link | Link | Example: https://www.chess.com/member/MagnusCarlsen |
Last Online Datelast_online_date | Date | Example: 2026-09-28 |
Avatar Image Linkavatar_image_link | Text | Example: https://images.chesscomfiles.com/uploads/v1/user/3889224.121e2094.200x200o.361c… |
Best Puzzle Ratingbest_puzzle_rating | Number | Example: 400 |
Puzzle Rush Best Scorepuzzle_rush_best_score | Number | Example: 123 |
Example result
For Username: https://www.chess.com/member/MagnusCarlsen
{
"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 runList 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
| Field | Type | Required | Description |
|---|---|---|---|
Monthmonth | Text | Optional | Month of games in YYYY-MM, for example 2026-09. Defaults to the current UTC month.Example: 2026-09 |
Usernameusername | Text | Required | Chess.com username, for example MagnusCarlsen.Example: Erik |
Max Resultsmax_results | Number | Optional | Maximum number of games, for example 50. Defaults to 50.Example: 2 |
Time Controltime_control | Text | Optional | Game speed, for example blitz. Defaults to all.Example: Daily |
What you get
| Field | Type | Description |
|---|---|---|
Gamesgames | List | |
Pgngames[].pgn | Text | |
Colorgames[].color | Text | Example: Black |
Ratedgames[].rated | Text | Example: Yes |
Resultgames[].result | Text | Example: Loss |
End Timegames[].end_time | Date | Date and time the game ended in UTC.Example: 2026-09-28T23:06:15+00:00 |
Game Linkgames[].game_link | Text | Example: https://www.chess.com/game/daily/1035606720 |
How It Endedgames[].how_it_ended | Text | Example: Resignation |
Opening Namegames[].opening_name | Text | Example: Modern Defense with 1 d4 |
Time Controlgames[].time_control | Text | Example: 1 day per move |
Player Ratinggames[].player_rating | Number | Example: 1402 |
Opponent Ratinggames[].opponent_rating | Number | Example: 1289 |
Opponent Usernamegames[].opponent_username | Text | Example: NorwegianViking82 |
Final Position Fengames[].final_position_fen | Text | Example: 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
{
"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 runList 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
| Field | Type | Required | Description |
|---|---|---|---|
Max Resultsmax_results | Number | Optional | Maximum number of ranked players, for example 10.Example: 10 |
Time Controltime_control | Text | Optional | Leaderboard category, for example blitz.Example: Blitz |
What you get
| Field | Type | Description |
|---|---|---|
Playersplayers | List | |
Nameplayers[].name | Text | Displayed full name, when available.Example: Hikaru Nakamura |
Rankplayers[].rank | Number | Leaderboard position.Example: 1 |
Winsplayers[].wins | Number | Published win count, when available.Example: 37427 |
Drawsplayers[].draws | Number | Published draw count, when available.Example: 4412 |
Titleplayers[].title | Text | Chess title, when available.Example: GM |
Lossesplayers[].losses | Number | Published loss count, when available.Example: 5648 |
Ratingplayers[].rating | Number | Leaderboard rating or puzzle score.Example: 3469 |
Countryplayers[].country | Text | Displayed country name, when available.Example: United States |
Usernameplayers[].username | Text | Chess.com username.Example: Hikaru |
Profile Linkplayers[].profile_link | Text | Player profile page.Example: https://www.chess.com/member/Hikaru |
Example result
For Max Results: 10, Time Control: Blitz
{
"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.
# 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.