Free GEX Data: Live Gamma Exposure Levels for 6,000+ Stocks (2026) | FlashAlpha
gammaexposure · 6 min read

Free GEX Data: Live Gamma Exposure Levels for 6,000+ Stocks (2026)

Find free GEX levels and try single-expiry equity data with 5 API requests a day. See which plan supports SPY, QQQ, full-chain GEX and historical replay.

T
Tomasz Dobrowolski Quant Engineer
Apr 21, 2026
Updated Oct 15, 2026
6 min read
GammaExposure GEX FreeData DealerPositioning Options

Choose Your GEX Starting Point

No account

Read public levels

Inspect available GEX and key levels on a ticker page.

Check the displayed snapshot timestamp.

Free API

Try an equity request

Request AAPL GEX for one listed expiration after today.

5 requests/day · No credit card

Paid API
Basic
One expiry after today
Growth
Full chain or 0DTE
Alpha
Historical replay

Already have a key? Try the AAPL API request below. The dashboard guide shows how to plot returned data in your own application.

What Free GEX Data Includes

Public snapshots and authenticated API requests are different ways to access the data:

  • Public ticker snapshots: inspect the available net GEX, gamma flip and wall levels without an account. Read the displayed timestamp; a public snapshot is not a promise of streaming data.
  • Free API access: 5 requests/day for supported endpoints and individual equities such as AAPL, TSLA and NVDA. For GEX, select one listed expiration after today.
  • Data for your own charts: the GEX API returns a per-strike profile you can plot in a notebook or application. The downloadable example below builds a dashboard from those responses; it is separate from the public ticker snapshots.

Create a free account for an API key. No credit card is required for the Free plan. If you only need the public snapshot, start with the ticker page.

Free GEX by Ticker

These links open public snapshots. For programmatic access to the corresponding symbol, apply the API plan and expiry requirements below.

Which Plan Fits Your GEX Workflow?

What you want to doStarting pointAccess to check
Read available levels on a public ticker pageNo accountUse the displayed snapshot timestamp; availability varies by symbol.
Query AAPL, TSLA or NVDA for one expiry after todayFree5 requests/day; single-expiry GEX.
Query SPY, QQQ or SPX for one expiry after todayBasic250 requests/day; ETF/index access. Full-chain GEX requires Growth and above.
Aggregate all expirations, request 0DTE or query supported CME futuresGrowth2,500 requests/day; check the endpoint and symbol coverage.
Replay historical analytics for a backtestAlphaHistorical API access on supported routes and dates.

The expiry rule and symbol rule both apply. For example, SPY single-expiry GEX needs Basic and above, while SPY full-chain GEX needs Growth and above. New accounts need Growth and above for an expiration dated today; legacy accounts may have grandfathered 0DTE access. Compare current plans.

Free GEX via API: Try a Supported Request

Use an individual equity such as AAPL. First inspect its available expirations through GET /v1/options/AAPL in the API playground. Select a listed date after today. This avoids an expired example date or a 0DTE request that requires a higher plan.

For a shell request, set FLASHALPHA_API_KEY to your own key in your environment and EXPIRATION to that listed date in yyyy-MM-dd format:

curl --fail-with-body \
  -H "X-Api-Key: ${FLASHALPHA_API_KEY:?Set your API key}" \
  "https://lab.flashalpha.com/v1/exposure/gex/AAPL?expiration=${EXPIRATION:?Set a listed expiry after today}"

The response includes net_gex, gamma_flip, net_gex_label, as_of and the per-strike strikes array. Check the GEX response reference for field definitions. Call and put walls come from the separate levels endpoint.

To inspect the response in Python, install requests, use the same environment variables, and run:

import os
import requests

response = requests.get(
    "https://lab.flashalpha.com/v1/exposure/gex/AAPL",
    headers={"X-Api-Key": os.environ["FLASHALPHA_API_KEY"]},
    params={"expiration": os.environ["EXPIRATION"]},
    timeout=30,
)
response.raise_for_status()
gex = response.json()
print("As of:", gex.get("as_of"))
print("Net GEX:", gex.get("net_gex"))
print("Gamma flip:", gex.get("gamma_flip"))
print("Net GEX sign:", gex.get("net_gex_label"))

Each request uses allowance. Running both examples makes two GEX requests; requesting the expiry list or wall levels adds further calls. A 403 tier_restricted calls for checking the symbol, expiry and endpoint requirements. A 429 indicates a rate or quota limit. Inspect the response rather than retrying either indefinitely.

Prefer a complete runnable example? Download the Python evaluation pack and notebook (ZIP). The saved SPY example runs without a key; python dashboard.py --live discovers a future AAPL expiry and makes three calls: metadata, single-expiry GEX and all-expiration levels. The chart and flip use GEX; walls are labeled all-expiration context because levels has no expiry filter. Its offline SPY sample does not imply Free authenticated SPY access.

What Changes When You Upgrade?

Choose a plan when the workflow requires it:

  • A larger watchlist: count symbols, refreshes and endpoints. Ten symbols checked three times with separate GEX and levels requests need 60 calls before metadata or retries.
  • SPY/QQQ API requests: ETF/index access for one listed expiration after today requires Basic and above. Full-chain GEX requires Growth and above; new-account 0DTE access requires Growth and above. These are API entitlements; the downloadable guide shows how to build your own visualization.
  • Backtesting: inspect the historical playground and Alpha access before building a research pipeline.

Response caching also differs: Free responses may be cached for up to 15 minutes, Basic for 15 seconds, Growth for 15 seconds, and Alpha for ~1 second. Those are cache durations, not guarantees of source-data age or execution latency. Inspect as_of for the response timestamp and data_as_of, where supplied, for the relevant feed timestamps.

Find the lowest plan that supports your workflow, or use the dashboard implementation guide to turn the response into a chart.

Read the Levels in Context

GEX describes exposure under a calculation and positioning convention. Call/put walls and gamma flip levels are context for a trading workflow, not guaranteed support, resistance or future prices. A gamma flip is not simply where adjacent strike bars change sign. Compare the timestamp, expiry selection and methodology when two tools show different values.

For the mechanics, read what gamma exposure measures, the GEX formula and worked example, and how to read the strike chart.

Frequently Asked Questions

You can inspect available public snapshots on their ticker pages without an account. Authenticated SPY/QQQ GEX API requests require Basic and above for one listed expiration after today. Full-chain GEX requires Growth and above; new-account 0DTE access requires Growth and above.

No. The Free plan provides 5 requests per day for supported endpoints and individual equities. For GEX, choose one listed expiration after today; SPY and QQQ require a paid API plan.

Historical analytics replay requires Alpha and above. Live full-chain GEX requires Growth and above.

Free responses may be cached for up to 15 minutes, Basic for 15 seconds, Growth for 15 seconds, and Alpha for ~1 second. Cache duration is not source-data age; check the response timestamp.

Start with a public snapshot or a supported single-expiry equity request. When your workflow needs ETFs, full-chain exposure, 0DTE or historical replay, use the access table to choose the appropriate plan. Inspect the GEX API reference or create a free API key.

Live Market Pulse

Get fast visibility into market shifts with full-chain analytics over low-latency REST and MCP polling.

Intelligent Screening

Screen millions of option pairs per second using your custom EV rules, filters, and setups.

Export-Ready

Export structured signals to your own execution stack or broker integration - FlashAlpha delivers the analytics, you keep control of order routing.

Join the Community

Discord

Engage in real time conversations with us!

Twitter / X

Follow us for real-time updates and insights!

GitHub

Explore our open-source SDK, examples, and analytics resources!