Futures Contract Month Codes: The Complete Decoder (F to Z)

Futures contract month codes explained: the full F–Z chart, how to decode tickers like ESZ6 and GCM6, 2026/2027 year codes, liquid months and roll dates.

Futures Contract Month Codes: The Complete Decoder (F to Z)

By Jakub Rož · Founder & CEO, For Traders

Futures contract month codes are single letters — F, G, H, J, K, M, N, Q, U, V, X, Z — that identify the delivery month of a futures contract, running F for January through Z for December and skipping I, L, O, P, R, S, T, W and Y to avoid confusion with other symbols. Combined with a product root and a year digit, they form a full ticker such as ESZ6 (E-mini S&P 500, December 2026).

Key takeaways

  • Twelve letters cover twelve months: F=Jan, G=Feb, H=Mar, J=Apr, K=May, M=Jun, N=Jul, Q=Aug, U=Sep, V=Oct, X=Nov, Z=Dec.
  • A full ticker is root + month code + year digit — ESZ6 is the December 2026 E-mini S&P 500 on CME Globex.
  • The same contract can appear as ESZ6, ESZ26, ES1!, ES 12-26 or ESZ2026 depending on whether you're on TradingView, NinjaTrader, Tradovate or a Rithmic feed.
  • Equity index and FX futures trade the quarterly cycle H, M, U, Z; crude oil (CL) lists all twelve months; gold (GC) concentrates liquidity in G, J, M, Q, V, Z.
  • Roll when volume and open interest cross into the next contract — typically the week before expiry — not on expiry day itself.
  • Holding an expiring contract into last-trade day in a prop challenge risks forced liquidation, ugly fills and a rule breach on your simulated account.

Watch: related video

What Are Futures Contract Month Codes?

A futures contract month code is a single letter — F, G, H, J, K, M, N, Q, U, V, X, or Z — that tells you which delivery month a specific futures contract belongs to. It exists because a futures product like gold or crude oil isn't one instrument, it's a whole ladder of contracts expiring in different months, and every rung on that ladder needs its own compact ticker symbol.

Think about it from the exchange's side. COMEX gold doesn't trade as one generic "gold" symbol — it trades as GCZ6 (December 2026), GCG7 (February 2027), GCJ7 (April 2027), and so on, each with its own open interest, its own settlement price, its own book. NYMEX crude, CBOT corn, CME Globex E-minis — same structure. The month code is what lets a feed, a broker platform, or a floor clerk instantly identify which contract you mean without spelling out "December 2026" every time.

Why exchanges use letters instead of numbers

You'd think numbers would be simpler — 12 months, 12 digits, done. But futures tickers evolved out of pit trading and telegraph-era quote systems, where symbols had to be short, unambiguous, and readable at a glance on a ticker tape or shouted across a trading floor. A number could get confused with a contract year, a strike price, or a lot size sitting right next to it in the same string. A letter, dropped into a fixed slot after the root symbol, couldn't be mistaken for anything else. CME Group and its constituent exchanges — CBOT, NYMEX, COMEX — inherited this convention, and ICE Futures adopted the same letter set, so the system became an industry standard rather than a single-exchange quirk.

Which letters get skipped — and why

Nine letters never appear as month codes: I, L, O, P, R, S, T, W, and Y. Most of that comes down to avoiding visual confusion on old quote screens and paper tickets. I and L look too close to the digit 1; O is indistinguishable from 0. The rest overlap with other feed conventions of the era — order types, put/call flags, spread and settlement notations that were already using those letters for something else. Once the 12 surviving letters — F, G, H, J, K, M, N, Q, U, V, X, Z — were locked in for January through December, the sequence stuck, and it's never been revised.

Where the code sits in the contract specification

The month code identifies the delivery month — the calendar month in which the contract is scheduled to settle or deliver, as defined by CME Group or ICE in that product's official contract specification. It does not tell you the last trading day, the notice date, or when the contract actually stops trading — those are separate fields set individually per product and can fall days or weeks before the delivery month even begins. And the code is exchange-agnostic: M means June whether you're looking at a COMEX gold contract, an ICE Brent contract, or a CBOT soybean contract. The letter is universal; the product root in front of it is what tells you what you're actually trading.

