How do you read an option symbol like SPY261016P00772000?
An option symbol packs four fields: the root, the expiration date, C or P, and the strike times 1,000. SPY261016P00772000 is a SPY $772 put expiring 2026-10-16.
An option symbol is four fields written back to back: the underlying's root, the expiration date as YYMMDD, a C or P for call or put, and the strike price times 1,000 as 8 digits. Read that way, SPY261016P00772000 is a SPY put with a $772 strike that expires on 2026-10-16. This post decodes that one real contract field by field, then works through one real trade in it.
What the symbol format is
US listed options use a standard identifier from the Options Symbology Initiative, usually called the OSI symbol (and often the OCC symbol, after the Options Clearing Corporation). In its full form it is 21 characters: the option root symbol padded to 6 characters, a 6-digit expiration date (YYMMDD), a 1-character call/put flag (C or P), and an 8-digit strike price with 5 digits for dollars and 3 for decimals, which is the strike times 1,000, zero-padded.1
The four field lengths add up to the full width:
If you want to check a symbol of your own as you read, our option symbol decoder splits any symbol into the same four parts.
The contract, decoded field by field
Here is the contract as CaymanBot's trades feed shows it, and the same contract in its padded OSI form:
- On the feed:
O:SPY261016P00772000 - OSI form:
SPY 261016P00772000
| Field | Characters | What it says |
|---|---|---|
| Vendor prefix | O: | The data vendor's marker for an option contract; not part of the OSI symbol |
| Root | SPY plus 3 spaces | SPY, padded to 6 characters |
| Expiration | 261016 | YYMMDD, so 2026-10-16 |
| Type | P | Put |
| Strike | 00772000 | 772.000, a $772 strike |
The root. SPY is 3 letters long, so the OSI form adds 3 spaces to fill the 6-character slot. That padding keeps every field in a fixed position.
The expiration. Read 261016 two digits at a time: the first pair is the year (2026), the second is the month (October), and the last is the day (the 16th). The contract expires on 2026-10-16.
The type. P marks a put. A call would carry a C in the same position.
The strike. The 8 digits are the strike times 1,000. Dropping the leading zeros of 00772000 leaves 772,000, and dividing gives the strike in dollars:
The 3 trailing digits are there for strikes with decimals. A $772 strike has none, so all three are zeros.
Why feeds show a shorter version
The 21-character form pads the root with spaces, and spaces are awkward in URLs, files and database keys. Many data feeds therefore drop the padding and write the fields straight together, and some add their own prefix. CaymanBot's feed writes this contract as O:SPY261016P00772000: the O: is the vendor's option marker, and everything after it is the same root, date, flag and strike. Strip the prefix and the padding, and the two forms carry identical information.
One real trade in this contract
As of 2026-10-15, CaymanBot's public trades feed shows a print in this contract timestamped 4:14 pm ET, after the 4:00 pm ET stock close.2
| Item | Value |
|---|---|
| Contract | SPY $772 put, expiring 2026-10-16 |
| Time (ET) | 2026-10-15 16:14:33 |
| Size | 10 contracts |
| Price | $2.10 |
| Bid / ask | $2.09 / $2.10 |
| SPY price | $772.19 |
| Side tag | Tagged BTO (a lean) |
| Premium | $2,100 |
A standard US equity option covers 100 shares, so the dollars paid are contracts times price times 100.3 The contract multiplier is why a $2.10 price is far more than $2.10 per contract:
The print went off at the ask of $2.10, and CaymanBot's classifier tagged it bought to open (a lean, not proof). Nothing in the data shows who the buyer or seller was, or why they traded. Our explainer on buy to open and sell to close covers what those tags mean.
SPY traded at $772.19 at the time of the print, just above the $772 strike. A 10-lot is a small, retail-sized print. It is useful here because it is ordinary: it shows how a single line on a feed maps back to the four fields in the symbol.
How to read a symbol on any feed
Once you know the order, any symbol reads the same way, left to right:
- Find where the letters end. Those letters are the root.
- Take the next 6 digits as YYMMDD for the expiration date.
- Read the single letter: C is a call, P is a put.
- Divide the last 8 digits by 1,000 for the strike.
For options traders this matters because two contracts can differ by one character. A C instead of a P, or a strike field one step away, is a different contract with a different price. Checking the four fields before reading anything else on a print is a habit that catches those mix-ups. Our guide to reading options flow goes on from the symbol to size, price and side.
How to practice this
Open a free CaymanBot account, pick a few trades on the feed, and decode each contract symbol before you look at the plain-English label next to it. In the first two Learning Mode stages, each trade on the feed comes with a plain-English sentence you can check against the strike, expiry and premium. Then try the premium arithmetic on a contract in the $100K paper account, with no real money at stake. A free account shows options data delayed 16 minutes (60 minutes without an account).
Educational only, not investment advice.
Notes
-
OSI layout as described in two broker explainers: Interactive Brokers, https://ibkb.interactivebrokers.com/article/972, and Fidelity, https://www.fidelity.com/research/options/osi.shtml ↩︎
-
CaymanBot public trades feed, data delayed, SPY 2026-10-15 16:14:33 ET. https://app.caymanbot.com/api/v1/trades ↩︎
-
Options Clearing Corporation, Characteristics and Risks of Standardized Options (Options Disclosure Document). https://www.theocc.com/company-information/documents-and-archives/options-disclosure-document ↩︎
Options data from OPRA, delayed at least 60 minutes.
Frequently asked questions
What are the four parts of an option symbol?
The root symbol (padded to 6 characters), a 6-digit expiration date written YYMMDD, a single C or P for call or put, and an 8-digit strike that is the strike price times 1,000.
What does SPY261016P00772000 mean?
It is a SPY put with a $772 strike that expires on 2026-10-16. The 261016 is the date, the P marks a put, and 00772000 divided by 1,000 is the 772 strike.
How do I turn the 8-digit strike in an option symbol into a price?
Divide it by 1,000. The first 5 digits are dollars and the last 3 are decimals, so 00772000 becomes 772.000, a $772 strike.
Why do some data feeds show O:SPY261016P00772000 without spaces?
The O: is the data vendor's marker for an option contract and is not part of the symbol. Feeds also drop the spaces that pad the root to 6 characters, so the same 21-character symbol appears shorter.