What Is Hit Registration in Online Games?

Run a Speed Test

Hit registration is the server-side process of deciding whether your shot, melee attack, or ability landed on a target. In an ideal world with zero latency, every player would see the same game state simultaneously and the server could simply check if your crosshair overlapped the target when you fired. In reality, every player sees a slightly different version of the world — offset by their network latency — which makes determining "did that shot land?" surprisingly complex.

Why Hit Registration Is Complicated

When you fire at an enemy in an online game, your client sends a packet to the server containing: the timestamp of your shot, your position, your aim direction, and what you were aiming at. By the time that packet reaches the server, some amount of time has passed — your ping. During that time, the enemy you aimed at has moved. The server now sees your shot arriving, but the enemy is no longer where you aimed.

Without any compensation, every player at 50ms ping would need to lead their targets by 50ms worth of movement — an unfair disadvantage versus players with 10ms ping. This would make high-ping players nearly unable to hit anything while low-ping players operate normally.

How Lag Compensation Works

Modern shooters solve this with lag compensation: when your shot packet arrives at the server, the server rewinds the game state to the moment you fired (based on the timestamp in your packet) and performs hit detection against the reconstructed historical positions of all players. If your crosshair overlapped the target at that rewound time, it's a hit — even if the target has since moved to a different position.

This approach has a tradeoff: from the target's perspective, they may have already moved behind cover, yet the server registers them as hit because lag compensation determined the shot was valid at the shooter's point in time. This is the correct call for fairness to the shooter, but creates the experience of "dying behind cover" for the target.

What Causes Bad Hit Registration

  • Packet loss: If your shot packet never reaches the server, the shot is simply not evaluated — a complete miss regardless of where you aimed. Even 1% packet loss means roughly one lost shot every 100 fired.
  • Ping too high for lag compensation window: Servers cap how far back they'll rewind history — typically 200–400ms. If your ping exceeds this window, lag compensation cannot reconstruct a valid state for your shot and it may be rejected.
  • Ping spikes: A shot sent during a latency spike may arrive timestamped outside the compensation window, or the timestamp may be inconsistent with the server's recorded history.
  • Low server tickrate: At 64 tick, player positions are recorded every 15.6ms. A shot fired between ticks is evaluated against a position that may be up to 15.6ms stale. Higher tickrate improves positional accuracy in the history buffer.
  • Server performance issues: An overloaded server running ticks slower than its target rate has an inconsistent history buffer, degrading lag compensation accuracy for all players.

Client-Side vs Server-Side Hit Detection

ApproachHow It WorksTradeoff
Server-authoritative (standard)Server evaluates all hits using lag compensationFair and cheat-resistant; can feel inconsistent at high ping
Client-authoritativeClient reports hits and server trusts themInstant feedback; extremely vulnerable to aim-bot and hit manipulation cheats
HybridClient reports, server validates within toleranceFaster feel, some cheat resistance; edge cases can slip through

Competitive games use server-authoritative hit detection because client-authoritative systems are trivially exploited by cheats that manipulate hit reports.

Diagnosing Hit Registration Problems

  • Enable in-game network debug overlays — look for packet loss % and ping spikes correlating with missed shots.
  • Review death replay or kill cam footage — "dying behind cover" is lag compensation working as intended; missed shots with on-screen hit markers indicate a network path problem.
  • Run PingPlotter to the game server IP during a session to detect jitter and loss patterns.
  • Reduce ping and eliminate packet loss first — most hit registration issues resolve with a stable, low-latency connection.

Frequently Asked Questions

Why do I sometimes see a hit marker but deal no damage?

Hit markers are generated client-side based on your local game state. The server independently evaluates the shot using lag compensation. If the server's determination disagrees — because the target had already moved or your shot packet arrived outside the lag compensation window — the server registers a miss while your client showed a hit. Most common above 80ms ping or with any packet loss.

Does a higher tickrate server improve hit registration?

Yes — higher tickrate reduces the tick boundary quantization error (7.8ms at 128 tick vs 15.6ms at 64 tick) and maintains a more accurate positional history for lag compensation. Shots fired at the moment an enemy moves to cover are less likely to be incorrectly registered as misses.

Related Guides

Foundational Concepts

More From This Section