It's so frustrating when I lose on time to people who are otherwise ~100 points lower than me.
Time taken by past games

Is there a way to find out how much time was taken by each player in past games?
I see that in a game that is in progress, a log is maintained on the right side of the screen (on a desktop, not mobile) showing how much time a player has taken to move his piece.
I just want a tally of this - I take 40-50 moves each game and I am left with multiple minutes on the clock on 15|10 games but lose on time a lot on 10|0 games.
Here's some moves on one of my games where it shows the time taken in seconds on the right:
I want essentially what I'd get if I add them up by color.
That's not a feature that's available. If you know how to program, you might be able to use the Public API to programmatically generate that information.
https://www.chess.com/club/chess-com-developer-community

Okay, I was able to do this (run this as a snippet in Chrome's DevTools):
async function chessTimestamps(gameId) { if(typeof gameId === "number") { const response = await fetch(`https://www.chess.com/callback/live/game/${gameId}`); if (response) { const json = await response.json(); let {baseTime1, moveTimestamps, pgnHeaders, timeIncrement1} = json.game; moveTimestamps = moveTimestamps.split(','); const len = moveTimestamps.length; for (let i = 0; i < len; i+=2) { moveTimestamps[i] = moveTimestamps[i] - ((i/2 + 1) * timeIncrement1) - baseTime1; moveTimestamps[i + 1] = moveTimestamps[i + 1] - ((i/2 + 1) * timeIncrement1) - baseTime1; } for (let i = len, j = len - 1; i >= 2, j >=2; i-=2, j-=2) { moveTimestamps[i] = moveTimestamps[i] - moveTimestamps[i - 2]; moveTimestamps[j] = moveTimestamps[j] - moveTimestamps[j - 2]; } if(len % 2 === 0) moveTimestamps[2] = moveTimestamps[2] - moveTimestamps[0]; moveTimestamps = moveTimestamps.map(e => e * -1); moveTimestamps = moveTimestamps.slice(0, len) const white = moveTimestamps.filter((e, i) => i % 2 === 0).map(e => e/10).reduce((acc, el) => acc + el); const black = moveTimestamps.filter((e, i) => i % 2 === 1).map(e => e/10).reduce((acc, el) => acc + el); return {[pgnHeaders.White]: white, [pgnHeaders.Black]:black}; } } else { console.log("gameId has to be a number"); return null; }}
Could have a few minor bugs, but if you call it like await chessTimestamps(<yourgameid>) from the console it should return you the time in seconds both players took.
{player1: 266.50000000000006, player2: 599.9999999999999}
Edit: Ouch. It stripped all my newlines, but it should still work fine.
Is there a way to find out how much time was taken by each player in past games?
I see that in a game that is in progress, a log is maintained on the right side of the screen (on a desktop, not mobile) showing how much time a player has taken to move his piece.
I just want a tally of this - I take 40-50 moves each game and I am left with multiple minutes on the clock on 15|10 games but lose on time a lot on 10|0 games.
Here's some moves on one of my games where it shows the time taken in seconds on the right:
I want essentially what I'd get if I add them up by color.