Robinhood Chain is now live on Chainstack! Deploy reliable nodes for tokenized stocks today.    Start building
  • Agents
  • Pricing

How to get a Hyperliquid RPC endpoint for market making and HFT (2026 guide)

Created Jul 28, 2026 Updated Jul 28, 2026
Hyperliquid Endpoint Mm logo

TL;DR

A market-making loop that quotes both sides of a Hyperliquid book will silently hit the public HyperEVM endpoint’s ~100-requests-per-minute IP cap within seconds, and from that point your quotes go stale while the book moves against you. The cause is Hyperliquid’s split design: the same node serves both HyperEVM (chain ID 999) and a read-only slice of the HyperCore order-book engine, but the public tier is rate-limited for casual use, not for an HFT quoting cadence. This guide shows how to get a private Hyperliquid RPC endpoint that survives market-making and high-frequency workloads.

What is a Hyperliquid RPC endpoint

A Hyperliquid RPC endpoint is the connection your code uses to read state and submit transactions across Hyperliquid’s two coupled layers. HyperEVM speaks standard Ethereum JSON-RPC over HTTPS and WebSocket, so calls like eth_call, eth_getLogs, and eth_sendRawTransaction work as an EVM developer expects. HyperCore — the native, gas-free order-book engine that settles perps and spot in roughly 0.2 seconds — is reached through Hyperliquid’s /info query API and, for live trading, the /exchange API. A production endpoint usually fronts both: HyperEVM JSON-RPC plus the read-only /info methods of HyperCore.

On Hyperliquid, the endpoint is what a trading system leans on for:

  • Live L2 order book snapshots and best bid/ask reads from HyperCore via /info
  • Open positions, fills, funding, and margin state for a given address
  • HyperEVM contract reads (eth_call) and event scans (eth_getLogs) for on-chain DeFi
  • Broadcasting HyperEVM transactions with eth_sendRawTransaction
  • WebSocket subscriptions for streaming book and fill updates

You can review the full list of supported methods and their behavior in the Hyperliquid JSON-RPC developer documentation.

For market making and HFT, endpoint quality is not a nicety; it is P&L. Every millisecond of round-trip latency on a book read shows up as worse fills, and the moment a shared endpoint throttles your reads, you are quoting against information the rest of the market already has. That read-latency-plus-throttle exposure, sitting on top of the HyperCore/HyperEVM split, is the whole reason endpoint selection matters on this chain.

How Hyperliquid RPC differs from Ethereum RPC

HyperEVM is EVM-compatible, so the JSON-RPC surface is familiar — but several behaviors that a market maker relies on are different enough to break naive ports from Ethereum.

PropertyEthereumHyperliquid (HyperEVM + HyperCore)
Block modelSingle ~12s blocksDual-block: 1s small blocks (2M gas) + ~1/min big blocks (30M gas)
Gas tokenETHHYPE
ConsensusPoS (Gasper)HyperBFT, ~0.2s finality
Chain ID1999 mainnet / 998 testnet
Native order bookNone (DEX via contracts)HyperCore L1 order book, readable via /info and EVM precompiles
Historical stateWidely available on archive nodesDefault RPC serves only the latest block for several state reads
Fee methodsReal priority-fee dataeth_maxPriorityFeePerGas returns 0; eth_syncing returns false

These differences change provider selection in two concrete ways. First, the dual-block architecture means a market maker’s time-sensitive transactions live on the 1-second small blocks — so you need a provider whose small-block propagation is fast and reliable, not one tuned for generic throughput. Second, because the default HyperEVM RPC only answers state reads for the latest block, any strategy that backtests or reconstructs historical book context needs a provider that explicitly runs archive-capable infrastructure.

Hyperliquid RPC endpoint options

Public vs private Hyperliquid RPC endpoints

The public-versus-private decision on Hyperliquid comes down to one thing for an HFT desk: the public endpoint is rate-limited for exploration, and a real quoting loop is not exploration. The instant two strategies (or two users of your dApp) hammer the same IP, you are sharing one throttled bucket.

Official public endpoints:

  • Mainnet: https://rpc.hyperliquid.xyz/evm
  • Testnet: https://rpc.hyperliquid-testnet.xyz/evm

⚠️ The public HyperEVM endpoint enforces roughly 100 requests/minute per IP, and WebSocket access is capped at 100 connections / 1,000 subscriptions / 2,000 messages per minute. Critically, the /exchange trading endpoint is not served by third-party nodes at all — order placement and cancellation must route to Hyperliquid’s own API. The Hyperliquid HyperEVM documentation recommends professional infrastructure for anything beyond light development.

