Home/Counter-Strike 2/Tools/Crosshair generator

CS2 tool

CS2 crosshair generator: build, preview and copy your own

Build a CS2 crosshair and see it before you commit to it. Adjust size, gap, thickness, outline and colour, preview it against Dust, Mirage and Inferno tones at native or 4:3 stretched, then copy the console commands or download an autoexec file.

It works the same way if you still call it a CS:GO crosshair generator, since nearly every cl_crosshair command carried over to Counter-Strike 2 unchanged.

Key takeaways

  • Size, gap, thickness and outline are the four settings that change how you aim. The rest are preference.
  • Every setting maps to one cl_crosshair console command, and most carried over unchanged from CS:GO.
  • The visibility score averages contrast across six map-like surfaces, so a crosshair that only reads on a menu scores low.
  • A 4:3 stretched resolution widens the crosshair horizontally, so check it at your own resolution before committing.
PreviewMap
1920x1080 · 16:9 native
Preview
Size
2
Thick
0.5
Gap
-2
Alpha
255
Visibility Score
63Playable
Dark
Brig
Dust
Mira
Infe
Smok

Weakest on Inferno. Try cyan, green, pink, or a thicker outline.

Style

Crosshair Style

Color

Crosshair Color

Alpha
Dimensions

Size, Thickness, Gap

Size
Thickness
Gap
Advanced

Outline, Recoil, Sniper

Outline Thickness
Sniper Width
px
Resolution

Resolution Preview

Commands unchanged

Simulate how the crosshair reads at native, stretched, and 16:10 setups.

Output

Copy your commands

cl_crosshairstyle 4; cl_crosshairsize 2; cl_crosshairthickness 0.5; cl_crosshairgap -2; cl_crosshairdot 0; cl_crosshair_drawoutline 1; cl_crosshair_outlinethickness 1; cl_crosshair_t 0; cl_crosshair_recoil 0; cl_crosshaircolor 5; cl_crosshaircolor_r 0; cl_crosshaircolor_g 255; cl_crosshaircolor_b 102; cl_crosshairusealpha 1; cl_crosshairalpha 255; cl_crosshair_sniper_width 1;
Presets

Start from a preset

Click any preset to apply it to the builder above, then tweak from there.

Every console variable this builder writes was checked against the live CS2 build in August 2026, and re-checked at each major update.

What each CS2 crosshair setting does

Four settings change how you aim, and the rest are preference. Size, gap, thickness and outline decide how much of the target your crosshair covers and whether you can still see it when the screen gets busy. Colour, the centre dot and the T shape change how it feels rather than how well it works.

The useful way to think about it is trade-offs. A bigger, thicker crosshair is easier to track but hides more of a head at range. A tighter gap makes the centre easier to place but harder to spot in a fight. An outline costs nothing and is the one change that reliably helps, which is why it is the first thing to turn on when a crosshair keeps disappearing.

Almost none of this changed when CS:GO became CS2. The variable names, the ranges and the behaviour carried over, so a crosshair line from a years-old config will usually still work, and a CS:GO crosshair generator and a CS2 one are producing the same commands.

CS2 crosshair settings, the console variable each one writes, and what changing it does
SettingConsole variableWhat changing it does
Stylecl_crosshairstyleStatic or dynamic. Style 4 is the classic static crosshair, and the dynamic styles expand as you move and shoot.
Sizecl_crosshairsizeLength of each line. Longer lines are easier to find on a busy screen and cover more of what you are aiming at.
Thicknesscl_crosshairthicknessWidth of each line. Thicker reads better against noise, thinner is more precise at range.
Gapcl_crosshairgapSpace at the centre. A negative value pulls the lines in, which is why most competitive setups run below zero.
Centre dotcl_crosshairdotAdds a pixel at the exact aim point. Helps with pre-aim, adds clutter at close range.
Outlinecl_crosshair_drawoutlineDraws a dark border around the lines. This is the single biggest visibility change you can make.
Outline thicknesscl_crosshair_outlinethicknessHow heavy that border is. Around 1 is enough on most colours.
T shapecl_crosshair_tRemoves the top line so nothing sits above the aim point.
Recoil followcl_crosshair_recoilMoves the crosshair with your spray pattern rather than holding still.
Colourcl_crosshaircolor_r / _g / _bCustom colour, used when cl_crosshaircolor is set to 5. Pick against the maps you play, not a menu.
Alphacl_crosshairalphaOpacity from 0 to 255, active when cl_crosshairusealpha is 1. Lower values cost visibility.
Sniper widthcl_crosshair_sniper_widthThickness of the scoped AWP and SSG crosshair lines only.

