Koinly + Hyperliquid: why your import looks wrong
updated october 2026 · ~5 min · not tax advice
The sync works — the data may not
Koinly does have a Hyperliquid integration: you add your wallet address, it syncs, numbers appear. The question isn't whether data arrives — it's how much of your activity the venue's API lets a generic importer see. That distinction is where most 'Hyperliquid missing transactions' reports actually live.
A fair caveat up front: integrations get updated constantly. Treat this page as a five-minute checklist for whatever you're seeing today, not a permanent verdict on any tool.
Three silent failure modes
Fill truncation. The venue's fill endpoint retains roughly the last 30 hours. An importer that reads it gets a few days of activity — your 'full year' can quietly contain ~1% of your trades, with no error shown anywhere.
Funding reads $0.00. Funding settles hourly on its own endpoint, outside trade fills. If a sync only imports fills, the funding line is zero — and on an account that held positions, a $0 funding line is almost always a dropped-data flag, not reality.
Missing markets and double-counted moves. Builder-dex markets (HIP-3 venues like xyz:, flx:) carry over half of perp volume but live outside the main perp book an importer might enumerate. Separately, internal moves — sub-account transfers, spot↔perp transfers — can import as ordinary deposits and withdrawals, inflating flows that never left your own accounts.
The five-minute checklist
Open your synced wallet and compare against what you know. Transaction count: does the number look plausible against how much you actually traded? Funding line: is it exactly zero on an account that held positions? Markets: do xyz:, flx: or other builder-dex symbols appear anywhere? Transfers: are moves between your own accounts showing up as income or withdrawals?
If any check fails, re-syncing won't fix it — a second sync reads the same endpoints and hits the same ceilings. The data has to come from deeper than the sync reaches.
What actually fixes it
Get a complete record first, then decide where it goes. Fills need a chain indexer (the venue endpoint physically cannot serve history older than ~30 hours); funding and ledger come from the venue's own full-history endpoints; and the result should be verified against an independent identity before it touches a filing.
Our free check does the recompute and the verification — run it on your address, and compare its totals against what your sync produced. Agreement is evidence; disagreement tells you exactly which stream was dropped. For the corrected data itself — complete fills, funding and ledger, plus per-disposal records with cost basis — that's what the paid report delivers, in formats your preparer or your tool's manual CSV import can consume.
Common questions
?Is Koinly's Hyperliquid integration broken?
It syncs — the question is coverage. Check three numbers: transaction count vs your real activity, a funding line that isn't $0, and whether builder-dex markets appear. Those tell you which stream was dropped.
?Do other tools have the same problem?
The same failure modes apply to any importer relying on the retention-limited fill endpoint or enumerating only the main perp book — the limitations are in the venue's API shape, not any one tool.
?Can I fix the data inside Koinly?
Koinly supports manual CSV imports, so corrected data can be brought in — but the fix is upstream: you need a complete, verified export first. Re-syncing reads the same endpoints and reproduces the same gaps.
Check what your sync actually got — free
Paste your address and compare the recomputed totals against your import: complete fills, the full funding stream, and a verified account-value identity — the three numbers that tell you what was dropped.
Run the free check