Explainer
Contango and backwardation: futures curves, roll yield and commodity ETFs
The slope of a futures curve decides whether holding a commodity quietly pays you or quietly costs you. Most commodity ETF surprises start here.
On this page
Key takeaways
- Contango: later delivery costs more than sooner, so the futures curve slopes up. Backwardation: later delivery costs less, so the curve slopes down.
- Carry (interest plus storage) pushes a curve into contango; a premium on supply available now, the convenience yield, pushes it into backwardation.
- Rolling futures through a steady 1% monthly contango loses about 11% a year even if the spot price never moves; the same backwardation gains about 13%.
- Futures-based commodity ETFs carry that roll yield, which is why they drift from spot. Physically backed metal funds never roll.
- Perpetual futures never expire, so there is no roll: funding payments keep the perp near spot, and the gap between them is the basis.
Contango is when futures for later delivery cost more than the spot price or the nearer contract, so the futures curve slopes upward. Backwardation is the reverse: later delivery is cheaper and the curve slopes downward. The slope matters because anyone who holds futures and rolls them forward earns or pays the difference, called roll yield: the main reason a commodity fund can fall while the commodity itself goes nowhere.
Oil is where these words come up most, so if you build with energy data, read this next to the oil price API guide. The same mechanics apply to gold and grains and, with a twist, to perpetual futures.
Two shapes of a futures curve
Contango and backwardation for a commodity with spot at 70
- Contango
- Backwardation
Price for delivery in n months
Read a curve left to right as time to delivery. Each point is a separate contract with its own price, and the nearest one is the front month. As a contract approaches expiry its price converges on spot, because a contract that delivers tomorrow is worth what the commodity is worth today.
Why curves slope: carry against scarcity
A futures price is spot plus the cost of holding the commodity until delivery, minus the benefit of having it now. Holding costs money: financing the purchase and, for physical goods, storage and insurance. That lifts later contracts above spot. The benefit of barrels on hand, the convenience yield, pulls the other way, and when supply is tight it can overwhelm the carry.
F = S × e^((r + u − y) × T)
- F
- Futures price for delivery in T years.
- S
- Spot price.
- r
- Interest rate for the same horizon.
- u
- Storage and insurance, as a yearly rate.
- y
- Convenience yield: the value of having the commodity now.
- What drives contangoAmple supply, full storage, high interest rates, a commodity that is cheap to store. Gold lives here almost permanently.
- What drives backwardationSupply disruptions, low inventories and strong immediate demand. Crude and natural gas swing into it during squeezes.
- Super-contangoStorage runs out and near-term prices collapse against later months. Crude in April 2020 is the textbook case.
- Seasonal curvesNatural gas and grains carry a yearly pattern: winter gas and pre-harvest grain trade at a premium to other months.
Roll yield, worked through
Futures expire, so a position that wants to stay exposed has to sell the expiring contract and buy the next one. That is the roll. In contango it means selling the cheaper contract and buying the dearer one, every single month.
- StartThe front contract trades at 70.00 and the next month at 70.70, a 1% contango. You hold one front contract worth 70.00.
- RollYou sell the front at 70.00 and buy 70.00 ÷ 70.70 = 0.990 of the next contract. Same money, about 1% fewer barrels.
- ConvergeA month passes and spot is still 70.00. Your contract, now the front, has converged to 70.00, so the position is worth 69.31.
- RepeatTwelve rolls at the same curve shape leave 88.7% of the starting value: minus 11.3% on a commodity that never moved.
Rolling a futures position while spot stays flat
- Spot, unchanged
- Rolled in 1% monthly backwardation
- Rolled in 1% monthly contango
Value, start = 100
Backwardation flips the sign. Selling the dearer front and buying the cheaper next month adds about 1% a month, 12.8% over the year, again with no move in spot. Real curves change shape constantly, so real numbers are never this tidy, but the direction is reliable. A futures position’s return splits into three parts: the spot move, the roll yield, and the interest earned on the cash held as collateral.
Why commodity ETFs drift from spot
A commodity ETF that holds futures inherits the roll. When a fund tracking crude rolls through a steep contango, its share price can slide for months while the spot price is flat, and investors who compare the fund with the headline oil price find the gap the hard way. April 2020 was the extreme case: with storage full, near-month crude collapsed against later months, and funds holding the front contract had to roll into much dearer ones.
Physically backed metal funds are different. A gold fund that holds bars in a vault never rolls, so it tracks spot minus its fee, and each share represents a fraction of an ounce that shrinks slowly as the fee is paid in metal. That is also why comparing the level of a fund share with the level of spot tells you nothing; compare their returns over the same days instead. The gold price API guide shows spot, futures, fund and perpetual prices side by side.
| Feature | Spot reference | Futures-based ETF | Physically backed ETF | Perpetual future |
|---|---|---|---|---|
| Holds | Nothing: it is a price | Futures contracts | Metal in a vault | A contract with no expiry |
| Rolls contracts | ||||
| Drift versus spot comes from | None | Roll yield, collateral interest, fees | Fees | Funding and basis |
| Trades | Sunday to Friday, New York time | Stock market hours | Stock market hours | 24/7 |
| On TickerLayer | XAUUSD, WTIUSD | Listed ETFs by ticker, /etfs/quote/{ticker} | USGOLD | XAUUSDT |
The ETF API guide covers pulling fund quotes. To measure drift yourself, pull daily bars for a fund and for the matching spot reference, restrict both to the same UTC days, and compare cumulative returns rather than prices.
Perpetual futures: a curve with no expiry
Perpetual futures remove the calendar entirely. There is no delivery date and no roll, so there is no roll yield. What keeps a perp close to spot instead is funding, a periodic payment between longs and shorts. When the perp trades above spot, longs pay shorts, which plays the part contango plays on a dated curve; when it trades below, shorts pay longs.
The gap between perp and spot is the basis. On 28 September 2026, two TickerLayer quotes captured 33 seconds apart put the gold perpetual (XAUUSDT, mid 4,162.07) about $5.86 above spot gold (XAUUSD, mid 4,156.21).
basis = perp mid − spot midbasis in bps = basis ÷ spot mid × 10,000
The perpetual futures guide covers funding, mark prices and the 24/7 schedule in depth, and the gold perpetual page shows the contract itself.
Reading curve effects from reference data
A full curve needs a price for every delivery month. With the reference prices a market data API usually carries, you can still read four curve signals:
Curve checks that need no curve
- A step in a continuous energy series around a contract expiry: its size is roughly the gap between neighboring months.
- A persistent gap in cumulative returns between a futures-based fund and its spot reference.
- The basis between a perpetual and spot, and which side is paying funding.
- For gold, spot plus a short-term interest rate: carry alone predicts a mild contango.
None of these is a trading signal on its own, and nothing here is investment advice. They are the checks that stop a chart, an alert or a backtest from mistaking the shape of the curve for a move in the market. The WTI vs Brent explainer shows the first check on real September 2026 data.
Questions
Is contango bullish or bearish?
Neither by itself. Contango usually reflects ample supply and the cost of carry, common in calm markets, while backwardation signals tight supply now. For anyone holding rolled futures, contango is a cost and backwardation a tailwind.
What is backwardation in simple terms?
Backwardation is when a commodity for later delivery costs less than the same commodity now, because buyers pay a premium for supply they can use immediately.
Why do oil ETFs lose money in contango?
Futures-based oil funds must roll expiring contracts into later, more expensive ones. In contango each roll buys fewer barrels for the same money, so the fund loses value even if the spot price stays flat.
What is roll yield?
The return from rolling a futures position into the next contract as the old one expires. It is negative in contango and positive in backwardation, and it comes on top of the spot move and the interest earned on collateral.
Does gold trade in contango?
Almost always. Gold is cheap to store and rarely scarce, so its futures sit above spot by roughly the interest rate minus the gold lease rate.
What causes backwardation?
A high convenience yield: supply disruptions, low inventories or strong immediate demand make barrels available now worth more than barrels delivered later.