▌tickfoundry
capture live中文sign inget the data →
§hyperliquid

Hyperliquid historical tick data.
Every book change and every fill, for every coin, since January 2025.

Hyperliquid's order books, rebuilt from the chain's own order-event stream rather than sampled from a websocket: top of book on every change, the 25-level book on every change with resting-order counts per level, and every fill with the taker's wallet, fee and realized PnL.

Most Hyperliquid order-book datasets are snapshots, taken every few seconds or once a minute. This one has a row for every block in which the book changed, and blocks land about every 70 ms.

895 coins — every perp, spot pair and HIP-3 market the venue has listed, 641 days from 2025-01-25, 6.8 TB of parquet. Sold per day with a coin filter.

pull the free sample day →schemahow to backtestpricing

What is on disk today

641 days, 2025-01-25 → 2026-10-27, 6.8 TB across three tables and 235 perpetuals, 346 spot, 314 hip-3 (builder dexes). New days are added daily.

Top of book (every change)hl_l1

Best bid and ask with sizes and the spread, one row per block in which the top of book changed, replayed from the chain's own order events — not sampled from a websocket. No consecutive duplicates.

~1.0 GB · all coins · 641 days · 437 GB on disk
Order book — 25 levels, every changehl_l2

The 25-level book on both sides — price, size and the number of resting orders at each level — one row per block in which any of it changed. Wide columns (bid_px_1 … ask_n_25), unused levels null. This is the table the venue's own websocket cannot give you: Hyperliquid pushes l2Book snapshots only, throttled to seconds.

~16 GB · all coins · 641 days · 6.2 TB on disk
Trades (fills)hl_trades

Every fill the chain executed: price, size, taker side, order id, the taker's wallet, fee and fee token, closed PnL and start position, and the settlement transaction hash. From 2025-03-22 straight from the node's fills tape; before that synthesized from the taker's own fill status (see caveats).

~350 MB · all coins · 640 days · 122 GB on disk

Why replay the chain instead of recording the websocket

Hyperliquid's public websocket pushes l2Book as a snapshot, throttled to a few seconds, and has no delta channel. A recording of it is a series of photographs — you can see the book at 12:00:05 and 12:00:10 but not the forty blocks in between, and every fill that crossed the spread inside that window is invisible in the book. The chain, by contrast, publishes every order event it executed. Replaying those events reproduces the book after every block, which is the finest resolution the venue itself has.

It also reaches back further than any recording: the archive starts 2025-01-25, so the history exists for coins and months nobody was recording at the time. And because the fills tape carries the taker's wallet, order id, fee and realized PnL, the trades table supports flow analysis a price/size tape cannot.

The honest cost is that a reconstruction can drift from what the matching engine held, so every coin-day carries a scorecard against the venue's own published snapshots, and the caveats below say where it is weaker (synthesized fills before 2025-03-22, unseeded spot books on the first day).

≈ $10,000 to build yourself

Building this yourself — pulling the chain's order-event archive out of requester-pays S3 and replaying it into books — runs to around $10,000 in egress and compute. A month of a plan is a rounding error on that.

Coins

Every coin the venue has listed since 2025-01-25, with its first day on disk; each has its own page with coverage and sizes. Perps are named the venue's way (BTC, kPEPE), spot pairs by their token pair (HYPE/USDC; the venue's own id is @107), HIP-3 markets as dex:coin (xyz:CL, km:GOLD).

What you should know before buying

  • One row per block, not per message. Blocks land about every 70 ms; l1 and l2 have a row for every block in which they changed, trades one row per fill. msg_seq is the block height.
  • A day is block-aligned, not midnight-aligned. Each day runs from a few minutes after 00:00 UTC to a few minutes after the next midnight; filter on ts_src_ms for strict UTC days.
  • Fills before 2025-03-22 are synthesized. No fills tape exists upstream before 2025-03-22, so taker fills in that era are derived from each taker order's own filled size and average price against the resting book (source_event_type = l3_taker_status). price, size, side, oid and user are set; transaction_hash, tid, dir, fee, fee_token, closed_pnl and start_position are null. Resting orders that expired or were cancelled without an event can linger in the book until the order-id-gap inference catches them.
  • Spot books start unseeded. The archive has no snapshot before its first day, so resting spot depth is thinner than steady state for the first day or two.
  • A 2,419-block hole on 2025-06-21 (about 09:21–09:31 UTC). Heights 636551018–636553439 are absent from Hyperliquid's own archive (a truncated source object), during a period when the chain was also producing blocks slowly. Every coin is affected for that interval; nothing else that day.
  • A 3,655-block hole on 2025-06-28 (about 03:39–03:44 UTC). Heights 644034549–644038203 are absent from Hyperliquid's own archive (a truncated source object). Every coin is affected for that interval; nothing else that day.
  • A 924-block hole on 2025-07-19 (about 23:06–23:07 UTC). Heights 668379075 onward, the last minutes of one source object: the object is truncated in Hyperliquid's own bucket. Every coin is affected for that interval; nothing else that day.
  • Book frozen for ~13 minutes on 2025-09-26 and again on 2025-09-27. Heights 743030000–743039999 (2025-09-26 07:19–07:32 UTC) and 743800000–743809999 (2025-09-27 00:20–00:33 UTC): one source object each contributed no order events to our replay although every block is present and the fills tape shows trading throughout. hl_l1 and hl_l2 carry a stale book for those windows on every coin, and the book after each window is reconciled from the venue's next snapshot. hl_trades is complete. Under investigation; the days will be rebuilt if the source objects can be recovered.
  • One block missing on 2026-07-25. A single block near height 1085381400 (about 07:36 UTC) is absent from the source archive. No visible effect on the top of book.
  • Placeholder rows. A coin listed on the venue but with no book that day ships as one all-null row and an empty trades file, so the coin set is the venue's listing.

