999+stebimų dėžių7apžvelgtų platformų7stebimų kodų219online
CS2REF
CS2REF
CS2 PROMO KODAI
Back to insights
Skin MathSkinų matematika · Atnaujinta 2026 m. rugsėjį

CS2 trade-up kontraktų matematika: kaip iš tikrųjų veikia gaunami float, kolekcijos ir tikėtina vertė

Tiksli CS2 trade-up kontraktų mechanika: kaip pasirenkamas gaunamas skinas, kaip gaunamas float apskaičiuojamas iš dešimties įdėtų float ir kurios įdėtys duoda teigiamą tikėtiną vertę.

Marcus Holt
CS2REF Research
11 min

The trade-up contract is the only deterministic-input system in the entire CS2 economy. You supply ten skins of the same rarity tier, and the contract returns one skin of the next-higher rarity, drawn from one of the input collections. Unlike case openings, every variable is computable in advance: the candidate output set, the per-output probability, and the output float. Done correctly, trade-ups can produce positive expected value — but only when the math is run honestly.

The four rules of a trade-up contract

  1. Exactly ten skins of the same rarity tier are required as inputs.
  2. All ten inputs must be of the same StatTrak status — either all StatTrak or all non-StatTrak. The output inherits this status.
  3. The output is one rarity tier above the inputs. Mil-Spec inputs produce Restricted outputs; Restricted produces Classified; Classified produces Covert; Covert cannot be traded up.
  4. The output collection is selected probabilistically based on how many inputs come from each collection.

How the output collection is selected

If you supply seven inputs from Collection A and three inputs from Collection B, the contract first selects which collection contributes the output skin. The probability is proportional to the number of inputs from each collection:

P(collection_i) = inputs_i / 10
Where inputs_i is the count of inputs from collection i, summed across all distinct input collections.

Once the collection is selected, the output is chosen with uniform probability across all skins of the next-higher rarity in that collection. If Collection A has 4 Restricted skins and is selected as the output collection, each of those 4 skins has a 25% chance of being the output.

Example: 7 Mil-Spec inputs from Collection A (3 Restricted skins), 3 from Collection B (5 Restricted skins)
Output skinSource collectionPer-skin probabilityCombined probability
A-Restricted-1A1/3 × 7/1023.33%
A-Restricted-2A1/3 × 7/1023.33%
A-Restricted-3A1/3 × 7/1023.33%
B-Restricted-1B1/5 × 3/106.00%
B-Restricted-2B1/5 × 3/106.00%
B-Restricted-3B1/5 × 3/106.00%
B-Restricted-4B1/5 × 3/106.00%
B-Restricted-5B1/5 × 3/106.00%
Probabilities sum to 100%. A collection with fewer skins at the output rarity concentrates probability mass on each individual outcome.

How the output float is calculated

This is the part most players misunderstand. The output float is not simply the average of the input floats. It is the average of the input floats, then linearly mapped onto the output skin's specific wear range:

output_float = output_min + (output_max − output_min) × avg(input_floats)
avg(input_floats) is the arithmetic mean of all ten input floats.

Two consequences follow from this. First, lower-float inputs produce lower-float outputs proportionally, but the relationship is bounded by the output skin's wear range. If the output skin has a restricted range like 0.00–0.40, then even a perfect 0.00 input average yields an output float of 0.00, but a 1.00 average yields 0.40 — there is no way to push the output above its native maximum. Second, the input floats determine which exterior tier the output lands in, but only via the rescaled formula.

Identifying positive-EV trade-ups

A trade-up is profitable when the expected market value of the output, weighted by the per-output probabilities, exceeds the cost of acquiring the ten inputs. The general formula:

EV(trade-up) = Σ P(skin_i) × MarketValue(skin_i, output_float_i) − Σ Cost(input_j)
Output float is computed from the input floats; market value depends on the resulting tier.

Three structural conditions consistently produce positive-EV trade-ups in practice:

  1. Lopsided collection input ratios. Stacking 9 or 10 inputs from a single collection concentrates output probability on that collection's small set of next-tier skins, which makes the EV calculation tractable and reduces the chance of a low-value output.
  2. Asymmetric output value within the collection. When all next-tier skins in the input collection have similar market values, EV is straightforward. The trade-ups that go wrong are the ones where one possible output is worth $80 and another is worth $4 — variance dominates.
  3. Tier-edge input floats. Pushing the input float average toward the lower bound of the output skin's wear range can move the output from Field-Tested to Minimal Wear or Factory New, which often doubles the output value for low-cost-input trade-ups.

Why most listed 'profitable' trade-ups fail in practice

Trade-up calculator websites publish lists of supposedly profitable contracts. The majority fail when actually executed because of three friction sources:

  • Steam Marketplace fees of approximately 15% on the output sale erase razor-thin margins. A trade-up listed at +5% EV is typically a net loss after fees.
  • Input acquisition cost is rarely the listed Steam median price. Buying ten specific low-float inputs requires either snipe-listing or buying at the lowest ask, which is often above the median.
  • Stale pricing data. Calculator sites often use prices that are 24–72 hours old. The output skin price can drop sharply if the trade-up becomes popular and supply increases.

StatTrak trade-ups are a different game

StatTrak inputs cost more than non-StatTrak inputs of the same skin — typically a 30% to 250% premium depending on the finish and tier. Because StatTrak outputs also command a premium, the multiplier on the output side often does not fully compensate for the input premium except on a small set of finishes where the StatTrak premium is asymmetrically large at the output rarity. StatTrak trade-ups are therefore a high-cost, high-variance niche rather than a general strategy.

Practical takeaways

  • Output collection is selected proportionally to inputs per collection — single-collection contracts are the cleanest to model.
  • Output float = output_min + (output_max − output_min) × mean of input floats.
  • Profitable trade-ups need +12% margin to absorb fees and price drift.
  • StatTrak trade-ups have higher variance and rarely produce positive EV at standard market spreads.
  • Calculator sites overstate profitability — always re-validate with current ask prices, not historical medians.

Trade-up contracts are the cleanest mathematical surface in CS2 because every variable is observable and the output is a deterministic function of inputs and rolls. The reason consistent positive EV is hard to achieve is not that the math is opaque — it is that the same math is available to every other participant, and any genuine edge is competed away within hours of being identified. Sustainable profitability comes from finding small, temporary mispricings on input collections that the broader market has not yet recalibrated.

Trade-UpContractsFloat MathExpected Value
Continue Researching

Want the comparative side of this analysis?

These insights focus on the underlying math and economics. If you're researching where the data actually shows up in real-world platform behavior — fees, withdrawal speeds, RTP, provably fair audits — our editorial comparisons cover each platform individually.

Insights pages contain no affiliate links. Editorial comparison pages disclose all partnerships clearly.
CS2REF Research · 2026

Peržiūrėjo Marcus Holt· faktus patikrino Elena Voss· Paskutinė patikra: · Visa metodika

Kaip gaunami čia pateikti skaičiai: viena nauja Steam paskyra kiekvienai platformai, $10 įnašas, pritaikytas kodas, atidarytos penkios dėžės ir išsiimtas vienas skinas, kartojama kas 7 dienas — 82 ciklų nuo 2025 m. vasario visose 7 pateiktose platformose.

Tik 18+. Dėžių atidarymas – tai mokamas atsitiktinumas, o ne investicija — prieš įnešdami nusistatykite ribą.