What Is the VIX? What It Really Measures
The VIX is a 30 day implied volatility reading priced from S&P 500 options. See what a level of 15 or 30 means in daily move terms, and what VIX products cost.
The VIX is a single number that summarizes what S&P 500 index options charge for the next 30 days of movement, quoted as an annualized percentage. A VIX near 16 corresponds to roughly a 1% daily move in the index, and a VIX near 32 corresponds to roughly 2%. It is a price read off live option quotes rather than a forecast anyone publishes.
What the VIX actually measures
Cboe builds the VIX from quoted prices of S&P 500 index options, blending the two expirations that bracket a point 30 calendar days ahead. The calculation never picks one at-the-money contract. It sweeps a whole strip of out-of-the-money puts and calls, weights each option by one over its strike squared, sums them into a variance figure, then takes the square root and annualizes it. Two properties fall out of that construction.
- It is a strip statistic. Far out-of-the-money puts carry real weight, so the level tracks how expensive deep downside protection has become relative to everything else, the shape covered in volatility skew.
- It is permanently 30 days forward. As the calendar advances the calculation rolls across expirations, and the index never ages into a shorter horizon the way an individual option does.
The index itself cannot be bought or sold. What trades are futures, options on those futures, and exchange-traded products built on them, which is where most of the confusion on this page starts.
Our option records cover exchange-listed contracts name by name, so every panel below measures SPY, the S&P 500 tracking fund, rather than the SPX contracts Cboe feeds into the published index. The underlying index is the same and the arithmetic is the same. Levels run close to the published VIX without matching it print for print, and the shapes are what this page is about. The single-name version of the same measurement is set out in implied volatility.
The exact SQL behind every number
SELECT toStartOfMonth(date) AS month,
formatDateTimeInJodaSyntax(toStartOfMonth(date), 'MMMM yyyy') AS month_label,
round(avg(implied_volatility) * 100, 1) AS avg_iv_pct,
round(min(implied_volatility) * 100, 1) AS lowest_print_pct,
round(max(implied_volatility) * 100, 1) AS highest_print_pct,
count() AS contracts
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date >= toDate('2025-07-01')
AND date < toDate('2026-08-01')
AND abs(delta) BETWEEN 0.45 AND 0.55
AND days_to_expiry BETWEEN 23 AND 37
AND iv_converged
AND implied_volatility BETWEEN 0.02 AND 3
GROUP BY month
ORDER BY monthAcross the 13 months charted, the monthly average opened at 13.5% in July 2025 and finished at 14% in July 2026. March 2026 sits well above both at 21.2%. Individual contract prints inside that month spanned 13.6% to 33.3%, which is the first thing a single headline number hides: the index is an average over a strip that is never uniform.
Turning a VIX level into an expected daily move
The VIX is annualized, and traders convert it to a daily figure by dividing by 16. The 16 is the square root of 252, the approximate number of US trading sessions in a year, and volatility scales with the square root of time. A reading of 16 divides down to 1%, so the market is priced for the index to travel about 1% on a typical session, in either direction. A reading of 32 gives 2%. For a one-week horizon, divide the annual figure by about 7.2 instead, the square root of 52.
Two cautions come with the shortcut. The daily figure is a one-standard-deviation move, which a normal distribution places at roughly two sessions in three, leaving the remaining third to land outside it. And the figure is what options are charging, which is a separate quantity from what the index went on to do.
The exact SQL behind every number
WITH iv AS (
SELECT toStartOfMonth(date) AS month,
avg(implied_volatility) * 100 AS iv_pct
FROM global_markets.options_greeks
WHERE underlying_symbol = 'SPY'
AND date >= toDate('2025-07-01')
AND date < toDate('2026-08-01')
AND abs(delta) BETWEEN 0.45 AND 0.55
AND days_to_expiry BETWEEN 23 AND 37
AND iv_converged
AND implied_volatility BETWEEN 0.02 AND 3
GROUP BY month
),
px AS (
SELECT date, toFloat64(close) AS c
FROM global_markets.stocks_daily_aggs
WHERE ticker = 'SPY'
AND date >= toDate('2025-06-01')
AND date < toDate('2026-08-01')
),
moves AS (
SELECT toStartOfMonth(date) AS month,
abs(c / any(c) OVER (ORDER BY date ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) - 1) * 100 AS abs_move_pct
FROM px
),
realized AS (
SELECT month,
avg(abs_move_pct) AS avg_abs_move_pct,
count() AS sessions
FROM moves
WHERE month >= toDate('2025-07-01')
GROUP BY month
)
SELECT iv.month AS month,
formatDateTimeInJodaSyntax(iv.month, 'MMMM yyyy') AS month_label,
round(iv.iv_pct / 16, 2) AS implied_daily_move_pct,
round(realized.avg_abs_move_pct, 2) AS realized_daily_move_pct,
round(iv.iv_pct / 16 - realized.avg_abs_move_pct, 2) AS gap_pct,
realized.sessions AS sessions
FROM iv
INNER JOIN realized ON iv.month = realized.month
ORDER BY monthThe two lines rarely meet. In July 2025 the options were priced for a 0.84% average session while the index actually averaged 0.33%, a gap of 0.51 points. By July 2026 the implied figure read 0.88% against a realized 0.61%. That standing gap has a name, the volatility risk premium, and it is the compensation option sellers collect for carrying the tail. It narrows during turbulent stretches and it can invert when a move arrives faster than the options were priced for.
Thirty days is one point on a curve
The 30-day horizon in the VIX is a choice, not a natural constant. Options exist at every expiry from same-day out to years, and each carries its own implied volatility. The full set is the term structure.
The exact SQL behind every number
SELECT multiIf(days_to_expiry <= 7, '0-7 days',
days_to_expiry <= 21, '8-21 days',
days_to_expiry <= 45, '22-45 days',
days_to_expiry <= 90, '46-90 days',
days_to_expiry <= 180, '91-180 days',
'180+ days') AS days_to_expiry_bucket,
round(avg(implied_volatility) * 100, 1) AS atm_iv_pct,
count() AS contracts
FROM global_markets.options_greeks
WHERE date = toDate('2026-07-15')
AND underlying_symbol = 'SPY'
AND abs(delta) BETWEEN 0.45 AND 0.55
AND iv_converged
AND implied_volatility BETWEEN 0.02 AND 3
GROUP BY days_to_expiry_bucket
ORDER BY min(days_to_expiry)On that session the near-dated contracts priced 9.6% at the 0-7 days bucket, climbing to 17.3% out at 180+ days. An upward-sloping curve of this kind is the ordinary quiet-market shape. During drawdowns the front of the curve typically rises above the back, and a VIX quote taken alone shows none of that. The very front of this curve is its own market, examined in 0DTE options.
Three common misreadings
The nickname "fear gauge" carries most of the trouble. The VIX rises during equity drawdowns often enough for the label to stick, and the level is still an option price, set by whoever is paying up for protection at that moment. A high reading records what hedging costs now. It carries no direction and no timestamp for when a move might arrive.
The second misreading treats a high reading as a signal to buy options and a low reading as a signal to sell them. The panel above shows why that shortcut is unreliable: what matters to an option holder is the level paid against what the index goes on to deliver, and elevated levels have historically been followed by faster decay once the disturbance passes, the pattern set out in IV crush.
The third is the assumption that higher volatility pays higher returns. Long-run equity data has repeatedly run the other way, which is the subject of the low volatility anomaly.
VIX products and what holding them costs
Since the index cannot be held directly, exchange-traded products stand in. The common ones hold VIX futures and roll them forward continuously. Futures further out usually price above nearer ones during calm stretches, so each roll sells a cheaper contract and buys a dearer one. Repeated daily, the arithmetic compounds against a buy-and-hold position, which shows up as a persistent downward drift in the share price. The pattern is visible in the typical day rather than in any one dramatic session.
The exact SQL behind every number
WITH d AS (
SELECT ticker, date, toFloat64(close) AS c
FROM global_markets.stocks_daily_aggs
WHERE ticker IN ('VXX', 'SPY')
AND date >= toDate('2020-01-01')
AND date < toDate('2026-07-01')
),
r AS (
SELECT ticker,
date,
toYear(date) AS year,
(c / any(c) OVER (PARTITION BY ticker ORDER BY date ROWS BETWEEN 1 PRECEDING AND 1 PRECEDING) - 1) * 100 AS ret_pct
FROM d
)
SELECT year,
round(quantileDeterministicIf(0.5)(ret_pct, toUInt64(toYYYYMMDD(date)), ticker = 'VXX'), 3) AS vxx_median_daily_pct,
round(quantileDeterministicIf(0.5)(ret_pct, toUInt64(toYYYYMMDD(date)), ticker = 'SPY'), 3) AS spy_median_daily_pct,
countIf(ticker = 'VXX') AS vxx_sessions
FROM r
WHERE year >= 2020
GROUP BY year
ORDER BY yearIn 2020 the median VXX session moved -1.038%, against 0.226% for SPY over the same sessions. In 2026, a partial year running to June 30, the median VXX session read -0.169%. Every year in the panel carries a negative median for the volatility product. Daily percent changes are used here on purpose, since the raw price line is broken by repeated reverse splits and would flatter the product badly. These instruments were built as short-horizon tools, and the roll cost is a design feature of them rather than a defect.
FAQ
What does a VIX of 20 mean?
A VIX of 20 means S&P 500 options are priced for the index to move about 20% over the coming year, annualized. Divided by 16, that works out to roughly a 1.25% move on a typical session, up or down. The figure describes the size of expected movement and says nothing about direction.
Is the VIX a fear gauge?
The VIX measures the price of S&P 500 option protection over the next 30 days. It has risen during past equity drawdowns often enough for the nickname to stick, and it remains a price rather than a sentiment survey or a prediction. It also has no horizon beyond the 30-day window it is computed over.
What is a normal VIX level?
Historical readings have spent most of their time in the low-to-mid teens through the twenties, with brief excursions far higher during market stress. As a reference point, SPY at-the-money implied volatility near 30 days averaged 14% in July 2026 on the panel above.
Can you buy the VIX?
The index is a calculation, not a security, and it cannot be bought. Exposure comes through VIX futures, options on those futures, or exchange-traded products holding them, each of which tracks the futures curve rather than the spot index. The rolling cost of those products is charted above.
How do you convert the VIX into an expected daily move?
Divide the VIX level by 16, the approximate square root of 252 trading sessions in a year. A level of 16 implies about a 1% typical session, a level of 24 about 1.5%. That is a one-standard-deviation figure, so moves outside it are ordinary rather than rare.
Every panel above stores its SQL. Open any of them to audit the calculation, or run the same measurement on the underlying of your choice on the Strasmore terminal. For this measurement on one fund over a rolling window, see SPY implied volatility.