CS2 Trade-Up Calculator

Build a 10-skin contract and see every possible outcome with live odds, expected value, and a 1,000-contract simulation. Pick inputs from the selector — or import your own Steam inventory.

Input rarity
Output: Restricted

Contract Inputs · 0/10

Total cost $0.00

Outcome Simulation

Restricted
Add input skins to simulate the contract.
Expected value$0.00
Expected profit+$0.00
Profit odds0.0%
Verdict

Inventory Selector

Showing the 96 cheapest matches — narrow the search to see the rest.

Click a tile to fill the next slot · click a filled slot to remove it · prices are the lowest live listing

Trade-up simulator: preview every outcome

Every contract you build above is simulated before you spend anything. The outcome panel lists each skin the contract can return, the chance of getting it, its current price, the gain or loss against your ten inputs, and the float it would come out at given the input float you entered. The Simulate 1,000 contracts button then draws 1,000 results from those same odds, so you can see how often the contract beats its cost and what it pays back on average, rather than relying on a single expected-value figure.

If you would rather start from a ready-made contract, the trade-up finder ranks every single-collection contract by expected value and ROI each hour; open any of them here to experiment with mixing collections.

How trade-up contracts work

For the full rules, including which cases have glove-only special pools, read the trade-up contracts guide.

Worked example: Fracture Collection RestrictedClassified

Take ten copies of the cheapest Restricted skin in The Fracture Collection, the Galil AR | Connexion at $0.29 each. The contract costs $2.90. Because every input comes from one collection, the output is always one of its 3 Classified skins, each with a 33.3% chance.

Float: the Connexion runs from 0.00 to 0.80, so inputs at 0.10 normalise to (0.100.00) ÷ (0.800.00) = 0.1250. That value is mapped onto each output's own range:

Possible outputChanceFloat rangeOutput floatLowest price
Glock-18 | Vogue33.3%0.000.750.0938 (Minimal Wear)$2.97
M4A4 | Tooth Fairy33.3%0.000.730.0912 (Minimal Wear)$2.96
XM1014 | Entombed33.3%0.000.500.0625 (Factory New)$2.95

Expected value is the sum of chance × price: $2.97 + $2.96 + $2.95 divided by 3 = $2.96 against a $2.90 cost, and 3 of 3 outcomes are priced above the cost on their own. Those prices are the cheapest listing in any wear; the float above says each output lands in Minimal Wear or Factory New, which usually sells for more, while inputs at 0.10 usually cost more than the cheapest copy. Check both on the skin pages before treating this as a profit. Load this contract into the calculator.

Cheapest trade-up inputs by collection

The cheapest priced skin at each input grade in every case collection, with the number of next-grade skins it can return. A low input price is only half a contract: compare it with what the collection's next tier is worth on its collection page. Map collections are left out: since the 22 May 2026 update their Souvenir skins can be traded up (the result is a normal-quality skin), but they are priced as Souvenirs, which this table does not track — the same scope as the trade-up finder.

