CS 1.6 Crosshair Guide — Static, Dynamic, Custom
Every CS 1.6 crosshair setting explained — cl_crosshair_size, color, translucency, dynamic vs static, custom crosshair configs. Copy-paste cfg included.
Updated: 2026-07-30
The CS 1.6 crosshair is the most personal setting in the game. What ships by default — a wide dynamic reticle that gets bigger when you move — is objectively bad for aim. Every serious player customises it within the first five minutes.
This guide covers every crosshair command available, what actually affects hit registration (nothing does — crosshair is cosmetic), and a copy-paste config for the most-copied pro setup.
Where crosshair commands go
Type them in the console (~ key) for instant effect. To persist across sessions, drop them in Half-Life\cstrike\config.cfg or a custom userconfig.cfg. Details: CS 1.6 config files explained.
The core commands
cl_crosshair_size <auto|small|medium|large>
cl_crosshair_color "0 255 0"
cl_crosshair_translucent <0|1>
cl_dynamiccrosshair <0|1>
That's four commands. That's the whole surface. Every "crosshair generator" website you'll find on Google is just a UI for these four values.
cl_crosshair_size
Old builds took auto|small|medium|large. Modern builds also accept a numeric pixel value:
cl_crosshair_size small // classic "1"
cl_crosshair_size medium // classic "2"
cl_crosshair_size large // classic "3"
cl_crosshair_size auto // scales with resolution (default; hurts consistency)
cl_crosshair_size 3 // some builds — direct pixel count
Prefer small. A tight crosshair keeps your eye trained on the exact pixel you're targeting. Big crosshairs teach your eye to look at the reticle instead of the target — a habit competitive shooters spend years unlearning.
cl_crosshair_color "R G B"
RGB triplet, 0-255 each.
| Preset | RGB | Notes |
|---|---|---|
| Neon green | "0 255 0" |
The default. Most-visible on dust2 tan + brown, but disappears on de_train's grass. |
| Cyan | "0 255 255" |
Popular Balkan/Slavic scene choice — pops on dust2 AND train. |
| Yellow | "255 255 0" |
Some pros use it. Blends into desert maps. |
| Magenta | "255 0 255" |
Extreme visibility — never blends with map colors. |
| White | "255 255 255" |
Blends into muzzle flash. Bad. |
| Red | "255 0 0" |
Blends with blood + player models. Bad. |
Neon green or cyan are safe defaults. Test yourself: fire a spray on cs_office (bright walls) and de_train (dark backgrounds) — pick whichever color stays visible on both.
cl_crosshair_translucent 1
Draws the crosshair with alpha blending — you can see through it. On busy backgrounds (crowded HUD, chat spam) this stops the reticle from obscuring targets. Zero downside.
Always set to 1.
cl_dynamiccrosshair 0
Kills the classic Valve-default "crosshair grows when you move / shoot / crouch" behavior.
Always set to 0. Dynamic crosshair lies to you about where your bullet will go. A static crosshair matches the game's first-shot accuracy cone precisely — you learn the tap-fire rhythm faster.
Every competitive CS 1.6 player runs cl_dynamiccrosshair 0. Non-negotiable.
What crosshair commands do NOT affect
- Hit registration. The bullet fires from the center of the screen regardless of what your crosshair looks like. A custom crosshair image isn't better or worse than the default.
- First-shot accuracy. Same as above — accuracy cone is defined by the weapon, not the reticle.
- Recoil pattern. Weapon-defined, unchangeable.
- Ban risk. Every crosshair setting listed above is a stock command. Zero ban risk on any server.
Custom sprite crosshairs
Some players replace the reticle with a custom .spr sprite file — a dot, a circle, an anime character, whatever. The relevant command:
cl_crosshair_file "<path>"
Point at a .spr file inside Half-Life\cstrike\. Sprite must be 8×8 or 16×16 pixels, otherwise GoldSrc rejects it.
Legit sprites live at Gamebanana under Skin category → CS 1.6 → Crosshair. Community-made, virus-free (community moderation catches malware fast).
Some servers disable custom sprites via sv_cheats 0 + sprite-hash checks. If your custom crosshair reverts to the default cross on a specific server, that's why.
Sprite crosshairs are cosmetic. They don't help you aim better than the built-in cl_crosshair_size small variant. If you're grinding aim, stick to the stock crosshair.
Copy-paste config — the "most-copied pro setup"
Paste this into Half-Life\cstrike\userconfig.cfg (or config.cfg at the end):
// -----------------------------------------------------
// Crosshair — static, small, cyan, translucent
// -----------------------------------------------------
cl_crosshair_size "small"
cl_crosshair_color "0 255 255"
cl_crosshair_translucent "1"
cl_dynamiccrosshair "0"
// Related visibility tweaks
cl_min_ct 4 // force CT model to Seal Team 6 (highest contrast)
cl_min_t 4 // force T model to Guerrilla (highest contrast)
cl_minmodels 1 // enable model forcing
r_dynamic 0 // disable dynamic lighting (crosshair pops more)
cl_min_ct + cl_min_t + cl_minmodels 1 force every player to render as the same model — kills team-color confusion, makes the crosshair easier to track against the same silhouette every time. Not a cheat — Valve added these commands specifically to reduce distraction.
Save the file, restart the game, verify with cl_crosshair_size in the console.
What next?
- CS 1.6 console commands guide — the full command reference
- CS 1.6 launch options — settings that go on the shortcut, not in the console
- CS 1.6 damage and hitboxes — where you're actually aiming matters more than what your crosshair looks like
- CS 1.6 weapons guide — first-shot accuracy per weapon