If you would rather not start from a blank builder, our CS2 pro crosshair codes page lists what professionals actually run, and the CS2 binds generator writes its output in the same shape, so both sit in one autoexec file.

How to tell if your crosshair is actually visible

A crosshair that looks sharp on a dark menu can vanish against Mirage's sand or inside a smoke, and you will not find that out until you lose the duel. That is what the visibility score above is for.

What it measures. Your crosshair is compared against six reference surfaces: dark, bright, and tones standing in for Dust, Mirage, Inferno and smoke. Each surface takes the stronger of two contrast readings, the crosshair body against that surface and its outline against it, adjusted up for a heavier body or thicker outline and down for busy surfaces and lowered alpha. The number you see is the average of all six, from 0 to 100, so a crosshair has to read everywhere to score well.

What to do about a low score. Turn the outline on first, because a dark border works on every surface at once and no colour does. Then put alpha back to full, since anything below roughly 200 costs visibility for very little in return. Colour is worth touching last, and the rule there is to pick against the maps you play rather than the one you are looking at.

Why 4:3 stretched changes your crosshair

A stretched resolution widens everything horizontally, the crosshair included, so a setup tuned at 1920x1080 does not look the same at 1280x960 stretched to a 16:9 panel. The lines get visibly wider while keeping their height, which makes the same numbers read as thicker and the gap read as larger.

The practical fix is small. If you play stretched, tune the crosshair at your own resolution rather than copying numbers from someone on native, and expect to pull size and thickness down slightly from what a 16:9 player would use. Black bars behave like native, so only the stretched profiles need this.

The resolution preview above switches between native 16:9, 16:10 and the common 4:3 profiles without changing a single command, so you can check both before deciding. If you are still setting up a stretched resolution in the first place, our CS2 launch options guide covers the part that happens outside the game.

How to use the commands

Three steps, whether you want the crosshair for one session or every one after it.

  1. Open the developer console

    Turn the developer console on in CS2's Game settings, then press the tilde key to open it. Without it enabled, the key does nothing.

  2. Paste the console line

    Copy the console line from the builder, paste it into the console, and press Enter. The crosshair changes immediately, so you can check it in a lobby before committing.

  3. Save it in an autoexec file

    Switch the output to Autoexec, download the .cfg, and put it in your CS2 cfg folder as autoexec.cfg so the crosshair loads with the game rather than being pasted each session.

FAQ

CS2 Crosshair Generator Questions

What is a CS2 crosshair generator?

A CS2 crosshair generator lets you change Counter-Strike 2 crosshair settings visually and copy the matching console commands.

How do I use a generated CS2 crosshair?

Copy the generated commands, open the CS2 developer console, paste the commands, and press Enter. You can also place the commands in an autoexec file.

Can I import my current CS2 crosshair?

Yes, as long as it is in command form. Paste your existing cl_crosshair console commands into the import box and the supported settings update in the builder. The importer reads console commands only, so a CSGO-XXXXX share code will not work here.

Can I preview 4:3 stretched CS2 crosshairs?

Yes. The resolution preview lets you check the same crosshair at native 16:9, 16:10, and common 4:3 stretched profiles like 1280x960 and 1024x768.

How does the visibility score work?

The visibility score measures the contrast between your crosshair and six reference surfaces: dark, bright, and tones sampled to stand in for Dust, Mirage, Inferno and smoke. Each surface gets a score from the stronger of two readings, the contrast of the crosshair body against that surface and the contrast of its outline, then that score is adjusted up for a heavier body or a thicker outline, and down for busy surfaces and for lowered alpha. The number shown is the average of the six, from 0 to 100, so a crosshair that reads well everywhere scores higher than one that only reads on a menu background.

Does this tool generate official CS2 share codes?

No. The generator outputs console commands, which you paste into the console or save in an autoexec file. Pro share codes in the CSGO-XXXXX format live on our CS2 pro crosshair codes page instead.

What are the best CS2 crosshair settings?

There is no single best setup, but most players start with a small static crosshair, high contrast against map tones, a visible gap, and little or no dot. Our CS2 pro crosshair codes page shows what professionals actually run if you would rather start from a setup that works.

Or start from a pro's crosshair

A blank builder is not the only way in. Copy a setup that already works, then bring it back here and tune it.