Tick rate and snapshots
The server's heartbeat
A game server works in steps called ticks. Each tick, it reads players' inputs, moves everything, and checks what hit what.
Valve's Source engine, used for Counter-Strike: Source, says: "By default, the timestep is 15ms, so 66.666... ticks per second".
Snapshots
The server does not send the world every tick. It sends snapshots: a picture of the world at one tick.
In Source, how many snapshots a client asks for is set by cl_updaterate, which defaults to 20 a second. That is one snapshot every 50 ms.
Quick check
With cl_updaterate at its default of 20, how often does a Source client get a snapshot?
- Every 50 ms
- Every 15 ms
- Once a second
Show the answer
Every 50 ms
One second is 1,000 ms. Divided by 20 snapshots, that is one every 50 ms.
Drawing between snapshots
Things would jump every 50 ms if the game drew only snapshots. So the client draws the world slightly in the past and slides smoothly between two snapshots. That is interpolation.
Source "defaults to an interpolation period ('lerp') of 100-milliseconds", so that "even if one snapshot is lost, there are always two valid snapshots to interpolate between."
Read the config
1tickrate 662cl_updaterate 203cl_interp 0.1
Remy's server sends this config. How far in the past does Kai's app draw other players?
- 100 ms
- 15 ms
- 66 ms
Show the answer
100 ms
cl_interp 0.1 is 0.1 seconds, which is 100 ms. That buys room for one lost snapshot.
What a tick costs
More ticks mean smoother movement and fairer hits. They also mean more server work per match and more data per player.
A shooter needs fast ticks. Shard Garden is a calm game where plants grow and players walk, so Remy picks 20 ticks a second.
True story: VALORANT's 128 ticks
Riot Games decided its shooter VALORANT needed 128-tick servers, to give defenders the time they need to react to attackers.
At 128 ticks, the server must work out each frame in 7.8125 ms. Riot engineer Brent Randall wrote that at that budget "a single game would take up an entire CPU core", far too expensive, since Riot "wanted to offer 128-tick for free". The goal became better than 3 games per core. After much optimising, VALORANT launched in 2020 with free 128-tick servers.
Source: Riot Games: VALORANT's 128-Tick Servers (2020), riotgames.com
Do the sum
Each frame must take at most 7.8 ms, and one core runs 3 games. About how long can each game's frame take?
- About 2.6 ms
- About 7.8 ms
- About 23 ms
Show the answer
About 2.6 ms
7.8 ms shared by 3 games is about 2.6 ms each, which is the number Riot worked from. More ticks a second shrink that budget further.
Quick check
Raising the tick rate is free.
- True
- False
Show the answer
False
Every tick is work for the server, and every snapshot is data for each player. The rate is a trade.
The other way
Snapshots carry the world to the player. Inputs travel the other way, and each one takes a full trip before the server answers. Kai's own moves need a trick.
Bolt says: Next: client prediction.
Fact-checked 12 October 2026
- Valve: Source Multiplayer Networking developer.valvesoftware.com
- Riot Games: VALORANT's 128-Tick Servers (2020) riotgames.com