Hyperliquid Academy Independent · Unofficial

How to export Hyperliquid trade history for taxes

Verified against Hyperliquid public info API and Hyperliquid Terms of Use · by Hyperliquid Academy

What nobody does for you

There is no tax form. No annual statement, no summary document, no filing on your behalf.

That follows directly from there being no identity check: nothing was collected, so nothing can be reported.

Which is not the advantage it looks like

Your complete trading history sits on a public ledger, permanently, under an address. A tax authority can read it with the same tools you can, and an address funded from a verified exchange account is already linked to you.

“No reporting” describes the exchange’s obligations. It says nothing about yours, and the evidence trail here is better than the one a centralised exchange keeps.

What to export

Three things, and the second is the one people miss.

Fills. Every execution, with price, size, side, fee and timestamp. This is what most people think of as the trade history.

Funding payments. Charged or received hourly on every open perpetual position. On a multi-day hold these routinely exceed the trading fees on both sides combined, and they are part of your result whether they helped or hurt.

Transfers. Deposits and withdrawals, so the movement in and out reconciles against what the trading explains.

Miss the funding and your numbers will not add up, in a way that is tedious to diagnose months later.

Getting the data out

  1. Export from the app first

    The app provides an export of your trading history. It is the quickest route and it is enough for most people.

    You should see a file of your fills and history

  2. Check the export actually covers funding

    If your export only has fills, you have two thirds of the picture. Pull funding separately rather than treating what you have as complete.

    You should see funding entries present alongside the fills

  3. If you need everything, query the API by address

    The public info endpoint serves user fills and funding history by address, with no key and no account. Because everything settles publicly, this route can reconstruct history you never exported, including from a period you have since forgotten about.

    You should see the full ledger history, independent of any export

  4. Do it periodically rather than in April

    Nothing here expires, so this is convenience rather than necessity. It is still much easier than assembling a year in one sitting.

    You should see a saved record per period, before you need it

Things that catch people

Assuming withdrawal is the trigger. In most jurisdictions a closed position is the taxable event, whether or not the money left the exchange. An account that traded all year and never withdrew still has a year of events in it.

Forgetting the spot leg. A funding trade has a spot purchase and sale alongside the perpetual. Both legs are transactions.

Treating unrealised profit as income. It is not realised until the position closes. Conversely, a paper gain you rode to breakeven produced no taxable result and no loss to claim either.

Sub-accounts and multiple addresses. Each address is its own history. If you split activity, you have to gather all of it.

Vault deposits. A deposit into a vault and the later withdrawal are their own events with their own dates, distinct from the trading the vault did.

Choosing software

Several crypto tax products handle Hyperliquid, generally by taking an address rather than an API key — which is possible precisely because the data is public.

Two things to check before paying:

Does it handle perpetual funding? Products built for spot trading sometimes ignore it, and on a perpetuals account that is a material omission.

Does it handle your jurisdiction’s method? How positions are matched and what counts as a disposal differ by country, and a tool that only implements one method may not implement yours.

We do not recommend a specific product. Coverage changes, and a stale recommendation would be worse than none.

Where the responsibility actually sits

The exchange collected nothing, reports nothing and files nothing. Everything you owe, you work out yourself from a record that exists whether or not you keep it.

That is a fair trade for self-custody and it is not a loophole. Take local advice — the answer depends entirely on where you live, and that is also the question that decides whether you may use the exchange at all.

Where to go next

Pulling history from the API, if the app export is not enough, and what realised PnL actually includes, which is the same arithmetic your tax numbers depend on.

Frequently asked questions

Does Hyperliquid report to tax authorities?

No identity was ever collected, so there is nothing to report and no form is issued. That is not the relief it sounds like: your entire history is on a public ledger that anyone, including a tax authority, can read by address.

What do I actually need to export?

Fills, funding payments, and deposits and withdrawals. Funding is the one people forget, and on a multi-day position it is often larger than the trading fees on both sides.

Which software imports it?

Several crypto tax products support Hyperliquid, usually by address. Coverage changes, so check that a product handles perpetual funding rather than only spot trades before paying for it.

Can I reconstruct history I never exported?

Yes, in full. Everything settles on a public ledger, so the record exists whether or not you saved it. Pulling it from the API by address is the reliable route.

Do I owe tax if I never withdrew?

In most jurisdictions a closed position is a taxable event regardless of whether the proceeds left the exchange. Take local advice rather than assuming that withdrawal is the trigger.

Is this tax advice?

No. This page covers how to get the data out. What you owe depends on where you live, and that question belongs with someone qualified in your jurisdiction.

Sources

We link the primary source for every number on this page. If a figure here disagrees with the Hyperliquid documentation, the documentation is right and we want to know.

Keep going