CS2 Trade-Up Guide

CS2 Float Values Explained: Wear Tiers, Trade-Up Math, and Why 0.07 Matters

Published March 4, 2026 · Updated May 13, 2026 · 7 min read
TL;DR

A CS2 float value is a number between 0.00 and 1.00 that controls how worn a skin looks and what wear tier (Factory New through Battle-Scarred) it falls into. Float values are assigned at skin generation and never change. In trade-up contracts, the average float of your 10 inputs deterministically sets the float of the output — which is why one contract can roll a Field-Tested skin worth $20 and another roll the same skin in Well-Worn worth $4.

What are CS2 float values?

Every CS2 skin in existence has a float value — a 32-bit floating point number between 0.00 (perfect) and 1.00 (destroyed). Float is set when the skin is generated (from a case, a contract output, or a drop) and is permanent. You cannot change a skin's float; you can only inspect it and sell it.

Float values are uniformly distributed within a skin's wear range. If an AK-47 Redline has a min-float of 0.10 and a max-float of 0.70, any value in that range is equally likely on a freshly generated Redline.

How does float map to wear tier?

The wear-tier mapping is fixed across all CS2 skins:

Wear TierFloat RangeCommon Abbrev.
Factory New0.00 – 0.07FN
Minimal Wear0.07 – 0.15MW
Field-Tested0.15 – 0.38FT
Well-Worn0.38 – 0.45WW
Battle-Scarred0.45 – 1.00BS

Two skins with floats of 0.0699 and 0.0701 are visually almost identical — but the first is Factory New and the second is Minimal Wear, and FN typically sells for 1.5–3× the MW price. These boundary points are where price cliffs live.

How is float calculated for a CS2 trade-up output?

The Valve formula is:

output_float = (avg_input_float × (output_max − output_min)) + output_min

Where:

Critically, avg_input_float is treated as a normalized 0–1 value, not the raw float. The normalization is implicit: you multiply by the output's range. That means a low average input float pushes the output toward its skin-specific minimum, and a high average pushes toward the skin-specific maximum.

Worked example: AK-47 Redline trade-up output

Suppose you assemble 10 Mil-Spec inputs from the Train Collection with floats averaging 0.05. The output rolls AK-47 Redline (Restricted), which has a min-float of 0.10 and a max-float of 0.70:

output_float = (0.05 × (0.70 − 0.10)) + 0.10
             = (0.05 × 0.60) + 0.10
             = 0.03 + 0.10
             = 0.13

0.13 is Minimal Wear (the MW range is 0.07–0.15). If your average input float had been 0.084, the math gives 0.1504 — Field-Tested. The same trade-up, with a float average shift of 0.034, produces a skin that sells for roughly half. This is why float targeting matters more than skin selection.

How do I check the float of a CS2 skin before buying?

Three main options:

For trade-up input shopping, the browser extension is by far the fastest. A profitable contract usually requires inputs at a specific float (e.g. "below 0.10") and you cannot tell from the Steam listing thumbnail alone.

The four float boundary numbers every CS2 trader should memorize

If your trade-up output float lands within 0.01 of one of these boundaries, you are sitting on a float-edge contract — see our post on CS2 trade-up edge cases.

Frequently Asked Questions

What does a 0.00 float mean in CS2?
A 0.00 float is the lowest possible value, representing a pristine Factory New skin. True 0.00 floats are extraordinarily rare because they require both the skin's min-float to be 0.00 and the RNG to roll exactly 0 — most 'FN' skins have floats in the 0.001–0.07 range.
Can a CS2 skin's float change over time?
No. Float values are assigned at skin generation and are permanent. Inspecting, trading, or storing a skin does not alter its float.
Why are CS2 float values not always 0–1 for every skin?
Each skin has its own min-float / max-float range, set by the developer. The Glock-18 Fade has min 0.00 / max 0.08, so every Fade is Factory New. Other skins like the AK-47 Redline have min 0.10 / max 0.70, so no Redline can ever be Factory New.
How accurate is the CS2 trade-up output float formula?
It is deterministic and exact — Valve uses the documented formula with no randomness in the float calculation. Only the chosen output skin is random; the float, given the chosen skin, is fixed.
Does StatTrak affect a CS2 skin's float?
No. StatTrak adds a kill counter overlay but does not change the float distribution or wear tier mapping. A StatTrak skin generated alongside a non-StatTrak skin can have any float in the skin's normal range.
CS2FloatWear Tier

Stop calculating contracts by hand

TradeUpTarget scans every live CS2 trade-up contract on the market and ranks the profitable ones, with float-edge detection and post-fee ROI built in.

Open the Scanner →