The Full Futures Month Code Chart (January to December)

Twelve letters, twelve months, zero ambiguity once you've got the chart in front of you. Here's the complete futures contract month code chart — bookmark it, screenshot it, whatever keeps it one tab away when you're building a symbol at 6:29am before the open.

The complete F–Z table

MonthCodeQuarterly cycle?Typical products
JanuaryFNoCrude oil, natural gas, soybeans
FebruaryGNoCrude oil, gold (minor), grains
MarchHYesES, NQ, 10-Year Note, EUR/USD
AprilJNoCrude oil, natural gas, corn
MayKNoCrude oil, natural gas, wheat
JuneMYesES, NQ, 10-Year Note, GBP/USD
JulyNNoCrude oil, natural gas, soybeans
AugustQNoCrude oil, gold (minor), grains
SeptemberUYesES, NQ, 10-Year Note, JPY/USD
OctoberVNoCrude oil, natural gas, live cattle
NovemberXNoCrude oil, natural gas, soybeans
DecemberZYesES, NQ, gold, 10-Year Note, most FX majors

This is the full futures symbols and month codes list in one place — no gaps, no exceptions. Nine letters get skipped entirely (I, L, O, P, R, S, T, W, Y) because they're either visually confusable with numerals or already reserved for other symbol conventions on most exchange platforms.

If you landed here searching what futures month is J, the direct answer: J is April. No other month uses it. Same logic applies to every other letter in the table — one letter, one month, across every CME, ICE, or CBOT product you'll ever trade.

The four codes you'll use most: H, M, U, Z

If you trade index futures or FX futures, four letters will dominate your screen time: H, M, U, and Z. These are the quarterly futures months H M U Z — March, June, September, December — and they carry the overwhelming majority of volume in products like ES, NQ, and the major currency futures. Most retail and prop traders never touch a January or April contract in these products at all; liquidity concentrates so heavily in the quarterly cycle that trading anything else usually means worse fills and wider spreads. When someone mentions "rolling into Z," they mean the December contract — and it's the one you'll roll into most often if you're trading equity indices near year-end.

Do futures options use the same month codes?

Yes — options on CME futures inherit the same twelve-letter futures month codes list for their underlying delivery month. An ES option expiring into the December contract still carries a Z, exactly like the futures leg itself. Where things differ is in the option root and any weekly or serial designators layered on top — those extra characters tell you it's a weekly or mid-month option rather than standard monthly expiry, but the month letter underneath doesn't change. Get comfortable with futures options month codes now and you won't second-guess a single ticker when you start layering options into your futures strategy.

How to Read a Full Futures Ticker Symbol

A futures ticker is decoded left to right: product root + month code + year digit. Once you can parse those three parts on any symbol, every futures ticker symbol explained on your platform's watchlist stops looking like alphabet soup and starts telling you exactly what you're trading.

The three-part structure: root + month + year

Take the root first — it tells you the underlying product (ES for E-mini S&P 500, GC for gold, CL for crude oil). Next comes the single-letter month code from F through Z. Last is the year digit — usually one digit on retail platforms, sometimes two on order-routing systems that need to distinguish 2026 from 2036. So ESZ6 breaks down as ES (root) + Z (December) + 6 (2026).

Worked examples: ESZ6, GCM6, CLF7, NQH7

  • ESZ6 — E-mini S&P 500, CME Globex, Z = December, 6 = 2026. The December 2026 contract.
  • GCM6 — Gold, COMEX, M = June, 6 = 2026. One of the standard gold futures month codes alongside G (Feb), J (Apr), Q (Aug), V (Oct), Z (Dec).
  • CLF7 — WTI Crude Oil, NYMEX, F = January, 7 = 2027. Crude trades nearly every calendar month, so you'll see F through Z used almost in full.
  • NQH7 — E-mini Nasdaq-100, CME Globex, H = March, 7 = 2027. Same ES NQ contract months cycle: March, June, September, December (H, M, U, Z) for the quarterlies most traders actually watch.

