The Crypto Times USA Bitcoin Premium Index · daily fix 11:30–12:30 ET · CTPI-BTC-SPOT-USD

How much more does Bitcoin cost in the USA than offshore — and how much of the famous gap is real US demand? The gap widely quoted as the Coinbase premium compares Bitcoin’s dollar price on US exchanges with its USDT price on Binance, and part of it is simply USDT trading away from $1. This index publishes that gap once a day at noon New York time and splits it exactly into the USA Bitcoin Premium — the part that is real US demand — and the USDT effect. It is not a trading signal and is not affiliated with or endorsed by any exchange named. Sister indices: India Bitcoin, Korea Bitcoin, South Africa Bitcoin, USDT Peg.

—
USA Bitcoin Premium · daily fix
— classic gap (often called the Coinbase premium) · of which — is the USDT effect
vs Binance’s USDT price converted at the market USDT/USD rate
—
Bitcoin in the USA ($ per BTC, fix)
—
Offshore price ($ per BTC)
DAILY FIX
Right now: — INDICATIVE
loading…
Daily fix series · methodology v0.1.0 · rolling 30-day range statistics appear once the series is 30 days old
Today’s range: —
—
—
loading…

Premium history

━ USA Bitcoin Premium (daily fix)   ━ weekend indicative

Where Bitcoin trades in the USA right now

loading…
ExchangeMid ($)Best bid / best ask ($)Spreadvs index fix
loading…
Per-exchange rates are the latest sampled order-book quotes (best bid and ask as captured) and may lag the live market. Deviation is shown for comparison only, not as a trading recommendation.

What the premium means for a purchase

If I spend dollars on Bitcoin in the USA:

Methodology, changelog and data

How this is calculated — constituents & exclusions

Methodology v0.1.0 · DRAFT pending calibration and Owner sign-off. Values marked TO BE SET are filled from calibrate.py after roughly 44 hours of live capture; the version number does not change when they are filled, because filling them does not change how a fix is computed.

What is measured

The Crypto Times USA Bitcoin Premium Index (CTPI-BTC-SPOT-USD) measures how much more (or less) Bitcoin costs in US dollars on US exchanges than on the offshore USDT market, and splits that gap into its two parts. Three numbers are published every day: the USA Bitcoin Premium, the headline (the US dollar price against Binance’s BTC/USDT price converted into dollars at the market USDT/USD rate — the part of the gap that is real US demand); the classic gap, often called the Coinbase premium (the same comparison before any correction, here across several US exchanges); and the USDT effect (the rest of the classic gap, due to USDT’s own price). The USA Bitcoin Premium plus the USDT effect equals the classic gap, exactly. Data fields keep their names: premium_pct and usa_demand_pct carry the USA Bitcoin Premium, raw_premium_pct and classic_gap_pct the classic gap, usdt_part_pct the USDT effect.

What it is not. Not a trading signal, not a claim about who is buying, and not affiliated with or endorsed by any exchange named or any publisher of a similar metric. It corrects a well-known number; it does not attack it.

The daily fix

Fix window 11:30–12:30 ET (noon New York time, when US-dollar books are deepest), published at 12:31 ET (16:31 UTC in summer, 17:31 UTC in winter) by a systemd timer with Persistent=true; if the host is off through the window, the timer runs on boot, finds no samples and refuses to publish. No estimate is ever published in place of a missed fix; a missed or late fix is recorded in the corrections log as a publication-timing entry. There is no central-bank or ECB input.

Official fixes are computed every Monday to Friday (ET). Public holidays do not pause the index: crypto trades every day, so a US public holiday is an ordinary fix day. Weekend runs store an indicative point.

Inputs

  • Venue quotes: the BTC/USD order book of each constituent US exchange, sampled every 60 seconds during US market hours (08:00–23:59 ET) and every 300 seconds overnight. Each sample’s raw payload is stored verbatim and never modified.
  • Offshore reference (BTC/USDT): Binance spot best-bid/best-ask mid, sampled on every collector pass, seconds before the venue books.
  • USDT/USD rate: Kraken spot best-bid/best-ask mid, sampled on every collector pass and dated with the capture’s UTC day — the same source the family’s stablecoin indices use for USDT’s own price.

