Source: https://gameye.com/glossary/client-side-prediction/

---
title: "Client-Side Prediction | Gameye"
description: "Client-side prediction applies player inputs locally without waiting for the server, so movement feels instant even on high-latency connections."
---

# Client-Side Prediction

Client-side prediction is a technique where a player’s game client immediately applies their own inputs locally — without waiting for server confirmation — so movement feels instant even on a high-latency connection.

Without it, every action you take — moving, jumping, shooting — would feel delayed by your round-trip ping. On a 100ms connection that means 100ms of input lag for everything, regardless of what you do. Client-side prediction eliminates that delay for the player’s own character.

## How it works

When you press a movement key, two things happen simultaneously. Your client immediately moves your character on your screen — no waiting. At the same time, the input is sent to the server, which processes it authoritatively and sends back the confirmed state.

When the server’s confirmation arrives, the client compares it against what it predicted. If they match, nothing changes. If they disagree — the server says you were slightly further left, or stopped by a wall your client didn’t know about — the client corrects to the server’s authoritative position. This correction is called a **rollback** or **reconciliation**.

Done well, these corrections are small and frequent enough that players rarely notice them. Done poorly, you see your character snap or rubber-band back to a different position.

## Prediction vs. authoritative server

Client-side prediction does not change who is authoritative. The server is always the source of truth. Prediction is a local optimisation: the client makes an educated guess about what the server will confirm, renders it immediately for responsiveness, then quietly corrects if it was wrong.

This is why cheating the client does not let you cheat the server. A hacked client can show you whatever it wants locally, but the server validates every input independently and ignores positions the client claims that are not physically possible.

## Predicting other players

Client-side prediction only applies cleanly to _your own_ character, because you know exactly what inputs you are sending. Other players’ characters are harder — you receive their positions from the server with a delay, and you do not know their inputs in advance.

The solution for other players is **interpolation**: smoothly rendering them between the last two known server positions rather than teleporting them on each update. Interpolation adds a small deliberate delay (typically one to two ticks) in exchange for smooth movement. The combination — prediction for yourself, interpolation for others — is the standard model in every major multiplayer engine.

## Why this matters for server infrastructure

Client-side prediction works best when server tick rate is high and server response times are consistent. If a server is overloaded and tick timing becomes irregular, the gap between predicted state and confirmed state widens — producing more frequent corrections and more visible rubber-banding. A dedicated server on reliable hardware with consistent tick delivery is what keeps prediction invisible to players.

**See also:** [Lag Compensation](https://gameye.com/glossary/lag-compensation/) · [Netcode](https://gameye.com/glossary/netcode/) · [Tick Rate](https://gameye.com/glossary/tick-rate/) · [Authoritative Server](https://gameye.com/glossary/authoritative-server/)

Building a multiplayer game? Gameye hosts dedicated game servers: ship your server as a Docker container and start one per match with a single API call, in a region near your players.

[See how it works &rarr;](https://gameye.com/how-it-works/)

[Back to Glossary](https://gameye.com/glossary/)

## Related terms

- ### Lag Compensation

Lag compensation rewinds server game state to the moment a player fired, judging shots fairly despite network delay. [Read more](https://gameye.com/glossary/lag-compensation/)
- ### Netcode

Netcode synchronises game state between players. Poor netcode causes lag, rubber-banding, and hit registration issues in multiplayer games. [Read more](https://gameye.com/glossary/netcode/)
- ### Latency

Latency is how fast data is moving. How quickly does it get from point A to point B? (And it’s generally measured in milliseconds.) [Read more](https://gameye.com/glossary/latency/)
- ### Authoritative Server

An authoritative server runs your game logic and determines match truth — no client can override it, making cheating structurally impossible. [Read more](https://gameye.com/glossary/authoritative-server/)
- ### Tick rate

Tick rate is how many times per second a game server updates the game state, measured in hertz (Hz). A 64-tick server updates 64 times a second; a 128-tick server, 128. [Read more](https://gameye.com/glossary/tick-rate/)
