WarzoneCS WarzoneCS

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?