What Are L2 Summary Snapshots?
L2 summary snapshots provide a compact view of the top 20 price levels on each side of the order book, captured every 20 blocks. Each snapshot includes:- Price (
px) — the aggregated price level - Size (
sz) — total size across all orders at that level - Order count (
n) — number of individual orders at that level - Block height and timestamp — exact on-chain reference point
Sample Data
Each file contains a JSON array of snapshots. Here is a truncated example from thehyna:BTC market:
How to Access the Data
The snapshots are stored as gzipped JSON in thesonarx-hyperliquid-public S3 bucket (requester-pays).
Bucket Path
Example: Download a File
The bucket is requester-pays, so you must include
--request-payer when using the AWS CLI. Standard S3 data transfer costs apply to the requester.Refresh Cadence
Data is loaded to the public bucket weekly with a two-day lag. For example, a Saturday load will include everything through Thursday.Market Coverage
The public snapshots currently cover HIP-3 perpetual DEX markets on Hyperliquid. These are the decentralized perpetual futures markets launched through Hyperliquid’s HIP-3 framework. Coverage for standard perps and spot markets will follow.Full-Depth L2 and L4 Order Books (Available for Purchase)
Need more than the top 20 levels? SonarX produces full-depth L2 and L4 order book data for all Hyperliquid markets, available for purchase.Full L2 Snapshots
Every aggregated price level in the book — not limited to the top 20. See complete market depth across all bids and asks.
L4 Snapshots
Individual order-level data including order IDs, sides, prices, sizes, and user addresses. The most granular view of the order book available.
Full L2 Snapshot Format
Full L2 snapshots share the same schema as the public L2 summaries but include every aggregated price level in the book, not just the top 20. Each level aggregates all individual orders at that price.| Field | Description |
|---|---|
height | Block height at time of snapshot |
block_time | Block timestamp |
market | Market symbol |
bids[].px | Aggregated bid price level |
bids[].sz | Total size across all orders at that bid price |
bids[].n | Number of individual orders at that bid price |
asks[].px | Aggregated ask price level |
asks[].sz | Total size across all orders at that ask price |
asks[].n | Number of individual orders at that ask price |
L4 Snapshot Format
L4 snapshots contain every individual order in the book — the most granular view available. Each order includes its unique order ID, the trader’s address, side, price, and size.| Field | Description |
|---|---|
height | Block height at time of snapshot |
block_time | Block timestamp |
market | Market symbol |
order_count | Total number of individual orders in the book |
bids[].oid | Unique order ID |
bids[].px | Order price |
bids[].sz | Order size |
bids[].user | Trader address |
asks[].oid | Unique order ID |
asks[].px | Order price |
asks[].sz | Order size |
asks[].user | Trader address |
Comparison: L2 Summary vs Full L2 vs L4
L2 Summary (Public)
- Depth: Top 20 levels per side
- Granularity: Aggregated by price
- User address: No
- Order count: Yes
- Freshness: Weekly with two-day lag
- Use cases: Market overview, spreads, top-of-book analysis
- Availability: Free (public S3, CC0 1.0)
Full L2
- Depth: All price levels
- Granularity: Aggregated by price
- User address: No
- Order count: Yes
- Freshness: Near real-time via file delivery; also available via streaming
- Use cases: Full depth analysis, liquidity profiling, slippage modeling
- Availability: Available for purchase
L4
- Depth: Every individual order
- Granularity: Per-order with order IDs
- User address: Yes
- Order count: N/A (one row per order)
- Freshness: Near real-time via file delivery; also available via streaming
- Use cases: Order flow analysis, market microstructure research, trader behavior
- Availability: Available for purchase