CalcBrew

CS2 Crosshair Converter

The September 2026 Rush Hour update rejects every old crosshair code (“Invalid or old crosshair code”) and moved the settings to a new Crosshair/Scopes menu with a different scale. Paste your old code or console commands — or drop your CS2 config file — and get the exact values for the new menu, console lines that actually paste, and a picture of the menu with your numbers filled in. Nothing is uploaded.

By the CalcBrew team · Updated

Nothing is uploaded; the conversion runs in your browser.

Or drop your config file herecs2_user_convars_0_slot0.vcfg from C:\Program Files (x86)\Steam\userdata\<your id>\730\local\cfg (the numeric folder is your Steam id). The file is read in your browser and never uploaded; the old values, the new menu values and the console lines appear automatically.

No old code saved? Get your old values — any one of these works

1. Ask the game (30 seconds, game running)

Settings → Game → “Enable Developer Console” = Yes. Open the console with the ` key (left of 1), paste this line, press Enter, then select the printed lines, copy them and paste them into the box above. Your old size and thickness are still stored in the game even though the menu no longer shows them.

cl_crosshairstyle; cl_crosshairsize; cl_crosshairthickness; cl_crosshair_drawoutline; cl_crosshaircolor_r; cl_crosshaircolor_g; cl_crosshaircolor_b; cl_crosshairalpha; cl_crosshairdot; cl_crosshair_t; cl_crosshair_recoil; cl_crosshair_dynamic_splitdist; cl_crosshair_dynamic_splitalpha_innermod; cl_crosshair_dynamic_splitalpha_outermod; cl_crosshair_dynamic_maxdist_splitratio

2. Use the config file (game closed, no console needed)

Drop C:\Program Files (x86)\Steam\userdata\<your id>\730\local\cfg\cs2_user_convars_0_slot0.vcfg onto the box above, or open it in Notepad, press Ctrl+A, Ctrl+C and paste the whole file into the text box; the converter picks out the cl_crosshair lines itself. The folder with your numeric Steam id is usually the only one under userdata. The file ….vcfg_lastclouded next to it is Steam Cloud’s copy of the same. Bonus: if that folder also has a config.cfg from CS:GO days, search it for cl_crosshairgap — CS:GO saved the gap there, and it is the one value the update deleted.

3. Dig up an old code

Search Discord, Steam chat or WhatsApp for “CSGO-”, check the crosshair site you copied from, or ask a teammate who uses the same crosshair. A code with one mistyped character is corrected automatically.

4. Type the three old slider values

The update kept your color, outline, dot, T-style and recoil exactly as they were; only Size, Gap and Thickness moved to a new scale. If you remember them, or can read them from an old screenshot, a teammate with the same crosshair, or the crosshair site you copied from, enter them here:

About the old gap: the update deleted cl_crosshairgap from the game (the console answers “Unknown command”), so it cannot be read back — it has to come from an old code, a screenshot or memory. Leave it empty to assume the old default −2.2 (new Gap 4 at 1080p) and fine-tune in the menu; one old gap step of 0.5 is about one new Gap step.

Share:

What the Rush Hour update changed

On 22 September 2026 Valve made crosshairs resolution independent, added a Crosshair/Scopes tab to the settings, introduced five new styles and changed the default crosshair to Dynamic Quad. The old sliders (cl_crosshairsize, cl_crosshairgap, cl_crosshairthickness) were replaced by Length, Gap and Thickness on a new integer scale, the outline thickness slider and the five color presets were removed, and a Dynamic Spread Limit slider was added. Old share codes stopped working the same day.

Old settingNew menu settingConversion
cl_crosshairstyle 0–5Crosshair style 0–7Classic → Dynamic Cross (Classic), Classic static → Static Cross, Legacy → Legacy
cl_crosshairsize 0–10Length 0–255round(old × height ÷ 480) px — × 2.25 at 1080p
cl_crosshairgap −5…5Gap 0–128Gap = trunc(4 + old) + ⌊thickness px ÷ 2⌋ + 1 (the old gap never scaled with resolution)
cl_crosshairthickness 0.1–6Thickness 0–31round(old × height ÷ 480), minimum 1: 0–0.6 → 1 px, 1 → 2 px, 1.5 → 3 px at 1080p
cl_crosshair_drawoutline + outlinethickness 0–3Outline Yes/Nooutline width is fixed now
cl_crosshaircolor 0–5 + r/g/bColor picker R, G, Bpresets converted to RGB
cl_crosshairusealpha + cl_crosshairalphaTransparency (alpha) 0–255alpha off → 255
cl_crosshairdot, cl_crosshair_t, cl_crosshair_recoilCenter Dot, T Style, Follow Recoilunchanged
cl_crosshair_dynamic_splitdist 0–16Split Distance 0–127unchanged value
cl_fixedcrosshairgap, cl_crosshairgap_useweaponvalueremoved from the menu
Dynamic Spread Limit 0–255new setting, default 255

The new crosshair styles

ValueName in the menuOld equivalent
0Dynamic Crossnone, new in this update
1Dynamic Circlenone, new in this update
2Dynamic Cross (Classic)Classic (styles 0–3)
3Static Circlenone, new in this update
4Static CrossClassic static (4)
5Dynamic Cross (Legacy/Shot Feedback)Legacy (5)
6Dot Onlynone, new in this update
7Dynamic Quad (new default)none, new in this update

Where to find your old crosshair code

Most players never wrote their code down, so check these places in order. Any one of them is enough — and if none works, the console route in the next section recovers everything except the gap in about 30 seconds.

  1. Chat history. Search Discord, Steam chat, WhatsApp or Telegram for “CSGO-”. Codes are usually shared with teammates at least once.
  2. The site you copied it from. If your crosshair came from a pro-settings site or a crosshair generator, the same code is still listed there.
  3. A teammate with the same crosshair. Their old code decodes to your settings, typos included: the converter fixes a single mistyped character automatically.
  4. Old screenshots or clips. The old settings screen showed the slider values; the “type the three old slider values” fields take them directly.
  5. The game itself. Size and thickness are still stored on your PC, see below.

Crosshair reset? Recover the old values from your config

The update kept almost everything. Your old size, thickness and alpha are still in the game as hidden variables (cl_crosshairsize, cl_crosshairthickness, cl_crosshairalpha), and style, color, outline, dot, T-style, recoil and the split settings never left the console. The new menu simply ignores the old values and starts from Length 8, Gap 4 and Thickness 2. This works even if you never saved a share code.

In the game: enable the console under Settings → Game, open it, paste the query line from the converter’s “Get your old values” panel and press Enter. The console prints each value on its own line, for example cl_crosshairsize = 1.053793; copy those lines into the converter as they are.

The one thing that is gone: the old gap. The update deleted cl_crosshairgap (and the color preset, use-alpha and outline-thickness switches, none of which matter). The console answers “Unknown command”, so the gap has to come from an old share code, from a config file that still has the line, or from memory. The converter assumes the old default −2.2 when the gap is missing and shows a field where you can type your own; the table below the tool lists which old gap gives which new value.

Without the game:

  1. Find C:\Program Files (x86)\Steam\userdata\<your id>\730\local\cfg\cs2_user_convars_0_slot0.vcfg. The folder with your numeric id is usually the only one. Simplest: drag that file onto the converter’s drop box — it is read in your browser, never uploaded, and the values and console line appear at once.
  2. Or open it in Notepad, press Ctrl+A and Ctrl+C, then paste the whole file into the converter above; it picks out the "cl_crosshair lines itself (for example "cl_crosshairsize" "1.053793"). Values that are missing fall back to the old game defaults.
  3. The .vcfg_lastclouded file in the same folder is Steam Cloud’s copy of the same settings. If the folder also contains a config.cfg from CS:GO days, open it and search for cl_crosshairgap: CS:GO saved the gap there, which is the one value the update deleted.

How to tell old values from new ones in that file: lines with the new names (cl_crosshair_length, cl_crosshair_gap, cl_crosshair_thickness) belong to the new menu; if they still read 8, 4 and 2, you have not changed anything since the update. Lines with the old names (cl_crosshairsize, cl_crosshairthickness) cannot be written by the new menu at all, so whatever they contain is your pre-update crosshair.

Old gap → new Gap (1080p, default size 3.9)

Old cl_crosshairgapNew GapOld cl_crosshairgapNew Gap
-50-41
-3.51-32
-2.52-2.22
-23-1.53
-14-0.54
050.55
161.56
272.57
383.58
49510

Three ways to put the old crosshair back into the game

The converter shows all three under the result; they set the same variables, so use whichever you trust. Whichever way you choose, first select the resolution you play at in the converter: the new values are pixels at the resolution they are set at, and the game rescales them for other screens.

  1. One line in the console. Enable the console under Settings → Game, open it with the ` key, paste the converter’s line and press Enter — all twelve settings apply at once. The line is packed without spaces after the semicolons to stay under the console’s paste limit (a 274-character line ran in testing, a 430-character one did nothing); a multi-line paste is not executed at all, which is the usual reason “nothing happened”.
  2. Sliders in Settings → Crosshair/Scopes. The converter draws a copy of the game’s menu with your values filled in, row by row in the game’s order: pick the style, click the color box and type R, G, B and alpha, then set Thickness, Length and Gap. This is the safest way because you see the preview change.
  3. Config file. Save the same line into Steam\steamapps\common\Counter-Strike Global Offensive\game\csgo\cfg\autoexec.cfg, which CS2 runs at every start, or close the game and edit the numbers on the cl_crosshair_length, cl_crosshair_gap and cl_crosshair_thickness lines of cs2_user_convars_0_slot0.vcfg directly. When editing the file, use the converter’s 1080p numbers and leave cl_crosshair_screen_height at 1080.