Public endpointPrivate endpoint
AccessFree and openRestricted access
ResourcesShared infrastructureDedicated resources
Best use caseDevelopment & testingProduction workloads
Rate limit~100 req/min per IPNo aggressive throttling
WebSocket limits100 conn / 2,000 msg/minHigh, dedicated limits
Historical readsLatest block onlyArchive-capable nodes available

For market making, the dominant constraint is read throughput at low latency: you are not placing the order through the RPC node, you are pulling book and fill state through it constantly, and a shared 100-req/min bucket cannot carry that. A private endpoint is what keeps your view of the book current.

For a detailed, perps-specific provider breakdown, see Chainstack’s comparison of the best Hyperliquid RPC providers for perps trading in 2026.

Full node vs archive Hyperliquid node

On Hyperliquid, “historical access” specifically means being able to read state and book context from blocks older than the latest one — something the default HyperEVM RPC deliberately does not serve.

Full node accessArchive node access
Live L2 book snapshots and current quotesBacktesting strategies against historical book state
Real-time position and fill monitoringReconstructing past funding and margin events
HyperEVM contract calls against latest blockHistorical eth_getLogs backfills for HyperEVM DeFi

Because HyperEVM’s default endpoint answers state reads only for the latest block, any quant workflow that replays historical conditions needs a provider running an archive node. If your market-making research stack backtests fills or reconstructs book depth over time, treat archive access as a hard requirement rather than an add-on — you can run that workload on Chainstack archive data.

HTTPS vs WebSockets

For a market maker, the question is not whether to use WebSockets — it is how much of your read path can move off request/response and onto a persistent stream before connection overhead at HFT cadence starts costing you fills.

FeatureHTTPSWebSocket
ModelRequest/responsePersistent connection
ComplexitySimple operationallyRequires reconnect/heartbeat logic
Best forOne-off position/margin reads, HyperEVM eth_call, transaction broadcastStreaming L2 book updates, live fills, and trade events
LatencyStandardLower for frequent updates
Connection overheadPer requestOne-time handshake

On Hyperliquid the public WebSocket tier is capped (100 connections, 2,000 messages/minute), so a streaming-heavy HFT setup will outgrow it quickly — a private endpoint with headroom is the practical path for live book and fill streams.

How to get a private Hyperliquid RPC endpoint with Chainstack

  1. Log in to the Chainstack console (or create an account)
  2. Create a new project
  3. Select Hyperliquid as your blockchain protocol
  4. Choose network: Hyperliquid Mainnet or Hyperliquid Testnet
  5. Deploy the node
  6. Open Access/Credentials and copy your HTTPS and WebSocket endpoints
  7. Run a quick connectivity check before wiring it into production code

You can deploy a private Hyperliquid node on Chainstack on shared Global Nodes for general read load, or on Dedicated Nodes when latency-critical trading bots need isolated resources. Once your endpoint is live, point the Hyperliquid SDK at it:

from hyperliquid.info import Info

# Point the Hyperliquid SDK at your private Chainstack HyperCore/HyperEVM node.
# skip_ws=True keeps it on HTTPS; set False to also open the WebSocket feed.
info = Info("YOUR_CHAINSTACK_ENDPOINT", skip_ws=True)

# Pull a live L2 order book snapshot - the read a market maker hits constantly.
book = info.l2_snapshot("BTC")
print(book["levels"])

📖 For the full integration guide, see the Chainstack Hyperliquid tooling documentation.

You can also access Chainstack Hyperliquid RPC directly from Claude, Cursor, Codex, Gemini, or Windsurf using Chainstack MCP. Learn more about Chainstack MCP.

HyperEVM (chain ID 999) can be added to wallets through Chainlist, but Chainlist is not an infrastructure provider: any URL it surfaces is a public, rate-limited endpoint you should swap for a managed one before production. It also never exposes HyperCore, so it cannot serve the order-book reads a market maker depends on.

Chainstack pricing for Hyperliquid RPC

Chainstack bills in request units rather than opaque compute units, which makes a market maker’s read budget straightforward to model: one API call is one request unit, with no per-method multipliers. See the full Chainstack pricing page for plan details and overage rates.

PlanCostRequests/MonthRPSOverage (per 1M extra)
Developer$03M RU25$20
Growth$4920M RU250$15
Pro$19980M RU400$12.50
Business$499200M RU600$10
Enterprise$990+400M+ RUUnlimited$5

Advanced options relevant to trading workloads:

  • Dedicated Nodes: from $0.50/hour compute (plus storage), for isolated, latency-tuned infrastructure
  • Archive add-on: archive reads consume 2 RU per request versus 1 RU for full-node reads
  • For low-latency transaction delivery on supported chains, Chainstack’s Trader Node routes through bloXroute for faster inclusion

