How Hyperliquid works

From the dollar that arrives to the order that fills, and back out again. What is signed, what the chain checks twice, and what an API wallet may and may not do.

Last updated: Oct 5, 2026

The chain of steps

Six steps separate a dollar on another chain from a position on Hyperliquid.

  1. USDC reaches HyperCore. It is natively minted on the Hyperliquid L1, and Circle's Cross-Chain Transfer Protocol moves it over from Arbitrum.
  2. It is credited to your address. Deposits are credited first to that address's cross margin balance, in the perpetuals clearinghouse.
  3. You sign an order. A market, a side, a size, a price and a leverage, signed by the account's key or by an API wallet it approved.
  4. The order joins the book of that asset, at a price that is a multiple of the tick size, and is matched in price-time priority.
  5. The fill changes your position in the clearinghouse, and funding settles every hour for as long as the position stays open.
  6. A withdrawal is a signature on Hyperliquid alone: the validators sign and send the request to the bridge contract.

Getting dollars in

USDC is natively minted on the Hyperliquid L1, and the route from Arbitrum is Circle's own protocol, which Circle documents. The older Arbitrum bridge is deprecated: the documentation says it now holds less than 10% of the USDC supply on HyperCore.

The legacy bridge's mechanics are worth knowing, because most guides still describe them. USDC sent to it is credited to the address that sent it in less than a minute, the minimum deposit is 5 USDC, and the documentation states plainly that a smaller amount is not credited and is lost forever.

What arrives lands in the cross margin balance, where it backs every position opened in that mode. A position opens in cross margin by default; isolated margin is a choice you make per position.

An order on the book

The order book works essentially as a centralized exchange's does, and it is fully onchain. A price must be an integer multiple of the tick size and a size an integer multiple of the lot size, and orders match in price-time priority.

Margin is checked twice. It is checked when a new order is opened, and again for the resting side at the matching of each order, so that the margining system stays consistent even though the oracle price moved after the resting order was placed.

The chain itself knows what an order is. Within a block, actions are sorted into three groups: first those that send no GTC or IOC order to any book, then cancels, then those that send at least one GTC or IOC order, each group keeping the order the block proposer gave it. A block usually holds one or two consensus batches of actions.

How fast it answers

End to end, measured from sending a request to receiving a committed response, the documentation gives a median of 0.2 seconds and 0.9 seconds at the 99th percentile, for an order placed from a geographically co-located client. Mainnet supports about 200,000 orders a second, and the documentation says the bottleneck is execution rather than consensus.

Two consequences for anything automated. A decision is confirmed in well under a second, so a program need not guess whether its order arrived; and a program far from an API server is bound by its own network before it is bound by the chain.

Signatures, API wallets and nonces

Every action is signed. Beside the account's own key, a master account can approve API wallets, which the documentation also calls agent wallets, to sign for the account or for its sub-accounts. An account can hold one unnamed approved wallet and up to three named ones, with two more named agents per sub-account, and an expiry set with valid_until can be at most 180 days ahead.

An API wallet signs, and does nothing else. Account data is queried with the real address of the account, and the documentation names querying the agent address a common pitfall: it returns an empty result, not an error.

Nonces are not Ethereum's, because an order book cannot wait for one transaction at a time. Hyperliquid keeps the 100 highest nonces per signer; a new action must carry a nonce above the smallest of that set and never used before, and within two days before and one day after the timestamp of its block.

Never reuse an agent address

An API wallet's nonce state can be pruned: when it is deregistered by the approval of a new one, when it expires, or when the account that registered it runs out of funds. The documentation warns that previously signed actions can then be replayed. Generate a new API wallet instead of reviving an old address.

Getting dollars out

A withdrawal starts with a signature on Hyperliquid and needs no transaction of yours on the other chain: the validators sign and send the request to the bridge contract. The documentation gives a fee of $1 at the time of writing, and about five minutes to finalize.

What can send that request matters more than how long it takes. An approved API wallet cannot: measured on mainnet on 28 September 2026 with a fresh agent key, withdraw3, usdSend, spotSend, sendAsset and usdClassTransfer were all refused on the signer, while the same payloads signed by the account itself met a balance error instead.

That is why an agent can be given a key at all. The key that trades and the key that moves money are two different keys.