hyperliquid.build
UTC

~/hyperliquid.build $ lab --dex xyz --sessions rth,ext,ovn,wknd --since 2026-06-16

Spread lies.
Depth tells the truth.

Execution-cost data for every HIP-3 market on the xyz deployer, measured from 20-level order-book snapshots taken every six minutes for 106 days and split by US trading session. Plus a field manual for the parts of the Hyperliquid API the docs leave vague.

markets · xyz
109
book snapshots
2.40M
coverage
106 d
last rebuild
02:22 UTC

$ book xyz:TSLA --levels 20 --render 3d # 48 snapshots · 21:24 → 02:17 UTC · replayed · price tags every 5 levels

The book, in relief. Five hours of it.

Left: the last five hours of TSLA's 20-level book, one real snapshot every six minutes, replayed as stepped price levels of resting dollars. Watch the size migrate between levels while the best bid and ask barely move. Right: 106 days of hour-of-week depth as terrain, Monday at the front, midnight ET on the left, with a sweep marking the hour.

order book · 20 levels per side · cumulative depth
bids ←→ asks
—
hour of week · depth ±25 bps · relief
Mon → Sun front to back · 0 → 23 ET left to right · sweep: —
depth surface · 48 snapshots × 40 levels · tsla
left half bids, right half asks, deepest levels at the edges · front to back 21:24 → 02:17 UTC · height = cumulative resting dollars, log · the valley is the mid · cursor: —
cost surface · 12 markets × 7 order sizes · rth
front to back: most traded first · left to right $1k → $250k · height = median slippage, bps · a missing bar means the visible book does not fill that size · cursor: —

$ lab top --by vol30d --limit 10 # medians per session · slip = $25k market order vs mid

Weekend spreads look fine. The book behind them is a quarter of the size.

On 54 of 109 markets the median weekend spread is as tight as US regular hours or tighter, while the dollars resting inside 25 bps of mid fall to a median of one in 4. Quoting is cheap when the underlying is closed; resting size is not.

marketvol 30dspread rthdepth ±25bps rthdepth wkndslip 25k rthslip 25k wkndfills wkndfunding apr
CLcommodity$231.6M0.33$1.4M$242k0.741.1699%-49.90%
XYZ100index$183.3M0.34$10.5M$3.2M0.200.36100%+4.46%
SP500index$180.4M0.13$3.5M$1.1M0.130.45100%+3.07%
SKHXequity$173.5M0.91$1.7M$1.2M1.611.81100%+17.38%
BRENTOILcommodity$132.6M0.58$864k$188k0.831.4095%-55.87%
SNDKequity$103.7M0.78$3.7M$1.4M1.051.24100%+4.21%
SILVERcommodity$97.2M0.17$1.4M$281k0.740.99100%+8.63%
MUequity$78.4M0.86$1.3M$395k0.861.34100%+7.16%
SPCXequity$67.7M0.74$4.4M$1.5M0.971.43100%+1.94%
GOLDcommodity$56.6M0.24$2.2M$740k0.340.34100%+7.62%

spread and slip in bps · depth = USD resting within 25 bps of mid, both sides · funding = 30-day mean of hourly rates, annualised; positive means longs pay · all 109 markets →

$ ls -la ./ # what is inside

liquidity lab

One page per market

Median and p90 spread, top-of-book size, depth inside 10/25/50 bps, slippage curves from $1k to $250k, an hour-of-week heat map, a weekly trend, and a cost calculator that adds taker fee and 30-day funding.

▆▆██▃▆█▄▇▆▇▁▁▄▃▄TSLA spread · 16 wk
→ /lab/xyz/TSLA/
handbook

Field notes, not docs

Rate limits as they behave in practice, the 15-user WebSocket cap, the HIP-3 fee formula with growth mode, two-sided open interest. Each note says what we observed, when, and what we changed.

→ man hyperliquid-rate-limits
data

Static JSON, no key

Every number on the site is a file under /data/xyz/, rebuilt daily from our own collector, CORS open, free with attribution. Fetch it from a Worker, a notebook or a bot; link to us rather than mirroring.

→ curl /data/xyz/TSLA.json

$ man -k hyperliquid # section 7: conventions and behaviour

Handbook

  • data-semantics-open-interest-and-l2book(7)openInterest is the sum of both sides, l2Book shows 20 levels per side, most large resting orders sit outside them, delisted assets stay in meta, and other field semantics we had to learn by measuring.2026-09-30
  • hip3-fees-growth-mode-funding(7)The taker-fee formula for HIP-3 markets, where to read growth mode and the deployer fee scale from the API, and a three-month replay showing funding at roughly thirty times the fee bill.2026-09-30
  • hyperliquid-rate-limits-in-practice(7)Per-IP limits, which /info calls are heavy, what a 429 storm looks like from the inside, and the pacing rules that stopped us punching holes in our own data.2026-09-30
  • websocket-15-user-cap(7)Address-based WebSocket subscriptions on Hyperliquid stop at 15 distinct users per IP. The API tells you once, on the error channel, and keeps the socket open. Here is how we found it and what we do instead.2026-09-30

$ ls -la /data/xyz/ | head

Open data

Rebuilt once a day after the collector rolls its files. Free with attribution; no bulk redistribution; rate-limited per IP. data terms.

-r--r--r--  1 build  build   42K  2026-10-01 02:22  index.json      ← all markets, headline metrics
-r--r--r--  1 build  build   16K  2026-10-01 02:22  CL.json      sessions · hour_of_week · weekly · daily
-r--r--r--  1 build  build   16K  2026-10-01 02:22  XYZ100.json
-r--r--r--  1 build  build   16K  2026-10-01 02:22  SP500.json
-r--r--r--  1 build  build   16K  2026-10-01 02:22  SKHX.json
…109 files · access-control-allow-origin: * · cache-control: max-age=3600
 rebuild scheduled 00:40 UTC · next in —

$ cat FAQ

What is hyperliquid.build?

An independent site for people building bots, strategies, front ends or analytics on Hyperliquid. It publishes execution-cost measurements for HIP-3 markets (the Liquidity Lab) and short field notes on API behaviour (the Handbook). It is not affiliated with Hyperliquid Labs or any deployer.

Where does the liquidity data come from?

From our own collector, which has polled the public Hyperliquid l2Book endpoint for every xyz market roughly every six minutes since 2026-06-16, storing 20 price levels per side. The Lab is rebuilt daily from 106 days of those snapshots plus the assetCtxs, funding and meta endpoints.

How is slippage calculated?

For each snapshot we simulate a market order of a fixed dollar size (from $1k to $250k) walking the visible book from the best price outward, and record the average fill price versus the mid in basis points. We report the median and 90th percentile per session, and the share of snapshots in which the size fills at all inside the 20 visible levels.

What do the sessions mean for a market that trades 24/7?

HIP-3 stock, index and commodity perps trade around the clock, but the underlying markets do not. We bucket every snapshot by New York time: regular hours 9:30–16:00, extended hours 4:00–9:30 and 16:00–20:00, overnight 20:00–4:00, and weekend from Friday 20:00 to Monday 4:00 plus NYSE holidays. Liquidity differs sharply across these buckets.

How often is the site updated and can I use the data?

The Lab is rebuilt once a day. Every metric is published as static JSON under /data/xyz/ and is free to use with a link back to hyperliquid.build; mirroring or reselling the dataset as a whole is not allowed, and requests are rate-limited per IP. Handbook notes are updated when we learn something new; each note carries its last-updated date.