How to estimate monthly cost

  1. Count the markets you quote and the reads each requires per cycle
  2. Multiply by your quoting frequency to get reads per minute
  3. Extrapolate to a monthly request-unit total
  4. Add headroom for WebSocket fan-out and HyperEVM contract calls
  5. Hyperliquid market-data load is bursty — a single volatility event can multiply your book-read rate, so size your RPS ceiling for the spike, not the average, or your quoting loop self-throttles exactly when spreads are widest

Production readiness checklist

  • Primary + fallback RPC provider configured
  • Request timeout policy set
  • Retry logic with exponential backoff implemented
  • Credentials stored in env/secret manager (never hardcoded)
  • Monitoring for latency, error rate, and throttling
  • Alerts for sustained degradation
  • Rate limiter in place so your quoting loop never self-throttles against the provider
  • Order execution wired directly to Hyperliquid’s /exchange API, separate from your read endpoint
  • Small-block confirmation latency benchmarked before going live on HyperEVM

Benchmark candidate endpoints against the Chainstack performance dashboard before committing capital.

Troubleshooting common Hyperliquid RPC issues

IssueHow to fix
429 Too Many Requests on book readsMove off the public IP-limited endpoint to a private one with dedicated RPS
WebSocket disconnects mid-sessionAdd reconnect + heartbeat logic and backfill missed book/fill events on resume
Order placement fails on your RPC node/exchange is not served by third-party nodes — route trading actions to api.hyperliquid.xyz directly
Historical state query returns latest-block data onlyUse an archive-capable node; the default HyperEVM RPC serves only the latest block for those reads
HyperEVM tx not landing in expected timeConfirm you are on 1-second small blocks; large transactions flagged for big blocks settle ~1/min
eth_maxPriorityFeePerGas returns 0Expected on HyperEVM — do not derive tips from it; use HYPE base-fee logic instead

Conclusion

The failure mode that bites Hyperliquid market makers is not a loud error — it is a 429 your quoting loop swallows while it keeps running on stale book data. Your spreads look fine in the logs, but you are quoting against a book the market has already moved, and the adverse fills only show up later in the P&L. It is hard to diagnose precisely because the strategy never crashed; the public endpoint just quietly stopped feeding it fresh state.

The pattern that works is simple and non-negotiable: pull all your reads through a private endpoint with dedicated RPS and WebSocket headroom, keep order execution on Hyperliquid’s /exchange API, and put a client-side rate limiter in front of both so a volatility burst never throttles you at the worst possible moment. Run reads on a dedicated node when latency is the constraint, and confirm archive access before any strategy that backtests against historical book state.

Spin up a free endpoint, then scale to dedicated infrastructure when your quoting cadence demands it.

FAQ

Do I need a separate endpoint for HyperCore and HyperEVM? Not necessarily — a production Hyperliquid endpoint typically fronts HyperEVM JSON-RPC plus the read-only /info methods of HyperCore from one node. But order execution is the exception: the /exchange API is not served by third-party RPC nodes, so trading actions always route to Hyperliquid’s own API regardless of which provider serves your reads.

Why isn’t the public Hyperliquid endpoint enough for a market-making bot? The public HyperEVM endpoint caps you at roughly 100 requests per minute per IP, with similarly tight WebSocket limits. A market maker quoting multiple books reads state far faster than that, so you hit the throttle within seconds and start operating on stale data — exactly the condition that produces adverse fills.

Which SDK should I use to connect to a Chainstack Hyperliquid endpoint? The official Hyperliquid Python SDK and the community TypeScript SDK both let you point an Info client at your endpoint; for HyperEVM contract work, standard EVM libraries like ethers.js and viem connect to the chain-ID-999 JSON-RPC like any other EVM chain.

How does the dual-block architecture affect my transactions? HyperEVM produces 1-second small blocks (2M gas) and ~1-per-minute big blocks (30M gas). Time-sensitive trading transactions belong on small blocks; only large transactions like contract deployments use big blocks. If a HyperEVM transaction is taking ~a minute to land, check whether it has been flagged for big blocks.

Can I backtest strategies against historical Hyperliquid book state? Only with an archive-capable node. The default HyperEVM RPC answers several state reads for the latest block only, so reconstructing historical book depth, funding, or margin events requires a provider that explicitly runs archive infrastructure.

What should I monitor on a Hyperliquid RPC endpoint for HFT? Track read latency (p99), throttling/429 rate, and WebSocket disconnect frequency above all — these are the metrics that directly translate into quote staleness and missed fills on this chain.

Additional resources

SHARE THIS ARTICLE
Customer Stories

ApeX Pro

Enhancing decentralized trading with StarkEx for secure, reliable, and autonomous DeFi transactions.

Gamerse

Securing stable platform and token performance on BNB Chain, while reinforcing it with cross-chain support.

Space and Time

Space and Time pioneers Proof of SQL technology at 8x friendlier rates with an Elastic Chainstack data profile for Enterprise.