The Polymarket side of the catalog shares the same delivery path and the same block-time convention on its on-chain fills, so a Hyperliquid perp and the Polymarket market that references it can be lined up on a common UTC clock with an as-of join.

Pricing

Hyperliquid has the same plans as the other venues: Starter (one coin of your choice with the full book, every other coin at top of book and trades), L10 (every coin, the book at 10 levels) and L25 (every coin, the full 25-level book). 7 days of history before you join and every day after; earlier months are backfill at the plan's own monthly rate, and a yearly plan includes the archive. Polymarket (with its perps) and Kalshi are subscriptions of their own, adding up alongside it; for Polymarket perps alone, add them to the Hyperliquid plan for $29/mo.

Free

2026-08-12, any coins, up to 1.0 GB, full fidelity. Costs no claims.

Starter · Hyperliquid

$29/mo · one coin with the full book, every coin at top of book and trades · the Lab · backfill $8 a month for your coin.

L10 · Hyperliquid

$49/mo · every coin, the book at 10 levels, perps and spot · REST API · backfill $49 a month, 12 for $400 · yearly includes the last 12 months.

L25 · Hyperliquid

$99/mo · every coin, the full 25-level book, perps and spot · REST API (600 req/min), SFTP · backfill $99 a month, 12 for $800 · yearly includes the last 12 months.

start L25 for Hyperliquid →start L10 for Hyperliquidstart Starter for Hyperliquidbrowse the catalog

Questions

Where does Hyperliquid historical order-book data come from?

From the chain itself. Hyperliquid publishes its complete order-event stream (replica_cmds: every order placement, modify, cancel and fill the chain executed) and its fills tape. We replay that stream block by block into a top-of-book table, a 25-level book table and a trades table per coin per day. Nothing is sampled from a websocket: the venue's own l2Book feed is snapshot-only and throttled to seconds, which is exactly why a websocket recording cannot give you every book change.

How far back does it go?

2025-01-25, the first day of the chain's public archive, for every coin listed then; each coin's own first day is shown on its page and returned by the API. Spot pairs and HIP-3 builder dexes are chained from their real launch days (xyz 2025-10-13, km 2026-01-12, para 2026-04-01 and so on). New days are added daily.

Is the L2 book full depth?

25 levels a side in the full book: price, size and the number of resting orders at each level, as wide columns (bid_px_1 … ask_n_25), one row per block in which anything in those 25 levels changed. L25 carries all 25 levels on every coin; L10 carries the first 10 levels a side on every coin; Starter carries all 25 on one coin of your choice and top of book plus trades on the rest.

How good is the reconstruction?

Every coin-day ships its own scorecard: the share of Hyperliquid's own published book snapshots (roughly every 5 seconds) whose best bid, best ask, top-5 and top-20 levels our replayed book matched exactly at that instant. On BTC for 2026-09-10 the top-of-book price agreement was 99.6% across 16,051 snapshots, and the caveats section says where the numbers are weaker and why.

How is it sold?

Per day with a coin filter — pick a range, the tables you want and the coins you want, and the bundle keeps a table-first tree so one read_parquet reads a whole table. Included with a plan bought for Hyperliquid: Starter ($29/mo, one coin's full book plus top of book and trades on every coin), L10 ($49/mo, every coin's book at 10 levels) or L25 ($99/mo, every coin's full 25-level book); its own subscription, so it adds up with a Polymarket or Kalshi plan; and any free account can pull the fixed sample day (2026-08-12, any coins, up to 1.0 GB) without spending a claim.

What format does it arrive in?

Parquet, one file per table per coin per day, a per-coin quality JSON, and a README that states the schemas and the coverage caveats for your exact range. Delivery is a signed download link or the REST API.

For crypto perps across venues, see perps tick data; for the price feeds and Polymarket's crypto markets, see crypto tick data.