CollectionMil-SpecRestrictedRestrictedClassifiedClassifiedCovert
Arms Deal 2FAMAS | Hexane $2.22 · 4 outcomesNova | Graphite $8.23 · 2 outcomesP90 | Cold Blooded $41.65 · 1 outcome
Arms Deal 3Dual Berettas | Panther $2.91 · 4 outcomesCZ75-Auto | Tread Plate $5.25 · 2 outcomesCZ75-Auto | The Fuschia Is Now $13.73 · 1 outcome
Arms DealAUG | Wings $9.90 · 3 outcomesM4A1-S | Dark Water $57.62 · 2 outcomesDesert Eagle | Hypnotic $150.93 · 1 outcome
BravoDual Berettas | Black Limba $3.44 · 4 outcomesMAC-10 | Graven $14.65 · 3 outcomesP90 | Emerald Dragon $83.00 · 2 outcomes
BreakoutUMP-45 | Labyrinth $0.25 · 4 outcomesCZ75-Auto | Tigris $1.82 · 3 outcomesGlock-18 | Water Elemental $16.93 · 2 outcomes
Chroma 2MP7 | Armor Core $0.20 · 4 outcomesMAG-7 | Heat $1.08 · 3 outcomesFAMAS | Djinn $10.54 · 2 outcomes
Chroma 3Dual Berettas | Ventilators $0.21 · 5 outcomesSSG 08 | Ghost Crusader $1.05 · 3 outcomesAUG | Fleet Flock $10.52 · 2 outcomes
ChromaXM1014 | Quicksilver $0.24 · 4 outcomesDesert Eagle | Naga $1.34 · 3 outcomesP250 | Muertos $10.76 · 2 outcomes
ClutchMP9 | Black Sand $0.05 · 5 outcomesNova | Wild Six $0.31 · 3 outcomesUSP-S | Cortex $2.87 · 2 outcomes
CS20MAG-7 | Popdog $0.18 · 5 outcomesM249 | Aztec $0.35 · 3 outcomesP90 | Nostalgia $3.27 · 2 outcomes
Danger ZoneSawed-Off | Black Sand $0.10 · 5 outcomesMAC-10 | Pipe Down $0.40 · 3 outcomesUMP-45 | Momentum $3.71 · 2 outcomes
Dreams & NightmaresMAG-7 | Foresight $0.02 · 5 outcomesUSP-S | Ticket to Hell $0.49 · 3 outcomesDual Berettas | Melondrama $5.20 · 2 outcomes
eSports 2013MAG-7 | Memento $2.07 · 3 outcomesGalil AR | Orange DDPAT $11.94 · 2 outcomesAK-47 | Red Laminate $42.02 · 1 outcome
eSports 2013 WinterFive-SeveN | Nightshade $1.72 · 2 outcomesP90 | Blind Spot $6.76 · 3 outcomesFAMAS | Afterimage $19.05 · 1 outcome
eSports 2014 SummerCZ75-Auto | Hexane $1.49 · 5 outcomesP90 | Virus $2.07 · 4 outcomesNova | Bloomstick $8.95 · 2 outcomes
FalchionP90 | Elite Build $0.20 · 5 outcomesP2000 | Handgun $0.53 · 3 outcomesSG 553 | Cyrex $3.13 · 2 outcomes
FeverMAG-7 | Resupply $0.04 · 5 outcomesP90 | Wave Breaker $0.32 · 3 outcomesUMP-45 | K.O. Factory $3.54 · 2 outcomes
FractureNegev | Ultralight $0.03 · 5 outcomesGalil AR | Connexion $0.29 · 3 outcomesXM1014 | Entombed $2.95 · 2 outcomes
GalleryMP5-SD | Statics $0.10 · 5 outcomesP90 | Randy Rush $0.43 · 3 outcomesP250 | Epicenter $2.90 · 2 outcomes
Gamma 2UMP-45 | Briefing $0.12 · 5 outcomesGlock-18 | Weasel $0.99 · 3 outcomesTec-9 | Fuel Injector $10.12 · 2 outcomes
GammaMAC-10 | Carnivore $0.19 · 5 outcomesR8 Revolver | Reboot $1.08 · 3 outcomesM4A4 | Desolate Space $9.90 · 2 outcomes
GloveP2000 | Turf $0.30 · 5 outcomesDual Berettas | Royal Consorts $2.81 · 3 outcomesP90 | Shallow Grave $24.98 · 2 outcomes
HorizonTec-9 | Snek-9 $0.19 · 5 outcomesNova | Toy Soldier $0.56 · 3 outcomesSawed-Off | Devourer $4.10 · 2 outcomes
HuntsmanCZ75-Auto | Twist $0.75 · 5 outcomesPP-Bizon | Antique $3.28 · 4 outcomesSCAR-20 | Cyrex $19.69 · 2 outcomes
KilowattUMP-45 | Motorized $0.02 · 5 outcomesFive-SeveN | Hybrid $0.29 · 3 outcomesZeus x27 | Olympus $2.54 · 2 outcomes
Operation Broken FangCZ75-Auto | Vendetta $0.35 · 5 outcomesNova | Clear Polymer $1.80 · 3 outcomesFive-SeveN | Fairy Tale $14.63 · 2 outcomes
Operation HydraFAMAS | Macabre $2.57 · 5 outcomesP90 | Death Grip $12.09 · 3 outcomesDual Berettas | Cobra Strike $41.52 · 2 outcomes
Operation RiptideDual Berettas | Tread $0.50 · 5 outcomesMAG-7 | BI83 Spectrum $1.70 · 3 outcomesGlock-18 | Snack Attack $13.70 · 2 outcomes
PhoenixUMP-45 | Corporal $0.26 · 4 outcomesFAMAS | Sergeant $1.50 · 3 outcomesP90 | Trigon $7.90 · 2 outcomes
Prisma 2MP5-SD | Desert Strike $0.10 · 5 outcomesSawed-Off | Apocalypto $0.47 · 3 outcomesMAG-7 | Justice $4.61 · 2 outcomes
PrismaMAC-10 | Whitefish $0.15 · 5 outcomesTec-9 | Bamboozle $0.45 · 3 outcomesR8 Revolver | Skull Crusher $4.70 · 2 outcomes
RecoilFAMAS | Meow 36 $0.03 · 5 outcomesDual Berettas | Flora Carnivora $0.31 · 3 outcomesP250 | Visions $2.74 · 2 outcomes
RevolutionMAG-7 | Insomnia $0.03 · 5 outcomesMAC-10 | Sakkaku $0.28 · 3 outcomesP2000 | Wicked Sick $2.43 · 2 outcomes
Revolver CaseSawed-Off | Yorick $0.11 · 6 outcomesPP-Bizon | Fuel Rod $0.91 · 3 outcomesP90 | Shapewood $6.91 · 2 outcomes
ShadowXM1014 | Scumbria $0.15 · 4 outcomesM249 | Nebula Crusader $0.92 · 3 outcomesG3SG1 | Flux $5.59 · 2 outcomes
Shattered WebG3SG1 | Black Sand $0.46 · 5 outcomesPP-Bizon | Embargo $1.22 · 3 outcomesSG 553 | Colony IV $5.26 · 2 outcomes
SnakebiteSG 553 | Heavy Metal $0.14 · 5 outcomesMAC-10 | Button Masher $0.31 · 3 outcomesXM1014 | XOXO $2.80 · 2 outcomes
Spectrum 2Sawed-Off | Morris $0.10 · 5 outcomesMP9 | Goo $0.86 · 3 outcomesPP-Bizon | High Roller $9.05 · 2 outcomes
SpectrumSawed-Off | Zander $0.17 · 5 outcomesMAC-10 | Last Dive $1.09 · 3 outcomesM4A1-S | Decimator $10.01 · 2 outcomes
VanguardG3SG1 | Murky $0.52 · 4 outcomesSawed-Off | Highwayman $1.03 · 3 outcomesSCAR-20 | Cardiac $7.89 · 2 outcomes
WildfireSSG 08 | Necropos $0.30 · 5 outcomesMAG-7 | Praetorian $1.60 · 3 outcomesAWP | Elite Build $9.35 · 2 outcomes
Winter OffensivePP-Bizon | Cobalt Halftone $1.08 · 4 outcomesNova | Rising Skull $3.90 · 3 outcomesP250 | Mehndi $9.73 · 2 outcomes

