AymarData
Binance spotHistory from 2025-06-01BTCUSDT

Binance BTCUSDT spot historical order book & tick data

6.72M trade and depth events for BTCUSDT on Binance spot since 2025-06-01 — about 13,125 events a day.

Coverage

BTCUSDT spot data coverage

What is recorded, how often it updates and how much there is.

History start

2025-06-01

512 days of history

Events recorded

6,720,000

≈ 6.72M as of 2026-10-25

Avg events / day

13,125

trade · depth update

Update frequency

Every trade tick-by-tick; depth diffs at 100 ms

Daily activity · last 30 days

BTCUSDT spot events/day: 30-day series, average 13,125 events/day, low 11,164, high 15,071.
low 11,164avg 13,125high 15,071

Indicative daily event volume, last 30 days to 2026-10-25. Shape modeled from collector stats; mean matches the average events/day above.

About this market

What is BTCUSDT spot?

BTCUSDT is the most active pair on the most active spot venue, so its tape is where microstructure research on Binance usually starts — every trade, plus 100 ms depth diffs down to the tick. AymarData has recorded 6.72M events on Binance spot BTCUSDT since 2025-06-01: every trade, plus order-book updates at 100 ms.

Bitcoin is the market's reserve asset and the benchmark every other crypto instrument is quoted against. The things that move BTC on spot are, in rough order: US spot-ETF creations and redemptions, which show up as persistent one-way flow around the New York cash open; macro prints (CPI, payrolls, FOMC) that reprice the dollar and real yields within seconds; and liquidation cascades on leveraged venues, which turn a 1% move into a 3% wick. Each shows up in the data differently — as a burst of aggressive trades, as depth leaving one side of the book, or as a widening spread.

With about 13,125 events a day, BTCUSDT is dense enough for genuine execution research: rebuild the book from depth diffs, replay trades against it, and measure how much a market order of a given size would have moved the price at each moment. It is also the reference leg for most basis, lead-lag and prediction-market-settlement studies.

What moves BTCUSDT spot

  • US spot-ETF creations and redemptions, which show up as persistent one-way flow around the New York cash open
  • Macro prints (CPI, payrolls, FOMC) that reprice the dollar and real yields within seconds
  • Liquidation cascades on leveraged venues, which turn a 1% move into a 3% wick

Schema

BTCUSDT spot fields and sample rows

The same columns are returned by the API and in Parquet and CSV files.

FieldTypeDescription
ts_msint64Exchange event time, Unix milliseconds
symbolstringBinance symbol, here BTCUSDT
event_typestringtrade | depth_update
sidestringbuy / sell for trades (taker side); bid / ask for depth
pricenumberTrade price or book level in USDT
sizenumberBase-asset quantity; 0 on a depth update means the level was removed

Sample rows

ts_mssymbolevent_typesidepricesize
1792679412719BTCUSDTtradebuy67240.70.0325
1792679412991BTCUSDTtradesell67240.60.0445
1792679413232BTCUSDTdepth_updatebid67240.40.0196

Illustrative rows for BTCUSDT on Binance spot; prices are in USDT and shown for schema purposes, not as live quotes.

Code

Pull BTCUSDT spot in Python, cURL or MCP

Market id: BTCUSDT. Export AYMARDATA_API_KEY from your dashboard, then run the Python requests example.

import os
import requests

API = "https://api.aymardata.com/v1"
KEY = os.environ["AYMARDATA_API_KEY"]  # export AYMARDATA_API_KEY=ad_live_…
H = {"Authorization": f"Bearer {KEY}", "User-Agent": "aymardata-docs/1.0"}

# BTCUSDT spot: five minutes of trades
trades = requests.get(
    f"{API}/trades",
    headers=H,
    params={
        "source": "binance-spot",
        "market": "BTCUSDT",
        "start": "2026-10-22T14:30:00Z",
        "end": "2026-10-22T14:35:00Z",
        "limit": 500,
    },
    timeout=30,
).json()["data"]
buys = [t for t in trades if t["side"] == "buy"]
print(f"{len(buys)} of {len(trades)} BTCUSDT prints were taker buys")

book = requests.get(
    f"{API}/book",
    headers=H,
    params={
        "source": "binance-spot",
        "market": "BTCUSDT",
        "at": "2026-10-22T14:32:00Z",
        "depth": 10,
    },
    timeout=30,
).json()
print(book.get("spread"), len(trades))

FAQ

BTCUSDT spot: common questions

How granular is the BTCUSDT spot order book data?

Depth updates are recorded at the 100 ms stream cadence and every trade is stored with its exchange timestamp. At about 13,125 events a day for BTCUSDT, you can rebuild the book at any instant and replay trades against it.

What moves BTCUSDT on Binance spot?

Mainly US spot-ETF creations and redemptions, which show up as persistent one-way flow around the New York cash open, and macro prints (CPI, payrolls, FOMC) that reprice the dollar and real yields within seconds. BTCUSDT is the most active pair on the most active spot venue, so its tape is where microstructure research on Binance usually starts — every trade, plus 100 ms depth diffs down to the tick.

How much BTCUSDT spot data is there?

6.72M events since 2025-06-01, averaging 13,125 per day. Events carry the Binance exchange timestamp in milliseconds; trades record the taker side.

How does BTCUSDT spot compare with the BTCUSDT perpetual?

Spot is the cash reference; the perp adds mark price and funding. Joining the two on timestamp gives you basis and lead-lag — see the BTC perp page for the matching feed.

How do I pull BTCUSDT spot trades with the API?

Call GET /v1/trades with source=binance-spot and market=BTCUSDT plus start and end timestamps (Python requests examples on this page). Ready to run with your API key.

Backtest BTCUSDT spot with real tick data

Get an API key, pull your first window and join it with the other sources in the catalog.