Micros and the extra letter: MES, MNQ, MGC

Roots aren't always two characters. Micro contracts prefix an M — MES (Micro E-mini S&P 500), MNQ (Micro E-mini Nasdaq-100), MGC (micro gold) — but the month-code logic underneath is identical. MESZ6 is just the December 2026 micro version of ESZ6, sized at 1/10th the notional. That's exactly why MES MNQ micro futures dominate the early stages of a prop futures challenge — same expiry calendar, same letters, far smaller tick value while you build consistency.

You'll meet other multi-character roots the same way: ZB and ZN (Treasury futures on CBOT), 6E (Euro FX futures), and BTC (CME Bitcoin futures). Because roots vary from one to three characters, always parse a ticker from the right — the last one or two characters are the year, the character immediately before that is the month letter, and whatever remains on the left is the root.

TickerRootMonthYearProduct
ESZ6ESZ (Dec)2026E-mini S&P 500
GCM6GCM (Jun)2026Gold
CLF7CLF (Jan)2027WTI Crude Oil
NQH7NQH (Mar)2027E-mini Nasdaq-100
MESZ6MESZ (Dec)2026Micro E-mini S&P 500
ZNH7ZNH (Mar)202710-Year Treasury Note
6EU66EU (Sep)2026Euro FX

Year Codes: Why the Same Contract Is Z6, Z26 and Z2026

The year digit tells you when the contract expires, but the number of digits you see depends on which platform you're looking at — one digit on DOMs and Globex order tickets, two on most charting software, four in official contract specs. Same contract, three different labels. If you don't know which convention you're reading, you can misjudge how far out you actually are from expiration.

One-digit, two-digit and four-digit year suffixes

Take the December 2026 E-mini S&P 500. You'll see it written as:

  • ESZ6 — single-digit year, the format CME Globex feeds and most DOMs default to. Fast to type, fine when you're only trading front months.
  • ESZ26 — two-digit year, standard on TradingView, most retail charting platforms, and broker order tickets. This is what you'll type into a symbol search 90% of the time.
  • ESZ2026 — four-digit year, used in official CME contract specifications, clearing records, and anywhere long-dated historical data needs zero ambiguity.

None of these are "more correct" — they're just built for different jobs. A scalper glancing at a DOM doesn't need four digits. A quant pulling ten years of continuous futures data absolutely does.

The decade-ambiguity trap

Here's where new futures traders get burned: a single-digit 6 could mean 2016 or 2026. There's no way to tell from the digit alone — you're relying on context (the fact that 2016 contracts are long dead and delisted) rather than the ticker itself. This is exactly why historical databases and backtesting tools almost never use single-digit year codes — they default to two or four digits specifically to kill that ambiguity. If you're pulling old data for a strategy test and see a lone digit, don't assume the decade. Confirm it against the file's date range or metadata first.

2026 and 2027 year-code reference

Quick reference for the near-term futures year codes you'll actually be trading right now and into next year:

Ticker SuffixMonthYearFull Convention
Z6December2026Z26 / Z2026
H7March2027H27 / H2027
M7June2027M27 / M2027

Notice H7 and M7 — even though the "7" looks like it could belong to any decade ending in 7, right now there's only one live cycle it can reasonably mean: 2027. That's the whole trap in miniature — the digit is only unambiguous in context.

The practical rule, no matter which of Z6, Z26 or Z2026 you're staring at: before you take size on any futures contract expiration codes, open the platform's contract detail panel and check the actual expiry date. Don't trade off the digit alone — confirm it against the calendar.

Ready to trade funded capital?

Choose your path — Instant Accounts, One-Step or Two-Step Challenges — from just $23, with up to $300,000 in funded capital.

Choose your challenge

Platform Symbol Formats: TradingView, NinjaTrader, Tradovate and Rithmic