Computation

  1. Pairing: each US-dollar sample is paired with the Binance reference captured nearest to it in time (within 120 seconds; unpaired samples are counted and dropped, never estimated). For each pair: r = venue_mid_usd ÷ binance_btcusdt — the dollars-per-USDT rate the two Bitcoin prices imply.
  2. Per venue: the median of r across its paired samples is the venue observation; the median two-sided dollar depth resting within ±TO BE SET bps of mid (stored bands: 50, 100) is the venue weight.
  3. Eligibility: a venue is excluded if it is shadow-listed, has fewer than 2 paired samples in the window, has zero in-band depth, or its depth is below the floor of $TO BE SET two-sided. Exclusions are recorded in the fix’s provenance with the venue’s would-be value.
  4. Aggregate: the depth-weighted median of the venue observations, R.
  5. Classic gap: raw_premium_pct = (R − 1) × 100.
  6. USA Bitcoin Premium (headline): premium_pct = (R ÷ USDTUSD − 1) × 100, where USDTUSD is the latest USDT/USD rate captured before the window closes.
  7. USDT effect: classic − premium = R × (1 − 1 ÷ USDTUSD) × 100 — exact by construction, and recomputable from the published R and USDTUSD.
  8. Published price level: value = R × binance_ref (dollars per BTC), where binance_ref is the median of the references actually paired, so that value ÷ (binance_ref × USDTUSD) − 1 reproduces the headline exactly from the figures on the page.

Publication gates

An official fix requires at least TO BE SET eligible venues, a USDT/USD rate captured within the carry ceiling, at least one paired Binance reference, and no existing official fix for that time. Officials are immutable once written; restatements go only through governance tooling and appear in the corrections log.

Quality flags (published with the fix, never hidden)

two_venue_aggregate; high_venue_dispersion when venue observations differ by more than TO BE SET bps; unpaired_samples(n); insufficient_venues on indicative fixes only.

Constituents and venue disclosure

Candidate venues at launch: Coinbase, Kraken, Gemini and Bitstamp — the dollar books of major US exchanges, so that no single venue moves the number. Each public book is read at a fixed depth: Coinbase and Kraken to 100 price levels per side, Gemini at its default public depth, Bitstamp in full; depth for the depth-weighted median is measured on the levels each book returns. A venue whose public book is returned in full may be sampled every 5 minutes outside the fix and sync windows (every minute inside them) to bound storage; the constituents list states each venue’s interval. Coinbase’s public book does not report auction mode (a special session, for example after a trading halt, in which quotes are indicative, not tradeable); for Bitcoin this is rare, and a Coinbase book far from the other US books raises the family’s dispersion flag. Constituent status is set from measured order-book depth during calibration and reviewed against the family venue policy; the venue-status line and the per-exchange table state, every day, which venues the number includes and why any is excluded. The data terms of every source, Binance’s included, are part of the family’s data-terms review.

Live indicative readings

Between fixes the page shows a 5-minute indicative reading computed with the same pairing and aggregation, against the USDT/USD rate in force at the sample. Past 15 minutes without a usable sample the live block shows STALE rather than a stale number. Indicative readings are never part of the daily fix series.

The family’s synchronized reading

Besides the daily fix, the engine records one reading a day at 12:00 UTC — the same moment for every index in the family (08:00 ET in summer, 07:00 ET in winter) — computed exactly as above over 11:55–12:05 UTC. It exists so that a future composite can combine markets observed at the same instant. It is not this index’s official value and is never part of its fix series; a day on which it cannot be computed is recorded as INVALID with its reason. Around that window the collector samples every 60 seconds whatever the local hour. The series is published at /v1/sync on the engine host.

Versioning

The methodology version changes only when the way a fix is computed changes — never for display, documentation or the filling of calibration values above. Package versions are separate.

Changelog

2026-09-24 · engine v1.12.3 · methodology v0.1.0 (draft)

Names of the three published numbers: the headline is now the USA Bitcoin Premium (previously “USA demand part”), the classic gap is labelled as often called the Coinbase premium, and the remainder is the USDT effect (previously “USDT part”); data field names are unchanged. Public holidays do not pause the index. No change to how the fix is computed. Official fixes remain switched off.

2026-09-24 · engine v1.12.2 · methodology v0.1.0 (draft)

Methodology text: states that a venue returned in full may be sampled every 5 minutes outside the fix and sync windows to bound storage, and that Coinbase’s public book does not report auction mode. No change to how the fix is computed. Official fixes remain switched off.

