Online chess clocks look simple: two numbers counting down. Under the hood, the server has to decide when a move arrived, how much time elapsed, and whether the flag fell before or after the move.
The server owns the clock
The authoritative clock runs on the server, not in your browser. Your browser shows an estimate and adjusts when the server sends an update. This is why a clock can jump slightly after a move: the server is correcting the local display.
Latency
Your move travels to the server, is validated, and is broadcast to the opponent. The time between pressing the piece and the server receiving the move is latency. Good platforms keep this small and consistent; they cannot make it zero.
If the server timestamp says the move arrived after the flag fell, the game ends on time even if your screen still showed a fraction of a second. That is why clock disputes are usually resolved by server logs, not screenshots.
Increment
Increment is added after a move is accepted. With 5+3, each accepted move adds three seconds to the mover's clock. The increment does not apply before the first move, and it does not rescue a flag that already fell.
Practical habits
- Do not rely on the last 0.3 seconds; server latency can be longer than that.
- Use increment for long games if you dislike flag falls.
- If the clock looks wrong, finish the game and report it with the game ID; do not argue in chat.
ChessUrge runs clocks in the realtime service and records the result server-side. Review the game afterwards in the library.
See the whole game, not just the blunder.
Choose a review depth, see the maximum cost, and get move-by-move accuracy with blunder, mistake and inaccuracy markers.