The same December 2026 E-mini contract is ESZ6 on CME Globex, CME_MINI:ESZ2026 on TradingView, ES 12-26 on NinjaTrader, and ESZ6 again on Tradovate and most Rithmic-fed DOMs — four spellings, one contract. If you're coming from forex or CFDs where the pair is just "EURUSD" everywhere, this is the first wall you hit, and it's the single biggest source of "why can't I find my contract" tickets on futures desks.

Continuous contracts (ES1!, @ES) vs specific months

Every platform also gives you a continuous futures contract — a synthetic, back-adjusted series that stitches front-month data together over time so your chart doesn't gap every quarter. On TradingView that's ES1!; on NinjaTrader and several Rithmic feeds you'll see @ES. These are built for charting and backtesting — clean, uninterrupted price history across dozens of rolls. They are not tradable instruments. When you route an order, you're always filling in one specific dated contract — ESZ6, not ES1!. Mix that up and your backtest results won't match your live fills, because the continuous series smooths over roll-date price adjustments that never actually happened at that price in the real, expiring contract.

Side-by-side format comparison

Platform / FeedSpecific month formatContinuous format
CME Globex (native)ESZ6
TradingView futures symbolsCME_MINI:ESZ2026ES1!
NinjaTrader contract formatES 12-26@ES
Tradovate symbolsESZ6Usually not shown by default
Rithmic symbol formatESZ6Varies by front-end
Generic broker feedES DEC26 or similar plain-English labelOften labelled "ES Continuous"

Why your chart and your order ticket can disagree

Here's the classic error: you pull up ES1! on TradingView, mark up support and resistance off months of clean continuous data, then flip to your Tradovate ticket and buy whatever "ES" auto-populates. If that's the back month instead of front month — say a March contract still showing volume alongside the soon-to-expire December one — you can end up executing in a thinner book with a wider spread and worse slippage than the chart ever suggested. The fix is mechanical, not clever: always confirm the exact contract code and expiry in the order ticket itself before you click, especially in the week or two around rollover when both front month and back month are live and liquid enough to look interchangeable. They aren't.

Which Contract Months Actually Have Liquidity

The letter tells you the month, but volume tells you whether you should be trading it. Most futures products concentrate almost all their liquidity into four contract months a year — the quarterly cycle — and leave the rest as thinly traded serial months that exist mainly for hedgers and options expirations, not for you to hold a directional position into.

Quarterly months vs serial months

Quarterly months use the letters H, M, U, Z — March, June, September, December — sometimes called the "March cycle." These carry the deep order books for most financial futures. Serial months are everything else on the calendar (F, G, J, K, N, Q, V, X) listed by the exchange to give options traders and hedgers monthly granularity. In products like ES or 6E, a serial month might show open interest in the hundreds while the front quarterly contract shows six figures. Trading a serial month there isn't wrong, exactly — it's just trading a ghost town when the city is one contract over.

Liquid months by product: ES, NQ, GC, CL, ZN, 6E, BTC

Liquidity behavior isn't uniform across products, and this is where traders get tripped up moving from equities to metals to energy:

ProductActive monthsLiquidity pattern
ES / NQ (and MES / MNQ)H, M, U, ZQuarterly only — back months near-dead until roll week
ZN / ZB (Treasuries)H, M, U, ZQuarterly only, same pattern as equity index futures
6E (Euro FX)H, M, U, ZQuarterly only
CL (Crude Oil)All 12 months (F–Z)Every month listed and tradeable, but front month dominates volume
GC (Gold, COMEX)G, J, M, Q, V, ZNearest even-numbered month carries the book
BTC (CME Bitcoin)Monthly (all 12)Listed monthly, but front month leads by a wide margin

Notice the split: ES NQ contract months and rates/FX trade almost exclusively on the quarterly cycle, while CL crude oil contract months stay live all year because physical delivery and the term structure (contango, backwardation) matter to commercial hedgers every single month. Gold futures month codes sit in between — six active months instead of four or twelve.

