VALORANT Crosshair Codes: Pro Codes and How to Import
Real pro crosshair codes for VALORANT with the parameter logic behind them, how to import a code, and how to copy a reticle mid-match.
A VALORANT crosshair is not a picture you copy by eye — it is a text string that reproduces a reticle exactly, down to the opacity of the outline. That means pro reticles are genuinely cloneable, and it also means you can read what a pro actually chose instead of guessing from a screenshot. This page gives the codes, decodes what the characters mean, and explains which settings change your aim and which are noise.
The role guide explains how each agent wants to fight, and the VALORANT hub has the rest of the basics.
What a code actually is
A code is a chain of key-value pairs read left to right. Three blocks can appear in one string:
P— your primary crosshair, the one you use 95% of the time.A— the aim-down-sights crosshair, separate from the primary.S— the sniper scope dot, including its size.
Inside a block the keys are terse but readable. c is colour (c;1 green, c;5 cyan, c;7 red, c;8 custom hex via u), o toggles outlines, d adds a centre dot, 0l and 0t are inner-line length and thickness, 0o is the centre gap, 0a is opacity, and 1b;0 switches the outer lines off entirely. Anything you leave out of a string stays at its default value — which is why a short code is not an incomplete one.
Once you can read keys, you can edit a code in a text editor before importing. Want a pro’s shape in a different colour? Change c;5 to c;1 and the reticle arrives green without touching a slider.
Pro codes, copied from the source
These were pulled from each player’s profile page on ProSettings.net on 2026-10-28, then cross-checked against the ESBlitz dataset of 532 decoded pro codes. The eDPI column is their own DPI multiplied by their in-game sensitivity.
| Player | eDPI | Code |
|---|---|---|
| TenZ | 224 (1600 × 0.14) | 0;s;1;P;c;5;o;0;f;0;0l;2;0v;2;0g;1;0o;1;0a;1;0f;0;1b;0 |
| aspas | 320 (800 × 0.40) | 0;P;h;0;0l;4;0o;0;0a;1;0f;0;1b;0 |
| Derke | 296 (400 × 0.74) | 0;P;o;1;0t;1;0l;4;0o;2;0a;1;0f;0;1t;0;1l;1;1o;0;1a;1;1m;0;1f;0 |
| Boaster | 160 (800 × 0.20) | 0;s;1;P;c;1;o;1;d;1;0l;0;0o;2;0a;1;0f;0;1t;0;1l;0;1o;0;1a;0;S;c;1;o;1 |
| nAts | 392 (800 × 0.49) | 0;P;c;1;o;1;0t;1;0l;2;0o;2;0a;1;0f;0;1b;0 |
| Jinggg | 280 (1600 × 0.175) | 0;s;1;P;c;5;o;1;f;0;m;1;0t;3;0l;0;0v;1;0g;1;0o;0;0a;1;0f;0;1t;1;1l;4;1g;1;1o;0;1a;1;1m;0;1f;0;S;c;5;o;1 |
| Demon1 | 160 (1600 × 0.10) | 0;p;0;s;1;P;o;1;f;0;0t;1;0l;3;0o;2;0a;1;0f;0;1b;0;A;o;1;0t;1;0l;3;0o;2;0a;1;0f;0;1b;0;S;c;1;o;1 |
| ScreaM | 940 (400 × 2.35) | 0;s;1;P;c;5;o;1;d;1;f;0;0t;6;0l;0;0a;1;0f;0;1b;0;S;c;6;s;0.949;o;1 |
| Zekken | 280 (1600 × 0.175) | 0;s;1;P;c;1;t;2;o;1;d;1;0b;0;1b;0;S;b;1;c;8;s;0.823 |
| Chronicle | 280 (1600 × 0.175) | 0;P;h;0;f;0;0t;1;0l;4;0o;0;0a;1;0f;0;1b;0 |
Two caveats before you paste one. Pros change reticles mid-season, sometimes mid-event, so treat each line as a snapshot from that check date rather than what the player is using tonight. And a code carries no resolution or monitor information — the same reticle reads differently at 1280×960 stretched and at 1920×1080 native, which is why the shapes that survive are the minimal ones.
What these ten codes agree on
Reading the strings rather than looking at previews produces a cleaner picture than any “best crosshair” claim:
- Outer lines are off in 9 of 10. Eight use
1b;0; Derke zeroes the outer thickness instead; Boaster zeroes length, thickness and opacity. Jinggg is the only one running outer lines. - A centre dot appears in only 3 of 10 (Boaster, ScreaM, Zekken) — and two of those three turn the inner lines off completely, so the reticle is a dot and nothing else.
- Default white is the most common choice, used by the four codes that carry no colour key at all (aspas, Derke, Demon1, Chronicle). Cyan and green appear three times each.
- Length clusters at 4 for the players running lines (aspas, Derke, Jinggg, Chronicle), with TenZ and nAts far shorter at 2.
- eDPI spans 160 to 940, with half the sample between 224 and 296. That is a six-fold spread, which tells you arm-aiming and wrist-aiming players genuinely need different numbers.
The pattern is not “pros like minimal crosshairs” as a style opinion. It is that a reticle with no outer lines and a tight gap never covers the head you are aiming at, and never moves when you fire — because 0f;0 and 1f;0 keep both line sets static instead of blooming.
Import, export, or copy a teammate’s
Three routes, all built into the client:
- Import. Settings → Crosshair → Crosshair Profile → the down-arrow icon → paste → Import. Give it a name you will recognise. You can hold up to 15 profiles.
- Export. The up-arrow icon next to the profile copies the auto-generated code to your clipboard. That is how you share yours.
- Copy a reticle in-game. Type
/crosshair copyor/ccin chat while spectating someone and their reticle is saved as a new profile. In a custom game with a friend this beats asking for a code.
If an import fails, the cause is almost always a mangled string: a missing leading 0, a lost final digit, or spaces picked up when copying from a web page. A reticle that looks nothing like the preview usually means you pasted the S block only.
What actually matters after you paste one
Colour. Pick one and stop. It is the parameter players change most and notice least. Cyan and green read well against the browns of Haven and Bind; white reads well almost everywhere except bright sky and snow.
Outline. Half the pro sample runs it, half does not, and it is the one genuinely polarising setting. The case for it: it keeps the reticle alive against Breeze’s sky. The case against: it thickens the reticle until it covers a distant head.
Length and gap. Short with a small gap favours close fights and reads as a dot at range. Long with no gap gives a defined centre at range but hides heads. The sample splits here too, and both halves are top-tier players — which means this is preference, not technique.
Opacity. Keep it high, around 0.8 to 1.0. A fading reticle in a fight is a reticle you cannot find.
Thickness and dot are the least important. A dot helps players who track a single pixel and distracts players who aim at the dot instead of the target. It is the first thing to remove if your shots drift toward it.
Build your own in three steps
Start from a pro code, then strip it. Take TenZ’s or nAts’ string, delete the colour key, and you have a white minimal cross to edit. Starting from a default gets you a reticle nobody chose; starting from a code gets you one that survived at the highest level.
Change one parameter at a time in the Range. Large jumps reset the familiarity you have built. If the reticle vanishes against walls, add outline. If you cannot see a distant head, shorten the lines or open the gap.
Stop once it is invisible. The goal is not a reticle you admire, it is one you stop noticing. Players who retune weekly are spending attention on the wrong variable.
The thing that actually costs you duels
A reticle is a small optimisation. Crosshair placement is a large one: keeping the reticle at head height and pre-aimed at the corner you are about to clear means the duel needs a tiny adjustment instead of a large drag. Our crosshair placement and peeking guide covers that habit.
Likewise, if your first bullet lands near the crosshair rather than on it, the problem is movement rather than the reticle — see counter-strafing. And if you are still hunting for a sensitivity to pair with the reticle, the sensitivity guide covers why locking eDPI matters more than the number.
Related guides
- VALORANT roles explained — which role fits how you like to fight.
- Valorant aim routine — a daily plan that trains placement and stopping.
- VALORANT game hub — agents, ranked, economy, and more.
Sources & References
This guide is verified against the game's own data and official communications. For patch notes, current balance, and authoritative specifics, consult the references below. Where a precise number cannot be verified, we explain the mechanic rather than invent a figure.
- VALORANT official site — patch notes, current season, and authoritative game data.