Hyperliquid L2 Order Book Snapshots Data
Hyperliquid L2 order book data is HyperCore's book collapsed to price levels at one block height: every price on each side, the resting size, the order count.

An L2 order book snapshot on Hyperliquid is HyperCore's book for one market at one block height, collapsed to price levels. One record carries the block height, the block time, the market, and the bid and ask levels. Each level is a price, the total size across all orders resting at that price, and the number of orders making it up. Bids sort descending by price and asks ascending, so the first entry on each side is the best price on that side.
What one record represents
HyperCore keeps an order book for each asset as chain state, and orders match in price-time priority on a tick and lot grid. Every order, cancel, trade and liquidation is final in one block under HyperBFT, so at one block height there is exactly one book.
One record is one market at one block height: height, block_time, market, and the bids and asks arrays. Each level is px, the price; sz, the total size across all orders resting at that price; and n, the number of orders at that price. Bids sort descending by price, best bid first; asks ascending, best ask first.
Summary snapshots and full depth
The summary snapshot is the top 20 price levels on each side, captured every 20 blocks, and each file holds a JSON array of snapshots. That is the cap Hyperliquid’s own l2Book endpoint applies, which returns at most 20 levels per side. The summaries cover perpetual and builder-deployed markets, gzipped JSON in the sonarx-hyperliquid-public S3 bucket, released under CC0 1.0 Universal and read with your own AWS credentials. There is no signup, contract or API key; the docs page carries the layout and the CLI flags. Full L2 snapshots add spot and carry every aggregated price level in the book.
How L2 relates to the per-order book
An L2 level is the per-order book aggregated by price: one level per distinct price, sz the sum of the resting sizes, n the count of the resting orders. L4 order book snapshots keep the individual orders, each with its order id, price, size and owning address. Between snapshots, order book diffs carry every mutation to that per-order book, and order status updates carry every transition an order goes through. Executions against these levels are Hyperliquid fills.
Delivery
Available history is delivered as files to your own bucket. Fills, funding payments and position snapshots are also available as a Snowflake datashare and real time via Kafka Streaming, and they carry the same block height, so they join to a snapshot without a translation layer.
Hyperliquid fields SonarX indexes
| Hyperliquid field | What it is | SonarX indexes it |
|---|---|---|
height | the block height of the snapshot | ✓ |
block_time | the block timestamp | ✓ |
market | the market symbol, for example BTC; a builder-deployed perp carries the dex name as a prefix | ✓ |
bids | the bid side, sorted descending by price, best bid first | ✓ |
asks | the ask side, sorted ascending by price, best ask first | ✓ |
px | the price of the level | ✓ |
sz | the total size across all orders resting at that price | ✓ |
n | the number of orders at that price | ✓ |
Field definitions and mechanics: Hyperliquid's own documentation. Chain overview: indexed Hyperliquid blockchain data.
Frequently asked questions
What is an L2 order book snapshot on Hyperliquid?
An L2 order book snapshot is HyperCore's order book for one market, collapsed to price levels at one block height. HyperCore keeps an order book for each asset as chain state and matches in price-time priority, and every order, cancel, trade and liquidation is final in one block, so a block height is a complete coordinate for the book.
What does one L2 snapshot record represent?
One L2 snapshot record is one market at one block height. It carries the height, the block time, the market, and the bid and ask levels. Each level is a price, the total size across all orders at that price, and the number of orders at that price. Bids sort descending by price, best bid first; asks ascending, best ask first.
What is the difference between the summary snapshots and full-depth L2?
The difference is depth. The summary carries the top 20 price levels on each side for perpetual and builder-deployed markets, captured every 20 blocks and published as gzipped JSON in the sonarx-hyperliquid-public S3 bucket under the CC0 1.0 Universal license, read with your own AWS credentials. There is no signup, contract or API key. Full L2 snapshots share that schema, add spot, and carry every aggregated price level in the book, not just the top 20.
What does the n field mean in a Hyperliquid L2 level?
The number of orders at that level. Hyperliquid's WebSocket subscriptions page defines an L2 level as three fields: px for price, sz for size, and n for the number of orders. The published field semantics read n the same way, as the number of individual orders at that price.
How do L2 snapshots relate to L4 snapshots?
An L2 level is the per-order book aggregated by price: one level per distinct price, sz the sum of the resting sizes, n the count of the resting orders. An L4 snapshot keeps the individual orders instead, each with its order id, price, size and the address it belongs to. L2 answers how much depth sits at a price; L4 answers who is resting there.
Which Hyperliquid markets do the snapshots cover?
Full L2 snapshots cover perpetual, spot and builder-deployed markets; the public summaries cover perpetual and builder-deployed markets. Market names follow HyperCore's own naming: a perp is the symbol returned in the meta response, a spot pair is PURR/USDC or an at sign followed by the pair index, and a HIP-3 builder-deployed perp always carries the dex name as a prefix, in the format dex colon coin.
Get started
Query Hyperliquid l2 order book snapshots data
Tell us the delivery target and the history depth you need, and we scope the Hyperliquid share against it.
Other Hyperliquid datasets

Hyperliquid L4 Order Book Snapshots Data
Hyperliquid L4 order book data is the whole HyperCore book at one block height as individual resting orders: each order's id, price, size and owning address.

Hyperliquid Order Book Diffs Data
Hyperliquid order book diffs carry every mutation to HyperCore's per-order book, one block at a time: a new resting order, a resize, or a removal.

Hyperliquid Order Status Updates Data
Hyperliquid order status data records every transition an order goes through on HyperCore, from placement to fill, cancel or reject, with the full order object.

Hyperliquid Fills Data
Trades executed on HyperCore, per user and per market: price, size, side, direction, the position before the fill, realised PnL on the closed part, and fees.