Kraken Order Book Dataset

Kraken Historical Orderbook Data

Kraken spot and derivatives order book updates packaged as hourly files for replay and market microstructure analysis.

Coverage

Orderbook coverage

Coverage is organized by exchange, market type, and hourly object path. Live symbol counts are shown when the symbols API responds during page generation.

VenueExchange IDMarketHistory startOrderbook symbols
Kraken Futureskraken_derivativesFutures2025-06-28557
Kraken Spotkraken_spotSpot2025-06-281,588

Schema

Normalized orderbook schema

Every orderbook row represents a bid or ask price-level event with exchange timing, sequence fields when available, price, quantity, and event type.

FieldTypeNullableDescription
received_timeINT64NoUnix timestamp (nanoseconds) when our system received the event
event_timeINT64NoUnix timestamp (exchange dependent on timescale) when the exchange generated the event
transaction_timeINT64YesExchange-specific transaction timestamp (when available)
symbolSTRINGNoTrading pair symbol (e.g., "BTCUSDT")
event_typeSTRINGNoType of orderbook event ("snapshot" or "update")
first_update_idINT64YesFirst update ID in the update sequence
final_update_idINT64YesFinal update ID in the update sequence
prev_final_update_idINT64YesPrevious final update ID (for gap detection)
last_update_idINT64YesLast update ID processed by the exchange
sideSTRINGNoOrder book side ("bid" or "ask")
priceSTRINGNoPrice level (stored as string for precision)
quantitySTRINGNoQuantity at price level (stored as string for precision)
order_countINT64YesNumber of orders at this price level (when available from exchange)

Access

Download with Python or REST

The sample below downloads BTC_USD from Kraken Spot for 2025-08-01, hour 20.

Python SDK
import cryptohftdata as chd

client = chd.CryptoHFTDataClient(api_key="your-api-key-here")

df = client.get_orderbook(
    symbol="BTC_USD",
    exchange=chd.exchanges.KRAKEN_SPOT,
    start_date="2025-08-01",
    end_date="2025-08-01",
)

print(df.head())
print(f"Orderbook updates: {len(df):,}")
REST API
curl "https://api.cryptohftdata.com/download?file=kraken_spot/2025-08-01/20/BTC_USD_orderbook.parquet.zst&api_key=your-api-key-here" \
  -o BTC_USD_orderbook_20.parquet.zst

Caveats

What this data is and is not

These details are important for accurate backtests, replay pipelines, and microstructure features.

L2 order book data is aggregated by price level, not individual L3 orders.

Files contain snapshots plus incremental updates, so full book state requires replaying events in sequence.

This page starts on 2025-06-28 based on the earliest stored orderbook files for its covered exchange IDs and grows as new hourly files are published.

Next

Use the orderbook data

Start with an API key, then move between docs, tutorials, and the browser data explorer as needed.