How to confirm the front month with volume and open interest

The working rule is simple: trade the contract with the highest volume and highest open interest, full stop. That's the front month until roll week, when volume and open interest migrate to the next contract and the current front month starts thinning out. Pull up the contract chain in your platform, sort by volume, and you'll see the front month standing well above every other line — usually by a factor of 10 or more outside of CL.

Skip this check and you'll find out the hard way: thin back months mean wider spreads and slippage that quietly eats into your drawdown buffer on an evaluation account, one bad fill at a time.

Rolling Over: When to Switch Contract Months

Rolling over means closing your position in the expiring contract and opening the equivalent size in the next listed month before the front month goes dark. The trigger isn't a date on a calendar — it's the day volume and open interest visibly migrate to the back month. Get the roll date wrong and you're either stuck trading a corpse of a market or forced into a market order at the worst possible print.

Finding the roll date: the volume and open-interest crossover

Watch two numbers side by side in your contract chain: volume and open interest. Early in the cycle, the front month dominates both. As expiry approaches, institutional flow starts building positions in the next contract, and you'll see a crossover — the back month's open interest overtakes the front month's, even if intraday volume hasn't flipped yet. That crossover session is your practical roll date, not the exchange's official last-trade date. For ES and NQ, this typically lands on the Thursday of the week before the third-Friday expiry — a full week ahead of when the front month technically stops trading. Don't wait for expiration week itself; by then the spread on the old contract is already widening and you're the liquidity everyone else is fading.

The standard roll windows for equity index, energy and metals

Roll timing isn't uniform across asset classes, and treating every product like ES will get you burned:

ProductTypical roll windowWhy
ES / NQ (equity index)~1 week before 3rd-Friday expiryCash-settled, no delivery risk to manage
CL (crude oil)~3 weeks before delivery monthPhysical delivery — nobody wants to be holding it near notice day
GC (gold)Rolls the month before the active delivery monthDelivery months are Feb, Apr, Jun, Aug, Oct, Dec — liquidity thins fast outside these

If you're directional, roll flat — close the front month, then re-enter the back month as a fresh trade. Don't try to leg into a calendar spread to save a few ticks; you're a futures trader managing directional risk, not a spread desk, and getting caught with one leg filled and one leg not filled during roll week is how a clean idea turns into an ugly fill.

Expiry rules on a prop futures challenge

Every prop futures challenge enforces hard flat-by rules ahead of contract expiration — check your platform's specific cutoff, because it's usually earlier than the exchange's last-trade date, not the same day. Miss it and the platform auto-liquidates your position at whatever price is printing, which can happen during a thin, choppy roll-week session. An auto-liquidation at a bad print doesn't care that your original idea was sound — it can single-handedly breach your daily loss limit and end an otherwise solid evaluation. Build the roll date into your position sizing and risk plan from day one of the challenge, the same way you'd plan around FOMC or NFP. Discipline here isn't optional — it's the difference between passing on the merit of your setups and getting kicked out on a technicality.

Ready to trade funded capital?

Choose your path — Instant Accounts, One-Step or Two-Step Challenges — from just $23, with up to $300,000 in funded capital.

Choose your challenge

Frequently Asked Questions

What are futures contract month codes?+

Futures month codes are single-letter symbols embedded in a ticker that tell you exactly which delivery or expiration month a contract represents. Each of the 12 months has a fixed letter — F through Z, skipping some to avoid confusion with common abbreviations — standardized by the CME and other exchanges decades ago. You'll see them in every futures ticker, like the Z in ESZ6 (December) or the M in GCM6 (June). Without the code, you can't tell a March gold contract from a December one just by looking at the root symbol GC.

What is the full list of futures month codes?+

The 12 codes run F (January), G (February), H (March), J (April), K (May), M (June), N (July), Q (August), U (September), V (October), X (November), Z (December). These letters are fixed by exchange convention and never change across products — a Z always means December whether you're trading ES, GC, or CL. Traders memorize them the way you'd memorize pip values; they become second nature within a few weeks of watching contract chains.