How the conversion was verified

The old share-code format is fully known: 18 bytes with a checksum, the same in CS:GO and CS2. The new setting names, ranges and which rows the menu shows for each style come from the game’s own settings files after the update; the menu sliders are bound directly to the cl_crosshair_length, cl_crosshair_gap and cl_crosshair_thickness variables, and the hidden cl_crosshair_screen_height records the resolution the values were authored at, which is why the converter asks for yours. The old drawing rules come straight from the CS:GO source (CWeaponCSBase::DrawCrosshair): bar length and thickness scale with screen height ÷ 480, the bar distance is trunc(4 + gap) pixels regardless of resolution, and the nearest bar pixel is distance + ⌊thickness ÷ 2⌋ + 1 from the center. The new menu was measured directly in CS2 on 23 September 2026 with an automated harness: 59 combinations of Length (0–20), Gap (0–10), Thickness (1–8), dot and outline were set through the console, screenshotted losslessly at 1920×1080 and analysed pixel by pixel. Result: Length and Thickness are exact pixel counts, the bars begin exactly Gap pixels from the center pixel, Gap 0 renders like Gap 1, the dot is a Thickness × Thickness square, and the outline does not move the bars. The two pro crosshairs checked by eye (donk, ZywOo) fall out of the same formula. The calibration panel still lets you adjust the base gap for configs that used a weapon-specific gap.

Related tools: CPS test, reaction time test and the unit converters.

Frequently asked questions

Cite this calculator
APACalcBrew. (2026). CS2 Crosshair Converter. https://calcbrew.com/cs2-crosshair-converter
MLA“CS2 Crosshair Converter.” CalcBrew, 2026, calcbrew.com/cs2-crosshair-converter.

Link to https://calcbrew.com/cs2-crosshair-converter. Results are estimates; cite the underlying formula or data source for academic work.

Related tools

More in Games & Tests · All tools & games