Skip to content

CS2 Float Capping Calculator

Short answer

Float capping means picking trade-up inputs whose average float is low enough to land the output in the wear you want. Pick the output skin and target wear, and this calculator gives the highest average input value, using the output skin's real float range and the current trade-up float formula.

Output skin you want

AWP | Duality

Float range 0 to 0.8

Target wear
Float formula

Each input float is first turned into a 0 to 1 position inside that input skin's own float range. Community guides report this applies since the October 2025 update. Valve's release notes do not mention it. Source

Input skin (optional)

MAC-10 | Sakkaku

Float range 0.21 to 0.79

For a Factory New AWP | Duality, keep the average trade-up value below

0.087500

Output float lands from 0.0000 to below 0.0700. Trade-up value = (float - skin min) / (skin max - skin min), averaged over all inputs.

If every input is MAC-10 | Sakkaku (0.21 to 0.79)

below 0.260750

Raw float each input needs. With mixed skins, work out each input's trade-up value and keep the average under the cap.

Maximum average input for each wear of AWP | Duality
WearOutput floatsKeep avg value belowSakkaku float below
Factory New0 to 0.070.0875000.260750
Minimal Wear0.07 to 0.150.1875000.318750
Field-Tested0.15 to 0.380.4750000.485500
Well-Worn0.38 to 0.450.5625000.536250
Battle-Scarred0.45 to 0.8anyany

Stay a little under the cap. Floats are stored with limited precision, so a value right on the line can round either way.

What does the float capping calculator do?

Pick the skin you want out of a Trade Up Contract and the wear you want it in. The calculator gives you the highest average input value that still lands the result in that wear. It also shows the lowest average you can use without landing in a better, more expensive wear.

Add an input skin and the calculator turns that cap into a real float for that skin. That is the number you look for when you buy inputs on a marketplace.

What is float capping?

Float capping means buying trade-up inputs with floats low enough that the output lands in the wear you want. The name comes from the fact that each skin has a float range, and the output float is squeezed into that range.

If you want a Factory New output, you need low float inputs. The calculator tells you exactly how low. For the background, read float capping explained.

How is the output float of a trade-up calculated?

Valve has not published the formula. Community guides written after the October 2025 update, based on testing, report that the game now does three steps:

  1. Turn each input float into a position inside that input skin's own range: (float - input min) / (input max - input min). We call this the trade-up value.
  2. Average the ten trade-up values.
  3. Place that average inside the output skin's range: output = output min + average x (output max - output min).

Before that update, guides describe a simpler formula: the plain average of the raw input floats, placed into the output range. The calculator lets you switch between both, with the normalised one on by default. The source for each is linked next to the switch.

How do you work out the maximum input float?

Turn the output formula around. To land below the upper edge of a wear tier:

Max average = (tier end - output min) / (output max - output min)

The average must stay below that number, because the tier end already belongs to the next wear. For the lower limit, use the tier start instead of the tier end.

Target wearOutput must beFormula for the max average
Factory Newbelow 0.07(0.07 - min) / (max - min)
Minimal Wear0.07 to below 0.15(0.15 - min) / (max - min)
Field-Tested0.15 to below 0.38(0.38 - min) / (max - min)
Well-Worn0.38 to below 0.45(0.45 - min) / (max - min)
Battle-Scarred0.45 to 1any average works

If the tier sits fully outside the output skin's range, that wear is not possible, and the calculator greys it out.

Worked example 1: a Factory New AWP | Duality

The AWP | Duality is a Classified skin from The Revolution Collection with a float range of 0.00 to 0.80. You trade up ten Restricted skins from the same collection and want it Factory New.

Max average = (0.07 - 0) / (0.80 - 0) = 0.0875

So the average trade-up value of your ten inputs must be below 0.0875. What that means in raw floats depends on the input skins:

Input skin (Revolution Restricted)Float rangeRaw float needed for FN (all ten the same)
M4A1-S | Emphorosaur-S0.00 to 0.80below 0.07
MAC-10 | Sakkaku0.21 to 0.79below 0.26075

For the Sakkaku: 0.21 + 0.0875 x (0.79 - 0.21) = 0.21 + 0.05075 = 0.26075. That is a Field-Tested float, yet it still counts as a clean input, because it sits near the bottom of the Sakkaku's own range.

Under the classic formula, the plain average would have to be below 0.0875. A Sakkaku can never go below 0.21, so under the old rules it could not help you reach a Factory New Duality at all. This is the biggest change the normalised formula brings.

For Minimal Wear, the window is from 0.0875 up to below (0.15 - 0) / 0.80 = 0.1875.

Worked example 2: an AK-47 | Inheritance and a mixed outcome

The AK-47 | Inheritance is a Covert skin from The Kilowatt Collection with a range of 0.00 to 0.797346. You trade up ten Kilowatt Classified skins.

  • Factory New: average below 0.07 / 0.797346 = 0.087791
  • Minimal Wear: average below 0.15 / 0.797346 = 0.188124

There is a catch. The same contract can also give the AWP | Chrome Cannon, whose range is 0.00 to 1.00. With an average of 0.087 the AK lands at about 0.0694 (Factory New), but the AWP lands at 0.087 (Minimal Wear). If you want both outcomes Factory New, you have to use the tighter cap: average below 0.07.

Check every outcome skin in the contract, not just the one you hope for. The trade-up calculator shows the output float of every outcome at once.

Here is what each Kilowatt Classified input needs, if all ten are that skin and you aim at the 0.087791 AK cap:

Input skin (Kilowatt Classified)Float rangeRaw float below
M4A1-S | Black Lotus0.00 to 0.700.061454
Zeus x27 | Olympus0.00 to 0.670.058820
USP-S | Jawbreaker0.00 to 1.000.087791

Why should I stay a little under the cap?

Floats are stored with limited precision, and prices for inputs right at the cap are often high. If your average lands exactly on the line, the output can round into the worse tier. Leave a small safety gap, for example aim for 0.086 when the cap is 0.0875.

When should I use a float capping calculator?

  • Before you buy trade-up inputs, to know the highest float worth paying for.
  • To check if a wear is even possible for the output skin.
  • To compare input skins. A skin with a high minimum float can be a cheap, clean input under the normalised formula.
  • To test an average you already have, using the check field under the inputs.

After you set your cap, build the full contract in the trade-up calculator to see all outcomes, odds and expected value. The float checker is handy to see where a single float sits.

Frequently asked questions

What is the trade-up float formula in CS2?

Valve has not published it. Community tests since the October 2025 update report that each input float is turned into a 0 to 1 position inside its own range, the positions are averaged, and the average is placed inside the output skin's range.

What changed about trade-up floats in October 2025?

Guides written after the update report that inputs are now normalised by their own float range. Before, the plain average of raw floats was used. The calculator can show both so you can compare.

How do I get a Factory New output?

Keep the average trade-up value below (0.07 - output min) / (output max - output min). For AWP | Duality, with a range of 0 to 0.80, that is below 0.0875.

Why does my input skin's float range matter now?

Under the normalised formula, an input at the bottom of its own range counts as 0. A MAC-10 | Sakkaku at 0.21 is its cleanest possible float, so it counts as a perfect input even though 0.21 is Field-Tested.

Why do different outcomes get different wears from the same contract?

Each outcome skin has its own float range, and the same average is placed inside each range. An average of 0.087 gives an AK-47 | Inheritance about 0.0694 (FN) but an AWP | Chrome Cannon 0.087 (MW).

Should I aim exactly at the cap?

No. Leave a small gap under the cap, because floats are stored with limited precision and a value right on the line can round into the worse wear.

Try next