2026-09-24 · engine v1.12.1 · methodology v0.1.0 (draft)

Venue discovery (run 23 September 2026): Coinbase’s book is now read from its public Advanced Trade order book at 100 price levels per side — the same Coinbase order book at a bounded depth. The Exchange API’s level-2 book is the full book (about 1 MB per request), which stored every minute would have filled the server’s disk. Kraken, Gemini, Binance and the Kraken USDT/USD leg answered as documented; Bitstamp refused the test from India, where it is blocked, and is re-checked (with its reply size) from the index’s own server before install. Official fixes remain switched off.

2026-09-23 · engine v1.12.0 · methodology v0.1.0 (draft)

Index created on the CTPI family engine: the US dollar price of Bitcoin on Coinbase, Kraken, Gemini and Bitstamp against Binance’s BTC/USDT price, paired per sample, with the market USDT/USD rate (Kraken) as the exchange-rate leg; three numbers published — the classic gap, the USA demand part (headline) and the USDT part, which add up exactly; noon-ET fix published 12:31 ET; the family’s synchronized reading recorded daily at 12:00 UTC. Official fixes remain switched off ([fix].official_enabled = false) until calibration values are set from live data and the methodology is signed; the daily timer stores indicative (shadow) fixes meanwhile.

Corrections

No corrections, restatements or publication-timing entries yet. Entries are added here, inside this document, never on a separate page: a missed or late fix is recorded as a publication-timing entry; a change to a published value is a restatement, with the old value, the new value, the reason and the date.

DateTypeFix dateDetail
none recorded
Download data
The daily fix series to date. Full series JSON with a stable schema: /v1/fixes.json.

Frequently asked questions

What are the three numbers?
The USA Bitcoin Premium (the headline) compares Bitcoin’s dollar price on US exchanges with its USDT price on Binance converted into dollars at the market USDT/USD rate: the part of the gap that is real US demand. The classic gap, often called the Coinbase premium, makes the same comparison without that conversion, as the well-known metric does. The USDT effect is the rest: the share of the classic gap that comes from USDT’s own price. The USA Bitcoin Premium plus the USDT effect equals the classic gap, exactly.
Is this the Coinbase premium?
It measures the gap widely known as the Coinbase premium, with two differences: it uses the dollar books of several US exchanges (Coinbase, Kraken, Gemini, Bitstamp), so no single venue moves it, and it splits the gap into its two parts. It is not affiliated with or endorsed by any exchange named, or by any publisher of a similar metric.
Why split it?
Because the classic number mixes two things. If Bitcoin costs the same in dollars everywhere but USDT trades at $1.002, Binance’s USDT price looks 0.2% cheaper and the classic gap reads +0.20% — all of it USDT, none of it US demand. The split shows how much of any day’s gap is which.
Isn’t Bitcoin just moving? How do you separate the premium from the price?
Every US dollar quote is paired with Binance’s USDT price captured within two minutes of it, and the premium is computed per pair before anything is averaged, so Bitcoin’s own move inside the window never enters the number.
Where does the USDT/USD rate come from?
Kraken’s USDT/USD best bid and ask, sampled on every collector pass — the same source the family’s stablecoin indices use for USDT’s own price. The USDT Peg Index publishes the multi-exchange view of the same rate.
Is this a trading signal?
No. It is a measurement of one gap, once a day, from public order books. It says nothing about who is buying or what comes next.
Why noon New York time?
It is when US-dollar books are deepest. The index has no central-bank input, so no publication time constrains the fix.
What happens on weekends and holidays?
Bitcoin trades every day. Official fixes run Monday to Friday, and public holidays do not pause the index. Weekend readings are recorded as indicative points and marked distinctly on the chart, and the family’s synchronized reading is taken every day.
Can I actually trade at these prices?
The per-exchange table shows sampled order-book best bid and ask — tradeable quotes at sample time, subject to depth and fees. The index value itself is a computed benchmark, not a quote.
Is the index live?
The citable number is the once-daily fix. A live indicative reading updates continuously above it and is never part of the daily fix series.
Source: The Crypto Times USA Bitcoin Premium Index (CTPI-BTC-SPOT-USD). https://www.cryptotimes.io/data/usa-bitcoin-premium-index/
loading…