# How to get an options chain

Free chains exist and are delayed and greekless. Paid ones start near thirty dollars — and under all of them sits one fee schedule.

*https://stockmarketstack.com/how-to/get-an-options-chain · next to Stock Market Data APIs*

**Answer:** Free chains exist: yfinance returns one for any listed US ticker, delayed and without greeks. Paid chains start around thirty dollars a month, and greeks are priced as a separate product because they are a calculation over a volatility surface rather than data. Underneath every one of them sits OPRA, the single processor for US listed options, which is why options cost several times what stock quotes do.

## The tools that do this

*In the order this page recommends trying them. Paid placement does not affect this order.*

1. [yfinance](https://stockmarketstack.com/tools/yfinance.md) — Free, no key, delayed, and greeks only as Yahoo happens to supply them. The right first call, not a foundation.
2. [EODHD](https://stockmarketstack.com/tools/eodhd.md) — Chains with greeks as a $29.99 marketplace add-on, on an API you may already be paying for.
3. [Alpha Vantage](https://stockmarketstack.com/tools/alpha-vantage.md) — End-of-day options from the $49.99 plan; realtime options do not arrive until $199.99.
4. [ORATS](https://stockmarketstack.com/tools/orats.md) — Options only, and the product is the smoothed IV surface rather than the raw quote. From $199 a month.
5. [Cboe DataShop](https://stockmarketstack.com/tools/cboe-datashop.md) — Files from the exchange itself, priced per dataset, date and symbol. For history, not for a live chain.

## The short way

[yfinance](https://stockmarketstack.com/tools/yfinance) will hand you a chain in four lines and no account:

```python
import yfinance as yf

ticker = yf.Ticker("AAPL")
expiries = ticker.options                      # every expiry date, as strings
chain = ticker.option_chain(expiries[0])       # .calls and .puts, as DataFrames
```

`ticker.options` is the list of expiries; `option_chain()` takes one of them and returns calls
and puts as separate DataFrames. Strikes, bid, ask, last, volume and open interest are there.
What is also there is a 15-minute delay and no contract behind any of it — this reads Yahoo's
undocumented endpoints, and both of those facts matter more for options than they do for stocks.

## What the options are

**A chain, free and delayed.** [yfinance](https://stockmarketstack.com/tools/yfinance) as above. Good for screening,
studying past behaviour and building an interface. Not something to put under a product, for the
same reasons it is not for stock prices, plus one more: the delay is on the instrument whose
price moves fastest.

**A chain with greeks, cheaply.** [EODHD](https://stockmarketstack.com/tools/eodhd) sells options chains with greeks as a
marketplace add-on at $29.99 a month, on top of an API you may already be paying for. Watch the
metering: on EODHD a call is a unit of currency rather than a request, and an options request
costs ten of them against the 100,000 daily allowance.

**A chain from a general-purpose API.** [Alpha Vantage](https://stockmarketstack.com/tools/alpha-vantage) carries
end-of-day options on its $49.99 plan and does not carry realtime options until the $199.99 one —
the clearest illustration on this page of what the underlying licence costs a vendor.
[Intrinio](https://stockmarketstack.com/tools/intrinio) sells options prices with greeks and implied volatility alongside its
XBRL fundamentals, from $150 a month for a personal seat with no display or redistribution
rights.

**A surface rather than a chain.** [ORATS](https://stockmarketstack.com/tools/orats) is options-only and the product is the
modelling: smoothed implied volatility and greeks, end-of-day back to 2007, from $199 a month for
the delayed API and $299 for live chains once you have signed the exchange agreements. If what
you need is a consistent surface across time rather than yesterday's quotes, this is a different
purchase from everything above.

**History as files.** [Cboe DataShop](https://stockmarketstack.com/tools/cboe-datashop) sells straight from the exchange,
priced per dataset, date and symbol: one full-market day of the EOD summary is $50, or $70 with
implied volatility and greeks attached; every OPRA print for a day with the NBBO at trade time is
$132. [Tick Data](https://stockmarketstack.com/tools/tickdata) sells the same asset class by the symbol-year, and the
comparison with its own equities rate card is the whole argument of this page — $32 for a
symbol-year of US equity Level I against $1,000 for OPRA options.

**No API at all.** [Market Chameleon](https://stockmarketstack.com/tools/market-chameleon) is a browser product on
15-minute-delayed data with earnings-move statistics and multi-leg strategy screeners, one plan
at $99 a month. It is on this list because a lot of people asking for a chain want an answer
rather than an array, and writing the analysis yourself is the expensive part.

## Where this breaks

**OPRA.** Every US listed options quote, from every exchange, reaches the world through one
processor, and its fee schedule is one public document. There is no cheaper venue to buy from the
way there is in equities, so the floor under every vendor above is the same filing. On the
schedule dated 26 February 2026 the professional display device fee is $31.50 a month, the
non-professional subscriber fee is $1.25 falling to $0.60 at volume, and redistribution is $1,500
a month — $650 if you are query-service only. That last line is the one that ends side projects:
the moment a live options quote reaches somebody who is not you, it is redistribution.

**What a free tier actually returns.** Three things get quietly trimmed, and none of them is a
bug:

- **The delay.** Fifteen minutes on an instrument whose quote is a function of an underlying that
  has moved since. The bid and ask you are reading are not the ones you would be filled against.
- **The chain's width.** Near-dated, near-the-money strikes rather than every expiry and every
  strike, because the full response for a liquid name is large.
- **The greeks.** They are absent or unreliable, because they are a calculation over a surface
  rather than a field in the feed, and building that surface is the part with a cost.

**Coverage stops at the US border.** Almost every card here that carries options is US-only,
for the reason above: one processor with one published price, against a per-venue negotiation
everywhere else.

**History is not a bigger version of live.** Options history is every strike of every expiry of
every underlying, every day, which is why it is sold as files rather than streamed, and why
[FirstRate Data](https://stockmarketstack.com/tools/firstrate-data) — which does sell options history — sells it end-of-day
only, unadjusted for splits, with no intraday at any price.

## If you outgrow this

**When the delay starts costing you**, the next question is not which vendor but which subscriber
you are. Professional and non-professional are the exchange's categories, not the vendor's, and
the gap between them on the OPRA schedule is wider than the gap between most vendors.
[Why real-time stock data is so expensive](https://stockmarketstack.com/guides/real-time-market-data-fees) has the mechanics.

**When you need the surface rather than the quotes**, that is a modelling purchase. ORATS sells
it; [QuantLib](https://stockmarketstack.com/tools/quantlib) lets you build it yourself and supplies no data at all.

**When you want the flow rather than the chain**, [Unusual Whales](https://stockmarketstack.com/tools/unusual-whales) sells
the options tape and Greek exposure over REST and WebSocket, which is a different question about
the same asset class.

Everything in the catalogue that touches options is on the
[options data](https://stockmarketstack.com/collections/options-data) page, and the APIs among them are in
[market data APIs](https://stockmarketstack.com/categories/market-data-apis).

## FAQ

### Why do I have to pay for greeks separately?

Because a greek is not data. It is a number calculated from a model, an interest rate, a dividend assumption and a volatility surface that somebody had to build, clean and maintain. Two vendors' deltas for the same contract will differ, and the difference is their modelling rather than an error in either. What you are buying is the surface, and that is why it is priced as its own product.

### Is a free options chain good enough to trade from?

No, and the reason is structural rather than a matter of quality. Free chains are delayed, which means the bid and ask you are reading are not the ones you would be filled against. They are entirely good enough for screening, for studying historical behaviour and for building an interface, and those are most of what people are actually doing.

### Does an options chain include the greeks?

Not by default. A raw chain is strikes, expiries, bid, ask, last, volume and open interest. Implied volatility and the greeks are a layer above that, and providers differ on whether they include them, charge for them or leave them out. Read the field list on a card before assuming, because the word "chain" covers both shapes.

### What about options on non-US markets?

Almost nothing cheap covers them. The cards here that carry options are overwhelmingly US-only, because OPRA is one processor with one price list and every other jurisdiction is a separate per-venue licence negotiated separately. If you need European or Asian listed options, expect to be quoted rather than to read a price off a pricing page.

## Sources

1. [Options Price Reporting Authority Fee Schedule](https://cdn.opraplan.com/documents/OPRA_Fee_Schedule.pdf) — Options Price Reporting Authority, 2026-02-26
2. [yfinance API reference — Ticker](https://ranaroussi.github.io/yfinance/reference/yfinance.ticker_tickers.html) — yfinance project, read 2026-09-21

*Last updated 2026-09-21. A reference page, corrected in place — not a dated post.*