What futures month is J, H, M, U and Z?+

J is April, H is March, M is June, U is September, and Z is December. These five show up constantly because H, M, U, Z are the quarterly cycle used by index futures like ES and NQ, while J and the other monthly letters appear in commodities and energy contracts that trade every month. If you only trade stock index futures, HMUZ is really all you need to memorize cold.

How do I read a futures ticker like ESZ6?+

ES is the root symbol for the E-mini S&P 500, Z is the month code for December, and 6 is the year digit for 2026. Read left to right: product, month, year. GCM6 breaks down the same way — GC (gold), M (June), 6 (2026). Some platforms show two digits (Z26) or four (Z2026) instead of one, but the logic never changes — you're always decoding product, then expiration month, then year.

Why do year digits differ between Z6, Z26, and Z2026?+

Platforms use single, double, or four-digit year formats purely as a display preference, not a different contract. Z6, Z26, and Z2026 all mean the same December contract in the same year — the exchange's official symbol typically uses one digit for the current decade cycle, while broker and charting platforms often expand it to avoid ambiguity across years. Always confirm the actual expiration date in the contract specs rather than assuming from the digit format alone, especially when comparing symbols across different brokers or data feeds.

Which contract months are actually liquid to trade?+

Liquidity concentrates in the front month and the nearest quarterly expiration for most products — for ES, NQ, and 6E that means the HMUZ cycle (March, June, September, December), and volume shifts almost entirely to the new front month days before expiration. Gold (GC) and crude oil (CL) trade active volume in more months since they're physical commodities with real delivery cycles, but even there, a handful of months carry the bulk of open interest. Check volume and open interest before entering a back-month contract — thin months mean wider spreads and worse fills.

What's the difference between quarterly and serial months?+

Quarterly months (March, June, September, December — the HMUZ cycle) carry the deepest liquidity and are what most index and currency traders mean by 'the front contract.' Serial months are the in-between months added mainly for options traders who want expirations closer to earnings or economic events, and they typically see far lower volume in the underlying futures. If you're trading directionally rather than hedging a specific date, quarterly months are almost always the better choice for tight spreads and easy fills.

When should I roll to the next futures month?+

Roll a few days before volume and open interest flip from the front-month contract to the next one — exchanges and most data providers publish this rollover date, and it's usually 5-8 trading days before expiration for index futures. Waiting too long risks trading a thinning, wider-spread contract or accidentally holding into physical delivery on commodities like CL and GC. Set a calendar reminder for the roll date of whatever product you trade regularly rather than eyeballing it each cycle.

Are futures options month codes the same as futures codes?+

The underlying letter system is identical — options on futures use the same F-through-Z monthly codes as the futures contracts they're based on. The key difference is that options add serial (non-quarterly) expirations far more often than the futures themselves, since options traders want more frequent expiration choices around news events. When you see an options ticker, decode the month letter exactly as you would on the futures ticker — the mechanics don't change.

What happens if I hold futures past expiration in a challenge?+

Most prop firm rules, including For Traders' Trading Challenge and Funded Account terms, require you to close or roll positions before the contract's last trading day — holding into expiration on a simulated account isn't the same as real physical delivery, but it typically breaches platform rules and can flag the account for review. Practically, liquidity dries up and spreads widen sharply in the final sessions before expiry anyway, so there's rarely a good reason to hold that long. Check your specific challenge's contract specifications and close out ahead of the roll date.

JR

Written by

Jakub Rož

Founder & CEO, For Traders

Jakub founded For Traders to build a prop trading firm with multi-asset coverage — Forex, Gold, Crypto and Futures — under a single funded-trader framework. He writes about how the prop industry actually works, what drives long-term trader performance, and where Gold and Forex strategies intersect with disciplined risk.

Follow on LinkedIn

Ready to trade funded capital?

Choose your path — Instant Accounts, One-Step or Two-Step Challenges — from just $49, with up to $300,000 in funded capital.

Choose your challenge

Trade up to $300,000

Choose challenge