Gamma Exposure Heatmap: SPX by Strike and Expiration
Net dealer gamma in dollars per 1% move, split by strike and by expiry. Every other gamma chart sums the expirations together, which hides where in time the positioning actually sits. Free, no signup.
As of 2026-09-11, SquawkFlow computes total SPX dealer gamma at -3.7B per 1% move with spot at $7,591.70. The grid below covers 25 strikes nearest spot across 10 expirations, drawn from 29,656 contracts spanning 55 expiries in the full chain.
This total is summed from the gamma published with each contract on the delayed Cboe chain, across every expiration dated today or later. The SPX total on the /gex levels page is a different book, where every contract is re-priced with Black-Scholes at the evaluation spot from an archived implied volatility surface, so the two totals are not directly comparable. Both derive from daily-settled Cboe open interest.
Dealer positioning is an assumption, not an observable: open interest shows that a contract exists, never which side a dealer holds. Machine-readable version.
Building on this data? Welcome, it is free to reuse with attribution (a visible link to squawkflow.com). The open dataset updates every trading day and is more stable than parsing this page; questions via contact.
| Strike | All | 09/11 0DTE | 09/14 3d | 09/15 4d | 09/16 5d | 09/17 6d | 09/18 7d | 09/21 10d | 09/22 11d | 09/23 12d | 09/24 13d |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 7,650 | -1.8B | -224M | +52M | -370M | -47M | -194M | +161M | -78M | -6M | -26M | -4M |
| 7,645 | +14M | +68M | -32M | -15M | -43M | -10M | -6M | +2M | -7M | +6M | +5M |
| 7,640 | -217M | +98M | -30M | -26M | -13M | -23M | -115M | -928K | +5M | -30M | +3M |
| 7,635 | +200M | +596M | -9M | -43M | -48M | -3M | -152M | -56M | -3M | -2M | +807K |
| 7,630 | -329M | +400M | -31M | -73M | -11M | -20M | -413M | -41M | +7M | -17M | -7M |
| 7,625 | -1.8B | -145M | -45M | -149M | -566M | -73M | -343M | -59M | -8M | -29M | -19M |
| 7,620 | -253M | +85M | -107M | -59M | -6M | -4M | -51M | -3M | -363K | -5M | -10M |
| 7,615 | -457M | -152M | +22M | -8M | -7M | +8M | -244M | -13M | +4M | -16M | +6M |
| 7,610 | -296M | -236M | +7M | -60M | -23M | -28M | +41M | -12M | +922K | -20M | +8M |
| 7,605 | -301M | -58M | -47M | -7M | -13M | -6M | -140M | -2M | +3M | +876K | +830K |
| 7,600 | -3.8B | -176M | -278M | -219M | -268M | -157M | -586M | -39M | -61M | -25M | -9M |
| 7,595 | -825M | -161M | -44M | -328M | -31M | -18M | -105M | -14M | -39M | -219K | +4M |
| 7,590SPOT | -1.2B | -570M | -175M | -43M | -30M | -9M | -120M | -37M | -63M | -5M | -6M |
| 7,585 | -582M | -235M | -67M | -26M | -30M | -13M | -90M | -7M | -9M | -3M | -13M |
| 7,580 | -1.1B | -440M | -309M | -47M | -23M | -44M | -11M | -19M | -13M | -5M | -14M |
| 7,575 | -1.9B | -367M | -215M | -172M | -64M | -32M | -371M | -22M | -56M | -14M | -25M |
| 7,570 | -1.6B | -796M | -80M | -48M | -43M | -3M | -42M | -25M | -11M | -10M | -7M |
| 7,565 | -348M | -216M | -56M | -44M | -16M | -8M | +23M | -3M | -2M | -2M | -6M |
| 7,560 | -688M | -294M | -36M | -62M | -27M | -26M | -79M | -11M | -29M | -39M | -490K |
| 7,555 | -674M | -415M | -45M | -38M | -32M | -5M | -94M | -7M | -3M | -4M | -738K |
| 7,550 | -5.5B | -1.3B | -108M | -446M | -27M | -42M | -2.2B | -48M | -26M | -60M | -4M |
| 7,545 | -1.1B | -625M | -225M | -43M | -23M | -2M | -85M | -4M | -2M | -2M | -461K |
| 7,540 | -913M | -445M | -158M | -55M | -31M | -57M | +16M | -7M | -10M | -43M | -5M |
| 7,535 | -688M | -371M | -207M | -60M | -17M | -16M | +21M | -2M | -4M | -1M | -184K |
| 7,530 | -842M | -110M | -257M | -36M | -24M | -21M | -142M | -17M | -8M | -3M | -8M |
| Net | -3.7B | -3.4B | -2.7B | -2.4B | -1.5B | -635M | -5.7B | -498M | -425M | -202M | -356M |
- Dealers are net short about $3.7B of gamma per 1% move, so their hedging trades in the same direction as price; this state has historically meant faster, trend-prone sessions.
- The heaviest same-day positive gamma near spot sits at 7,635; dealers hedging there lean against moves away from that strike, which tends to make price sticky around it into the close.
- Below 7,590 the strike totals turn negative, meaning a move through that level would meet hedging that chases the move instead of absorbing it.
- Time decay alone shifts the aggregate dealer hedge by about $44.7B of index delta per day, and rebalancing that drift implies steady mechanical buying, heaviest into the close.
- Today's volume is concentrating at 7,600 rather than the overnight structure at 7,635; if that persists to settlement, tomorrow's map shifts toward the new strike.
- Since the prior session's settlement, open interest at 7,000 grew by 63,138 contracts, the largest overnight change on this grid; those added positions carry gamma at that strike for as long as they stay open.
Composed from the numbers on this page, not opinion: each sentence restates one figure on this page and its mechanical consequence. Descriptive only, never advice.
How to read it
Scan down a column to see where hedging is concentrated for one expiration. Scan across a row to see whether a strike matters today or only later in the month. The All column is the strike summed across every expiration in the chain, which is the number a conventional gamma chart would show you on its own.
The near-dated columns dominate in absolute size, and that is real rather than a display artefact: gamma rises steeply as expiration approaches for strikes near the money. Each column is therefore shaded against its own range, so a quiet expiry stays readable next to a loud one. Compare tint within a column, never across two.
Questions
- What does this gamma heatmap show?
- Net dealer gamma exposure in dollars per 1% move in the index, split by strike (rows) and expiration date (columns). Positive means dealers are estimated to be long gamma at that strike and expiry, so their hedging leans against price moves. Negative means they are short gamma and hedging leans with moves, amplifying them.
- How is this different from a normal GEX chart?
- A standard gamma exposure chart sums every expiration together, producing one call wall and one put wall. That hides where in time the gamma sits. A strike carrying 500 million of gamma expiring tomorrow behaves nothing like the same 500 million spread over three months, and an aggregate cannot tell them apart. This grid keeps the expiration dimension.
- Why is the 0DTE column so much larger than the others?
- Gamma rises sharply as expiration approaches for strikes near the money, because a small move in the index has a proportionally huge effect on the delta of a contract about to expire. Same-day expiries routinely carry an order of magnitude more gamma at spot than a weekly does. Each column is shaded against its own range for that reason, so a smaller expiry is still readable. One caveat specific to this column: open interest is settlement data, updated once daily, so the 0DTE column measures gamma expiring today from positions held overnight. Contracts opened intraday (a large share of modern 0DTE volume) are not in open interest yet and are not captured here.
- How are the numbers calculated?
- For every contract: gamma multiplied by open interest, by the 100-share contract multiplier, by spot squared, by 0.01, which converts to dollars of delta per 1% move. Calls are counted positive and puts negative, following the standard convention that dealers are long calls and short puts against customer flow. Values are summed per strike and expiration across the full chain.
- Is dealer positioning actually known?
- No. It is an assumption, not an observation. Open interest records that a contract exists; it never records which side a dealer holds. Every gamma figure published anywhere, ours and every commercial vendor’s, inherits that assumption. Treat the grid as a map of where hedging pressure would concentrate if the standard convention holds.
- What are the charm and vanna numbers?
- Charm is how much dollar delta the estimated dealer hedge sheds per day purely from time passing; vanna is how much it gains per one-point rise in implied volatility. Both are computed per contract from the Black-Scholes greeks using each contract’s own implied volatility, then summed with the same dealer sign convention as gamma. Same-day expiries dominate charm because it scales with one over time-to-expiry. These are model outputs, not observations, and they inherit the positioning assumption.
- What is overnight open interest change?
- Open interest is the number of contracts outstanding at a strike. The overnight change is today’s count minus the most recent prior session’s, summed across every expiration and both calls and puts, in plain contracts rather than dollars. A positive number means more contracts are open at that strike than were open at the last close; a negative number means contracts there expired or were closed. It is the closest free approximation of which strikes traders actually added to overnight. The caveat is the same one that applies to the 0DTE column: open interest is settlement data, published once daily after the close, so this compares two settlement snapshots and never intraday activity. A position opened and closed inside a single session never appears in it, and a strike whose only expiration has passed shows the full negative because those contracts no longer exist.
- How often does it update?
- Every five minutes during market hours. The underlying CBOE options data is delayed, so refreshing faster would not produce newer numbers.