Skip to content
datastore.sh

Comparison

datastore.sh vs Hyperliquid's API and S3 archives

Exchange-published data · reviewed November 2026

Short answer

Hyperliquid publishes historical data itself: an Info API with per-request result caps, and requester-pays S3 buckets of order book snapshots, asset contexts, fills, and node data, with the archive updated roughly monthly and no completeness guarantee. datastore.sh delivers Hyperliquid historical data as nine typed Parquet tables, including swaps, funding, and order book snapshots, with coverage documented per table.

Key facts

  • Hyperliquid's userFillsByTime endpoint returns at most 2,000 fills per response, and only the 10,000 most recent fills for an address are available.
  • Hyperliquid's hyperliquid-archive S3 bucket is updated approximately once a month, and Hyperliquid states there is no guarantee of timely updates and data may be missing.
  • Both Hyperliquid S3 buckets, hyperliquid-archive and hl-mainnet-node-data, are requester-pays: whoever downloads pays the AWS transfer cost.
  • The datastore.sh Hyperliquid dataset has 9 tables covering Jul 2025 to Jul 2026, including swaps, funding, ledger updates, and L2 order book snapshots.

What Hyperliquid's API and S3 archives is

Hyperliquid documents two routes to its history. The Info API serves market and user data on request, with documented caps: userFillsByTime returns at most 2,000 fills per response, and only the 10,000 most recent fills for an address. On S3, the hyperliquid-archive bucket holds L2 book snapshots and asset contexts, and hl-mainnet-node-data holds fills, explorer blocks, L1 transactions, and non-trade events such as transfers, staking, and funding.

Both routes are open, and neither is a finished dataset. The buckets are requester-pays, the archive is uploaded approximately monthly with no guarantee of timely updates, and candles and spot data are not included. Hyperliquid's own suggestion for other data sets is to record them from the API yourself. Turning node output into analysis tables, aligned by market and time, is work left to whoever downloads it.

How the two products differ

The comparison is between product models rather than feature lists. Prices, rate limits, and chain counts change without notice, so none are quoted here.

datastore.sh compared with Hyperliquid's API and S3 archives across delivery, cost, and schema dimensions
Dimensiondatastore.shHyperliquid's API and S3 archives
What you receivePartitioned Parquet files with typed schemas, manifests, and checksumsRequester-pays S3 objects and capped API responses
Access costPer dataset and coverage window, priced before purchaseFree API calls; S3 transfer billed to the requester
FormatTyped Parquet tables with documented schemasArchive and node files in their native formats
Update guaranteeCoverage documented per table before purchaseArchive uploaded about monthly, with no guarantee and possible gaps
A wallet's trade historyEvery fill in the coverage window, in the swaps tableAPI returns only the 10,000 most recent fills per address
Funding historyA funding table, joinable by market and timeRecorded from the API, or parsed out of node events
CandlesNot a separate table; derivable from fills in the swaps tableNot provided on S3; recorded from the API yourself
Live dataOutside scope: the catalog covers historical dataAPI and WebSocket in real time
Best fitBacktests and research over fills, funding, and ledger historyLive trading, recent lookups, and building your own archive

When Hyperliquid's API and S3 archives is the better choice

  • You are trading live and need current state, order books, and fills over WebSocket.
  • You only need recent history for a few addresses, within the API's caps.
  • You want to run your own pipeline from node data and are prepared to maintain it.

When datastore.sh is the better choice

  • You need a wallet's fill history beyond its most recent 10,000 fills.
  • You want funding, fills, ledger updates, and validator activity as joinable tables, not raw archive objects.
  • A backtest needs coverage you can check before you start, not a monthly upload that may have gaps.
  • Nobody on the team wants to own parsing of node output formats.

Using both together

Teams trading on Hyperliquid keep the API and WebSocket for execution and live state, and use Parquet history for research. The official archive stays useful for spot checks, because the delivered tables keep Hyperliquid's native identifiers and can be traced back to the source records.

Related reading

Frequently asked questions

What is the difference between datastore.sh and Hyperliquid's own historical data?

Hyperliquid publishes historical data itself: an Info API with per-request result caps, and requester-pays S3 buckets of order book snapshots, asset contexts, fills, and node data, with the archive updated roughly monthly and no completeness guarantee. datastore.sh delivers Hyperliquid historical data as nine typed Parquet tables, including swaps, funding, and order book snapshots, with coverage documented per table.

Is Hyperliquid historical data free?

The API is free to call and the S3 buckets are public, but requester-pays, so whoever downloads pays the AWS transfer cost. The larger cost is engineering. Archive objects arrive in native formats, updated about monthly with no completeness guarantee, so parsing, normalization, and gap checks fall to the person downloading them.

Can I get a wallet's complete Hyperliquid trade history from the API?

Not past a point. Hyperliquid documents userFillsByTime as returning at most 2,000 fills per response, and only the 10,000 most recent fills for an address. Older fills exist in the node data on S3, and as rows in the datastore.sh swaps table within its coverage window.

Does Hyperliquid's S3 archive include candles?

No. Hyperliquid's documentation states that no other historical data sets, such as candles or spot asset data, are provided through S3, and suggests recording them from the API. Candles can be rebuilt from fills, which the datastore.sh swaps table carries for its full coverage window.

What does the datastore.sh Hyperliquid dataset include?

Nine tables: swaps, funding, L2 order book snapshots, ledger updates, validator rewards, delegations, gossip auctions, deposits, and withdrawals. Coverage is documented per table, because order book snapshots span a shorter window than trades and funding. A free 100-row sample is published for every table.

Sources

Vendor descriptions on this page follow each vendor's own public pages, checked November 2026. Product names identify categories and indicate neither partnership nor endorsement.

Start with the data

Skip the indexing project. Run the query.

Browse documented datasets or send the exact protocol, tables, and historical coverage your team needs.