How Trade-Up Probability Works

The outcome of a trade-up is determined by the collections your 10 input skins belong to. Each input skin represents one "ticket" in a weighted lottery. If 6 of your skins come from the Fracture Collection and 4 from the Dreams & Nightmares Collection, the output has a 60% chance of being a Fracture skin and 40% chance of being a Dreams & Nightmares skin at the next rarity tier.

Within each collection, the specific output skin is randomly selected from all available skins at the target rarity. If the Fracture Collection has 2 Restricted skins, each has an equal 50% chance of being selected (given the Fracture Collection is chosen). This means your effective probability for any specific skin is: (collection tickets / 10) × (1 / skins at target rarity in that collection).

Float Value Manipulation

The output float comes from normalizing each input inside its own float range, averaging those ten values, then mapping the average onto the output skin's range. By carefully selecting input skins with very low floats, you can produce outputs in Factory New or Minimal Wear conditions that command premium prices.

Finding Profitable Trade-Ups

The most consistently profitable trade-ups share common patterns: cheap input skins from collections that contain high-value outputs at the next tier, combined with collections where the "miss" outcome still returns reasonable value.

Frequently Asked Questions

How do CS2 trade-up contracts work?
You submit 10 skins of the same rarity tier. The system returns one skin of the next-higher rarity from any of the collections represented in your 10 input skins. The output skin's float is derived from your inputs' floats — but each one is normalized inside its own float cap first, not averaged raw.
How is the output float calculated?
Each input is first normalized within its own float range, those ten values are averaged, and the average is mapped onto the output's range. Formula: normalized = (float − skinMin) ÷ (skinMax − skinMin), then Output Float = average(normalized) × (outMax − outMin) + outMin. Skipping the normalization step is a common mistake and can be badly wrong: ten inputs capped 0.10–0.70 sitting at float 0.15 give a normalized average of 0.083, not 0.15.
What determines which skin I get from a trade-up?
Each input skin "votes" for its collection's next-rarity skins. If you input 7 skins from Collection A and 3 from Collection B, there's a 70% chance the output comes from Collection A and 30% from Collection B.
Can you profit from trade-up contracts?
Yes, profitable trade-ups exist when the expected value of outputs exceeds the cost of inputs. The key is finding collections where the next-rarity tier contains high-value skins and manipulating collection ratios to increase odds of expensive outcomes.
What is the best rarity for trade-ups?
Mil-Spec to Restricted trade-ups have the lowest entry cost. Classified to Covert trade-ups offer the highest potential profit but carry more risk. Industrial to Mil-Spec trade-ups are often overlooked but can be consistently profitable.
Can you mix StatTrak and normal skins in a trade-up?
No. A contract is either all StatTrak or all normal, and ten StatTrak inputs return a StatTrak output. This calculator prices the normal versions, so check StatTrak prices separately before running a StatTrak contract.
Can I trade up Covert skins into a knife with this calculator?
Not with this calculator. It models the standard ten-input contract, from Consumer up to Classified inputs, which is why Covert is the highest output it shows. The separate recipe Valve added on 22 October 2025, where five Covert skins return a knife or gloves from one of the inputs' collections, is covered in our knife trade-up guide.
Is there a CS2 trade-up simulator?
Yes, it is built into this page. Once your contract has inputs, the outcome panel lists every possible result with its odds, price and predicted float, and the "Simulate 1,000 contracts" button draws 1,000 random results from those same odds to show how often the contract beats its cost and what it returns on average.
Which price does the calculator use for each skin?
The lowest current listing for that skin in any wear, from the csdb.gg price snapshot. That is a floor, not the price of the exact wear your output will land in, so a predicted Factory New or Minimal Wear output is usually worth more than the figure shown and a low-float input usually costs more. Check the wear-specific price on the skin page before you commit.