Editorial comparison

Ledger and Koinly: controlling keys and reviewing transaction history

Ledger signs transactions and protects keys; Koinly consolidates data for reconciliation and reports. Combining them requires public addresses, complete history and checks before export.

Updated:

Read the article
Keys remain with a signing device while public history feeds transaction records and reconciliation

Ledger and Koinly: complementary services answering different questions

Ledger and Koinly are not two wallets competing for the same task. Ledger provides a self-custody signing layer: keys are protected in the device and assets remain on-chain. Koinly consolidates activity, matches movements and prepares reports from imported information. Both can be used because key control is separate from transaction-record review.

Importing into Koinly does not transfer assets to it. In the documented workflow, a public address or public key supplies activity information, while exchange connections are for reading. Private keys and recovery words are unnecessary for viewing history. If a purported import asks for them, stop and verify the route.

This comparison becomes particularly useful after moving an asset from an exchange to a wallet. Its new location does not erase the earlier purchase, and an on-chain wallet does not necessarily contain every detail of an off-chain trade. Without linked records, a balance can look correct while acquisition information is missing.

The Ledger review and Koinly review explain the service roles. This article focuses on their workflow: account mapping, public-data import, matching and checks. It is a data process, not a promise that a particular generated report suffices for filing.

Who signs and who calculates: Ledger and Koinly responsibilities

Separating roles prevents two mistakes: treating a report as key protection, and treating a signing device as a complete tax record. The table describes examined functions without making the services direct substitutes.

Scroll the table horizontally to read every column.

Who signs and who calculates: Ledger and Koinly responsibilities
TaskLedgerKoinly
Approving an actionDevice signing for supported actions/applicationsReading information for records
Activity basisAccounts and assets on compatible networksImported exchange and wallet history
Required reviewDevice transaction details and access backupHistorical completeness, matching and balances

A Ledger device can protect the key without preventing approval of a malicious action. Koinly can produce a calculation consistent with its inputs even when important data was not imported. Both involve user responsibility, but different checks: read the action before signing, and examine history before generating a report.

Maintain these boundaries when several services share an application screen. A purchase or swap through a connected provider may still require that provider's records. A report displaying a balance does not prove that swap details were imported. An organized sequence retains receipts and transfer identifiers beside public data, explaining how the asset arrived at its current location.

Mapping Ledger accounts before connecting Koinly

Begin with a source inventory, not a sync button. List every exchange, wallet account and network with activity, even if the current balance is zero. Koinly asks for activity sources because a closed account's history can explain a purchase or transfer now held elsewhere.

Ledger can manage assets across networks and accounts. A token name alone does not identify the chain, and one address does not necessarily cover every account. Record account name, network, public-identifier type and period of use. Separately check whether the asset is managed natively or through a compatible wallet.

When another account on the same network is added, do not automatically overwrite the previous record. Two accounts can have different histories while using the same device. Likewise, moving to another application does not necessarily change ownership or create an on-chain transfer.

The inventory need not contain recovery words. It identifies data sources and coverage, rather than enabling signatures. Protect its privacy, because linking addresses to a person can reveal a broad activity picture. Self-custody of keys does not make public history anonymous.

Public addresses and xpub: Ledger import coverage

Koinly's documented Ledger integration uses public addresses or keys. On networks where an account uses several receiving addresses, importing one address can omit activity. Koinly explains that an appropriate extended public key can expose that account's related addresses, while other integrations use an ordinary receiving address.

Do not assume that every string beginning with xpub fits every chain or account type. The instructions distinguish formats and accounts and document a Ledger Taproot import limitation with alternatives such as files or individual addresses. A limitation in a particular export/integration route does not establish that the asset is unsupported or that its history is absent on-chain.

Use a route that displays public information from the appropriate tool. Do not enter recovery words into a website to “calculate an xpub,” or turn a data need into disclosure of signing capability. If the instructions do not match the account, check a supported alternative rather than trying formats randomly.

After synchronization, compare date coverage and known early transactions. A current balance does not prove that an old acquisition or previously used address was imported. The goal is activity coverage, not merely a screen reporting successful connection.

A transfer to Ledger: two records, one asset

Moving an asset from an exchange to an owned wallet normally creates an outgoing record at the source and an incoming record at the destination. Koinly describes matching transfers between owned wallets, but the data must support the match. Moving an asset to another location does not create a new purchase merely because the receiving row says Deposit.

Consider an educational example: the exchange debits 1 ETH and deducts an assumed 0.002 ETH transfer charge from that amount. The wallet receives 0.998 ETH. The difference is not necessarily a lost asset; it can be the recorded source charge. The calculation is 1 minus 0.002. It is neither a current network fee nor a tax classification of that charge.

For matching, check asset, network, time, transfer identifier and net quantity. If a conversion or bridge occurred, do not automatically label it a simple transfer merely to reconcile balances. Actual activity determines the records needed, and professional classification can require separate review.

Keep the exchange receipt beside the public record. On-chain data explains receipt but not necessarily the original acquisition price. Linking both records makes the custody change visible while preserving the connected holding history.

Missing acquisition information: why Ledger alone is insufficient for reports

A wallet can show an asset received long ago without explaining what was paid for it. If it was bought at another exchange and transferred in, acquisition and fee history are also needed. Koinly notes that missing purchases affect calculations and can trigger warnings about disposals with no acquisition record.

Selecting a report year is no reason to import only that year. A disposal during the selected year may depend on an earlier acquisition, and historical data feeds the calculation. Do not remove older activity merely because it is not a current-year event; it may explain the source of an asset sold now.

If a file is missing, locate the activity source and appropriate export type. Entering an arbitrary figure to remove a warning is not a correction. Copying a market price from the day the asset reached the wallet can also confuse acquisition with transfer timing. Complete records from actual evidence and retain an explanation of corrections.

For a purchase made inside an application, check the connected provider's receipt too. The application displaying the action is not necessarily the source of every price and payment detail. A neatly presented report does not establish that missing information was repaired; the test is whether its figures trace back to acquisition and transfer records.

Checking Ledger and Koinly balances: quantities before currency values

Balance reconciliation begins with each asset's quantity, not a total currency value moving with the market. Choose a point in time and compare source balances with calculated balances, then inspect movements explaining differences. Similar portfolio values on two screens can conceal an incorrect quantity or different display pricing.

Assume a hypothetical ledger covering one person's owned wallets: opening 2 ETH, purchase 1 ETH, external payment 0.8 ETH and fee 0.002 ETH. Closing quantity is 2.198 ETH. A transfer between two owned wallets does not increase the aggregate amount; it changes allocation between sources. Compare both levels: each account and the combined total.

If one account is correct but the aggregate is doubled, check whether the same event was imported through both file and API, or a transfer was counted as an acquisition. Koinly warns that duplicate detection may not work across different formats. Do not delete rows without preserving the source and understanding their meaning.

Also review assets with separate fees, rewards or swaps. Reconciling one asset does not approve the entire portfolio. A data correction should explain the discrepancy rather than merely forcing the sum to a preferred result.

Privacy with Ledger and Koinly: public keys still expose sensitive information

A public key does not grant the same capability as a private key, but it can reveal extensive activity. A data connection links history to a service account and user records. Read-only access therefore does not make disclosure risk-free, and self-custody does not guarantee anonymity.

Define what the review actually needs. A single address, account public key and transaction file provide different coverage. Share according to the appropriate integration instructions and restrict access to financial documents to those who need them. An accountant's file should not contain signing capability.

Koinly's connection-security description is provider-reported, not a penetration test performed here. This article does not verify every subcontractor or promise protection against data exposure. Permission separation can reduce ability to act while still requiring careful decisions about who receives complete history.

When discontinuing a connection, inspect remaining access and the product's data-management options. Removing a device from an application does not necessarily delete history from a service, and revoking an API permission does not automatically erase files already shared. Continuing access, storage and disclosure are separate questions.

Cost and output: a Ledger device versus Koinly tax-year reports

Separate the costs by what is purchased. Ledger concerns a device and compatible networks/services. Koinly supports data work, with reports purchased for the tax years needed. Buying a report plan is not an automatically renewing next-year subscription and is not payment for custody of assets.

Before buying a report, check the reporting year, transaction capacity and required downloadable material. Earlier history may be essential even for a single-year report. Do not select a plan solely from transactions currently visible in the wallet or assume every file type is available regardless of plan conditions.

Koinly describes detailed outputs such as CSV and PDF according to report type. A transaction spreadsheet supports row-level work, while a summary document presents a readable result. Ask the professional preparing the filing which materials are needed before download, rather than discovering missing detail at the end.

Hebrew is not in the published report-language list, and the system does not file on the user's behalf. A Hebrew article does not translate the export or confer Israeli approval on it. The value described here is consolidation and review for professional use, keeping preparation, calculation and filing separate.

A Ledger and Koinly workflow ready for professional review

An organized workflow preserves each tool's role. Ledger approves actions whose details are checked on the device. Koinly consolidates history and calculates from imported information. Signing-method backups are managed separately from report files, and a correct-looking report figure does not decide whether an action should be signed.

Before export, review the source inventory, acquisition history and quantity reconciliation. Retain original files and explanations of corrections, checking that transfers between owned accounts did not become duplicated acquisitions. Note activity requiring professional treatment, such as swaps or rewards, without assigning automatic tax classifications.

For backup and signing first, the Ledger setup and recovery guide addresses the wallet role. For records spread across exchanges, the Koinly versus export-files comparison addresses consolidated history. These are different next steps for different outstanding questions.

The combination fits willingness to manage self-custody and inspect data. It neither replaces an accountant nor solves lost recovery words. Using one reporting system does not prove every source imported; readiness depends on traceability, reconciliation and understanding the outputs supplied to the professional.

Providers mentioned on this page

Wallets

Ledger

About the provider

Ledger makes hardware wallets for crypto: private keys are held on the device, and transactions are signed after on-device approval. Its range includes USB-only devices, Bluetooth models and touchscreens. Ledger Wallet, formerly Ledger Live, manages assets and provides access to third-party services.

Nano S Plus: USD product price
69 USD

Public USD storefront offer for Matte Black. This is not an Israel delivered price; shipping, tax, currency and bundle contents are determined at checkout.

Nano X: USD product price
99 USD

Public USD storefront offer for Onyx Black. This is not an Israel delivered price; shipping, tax, currency and bundle contents are determined at checkout.

Tools

Koinly

About the provider

Koinly imports crypto history from exchanges and wallets, matches transfers and produces files for an accountant. Reports are purchased separately for each tax year, from $49 for Newbie within the transaction limit. Imports and calculations can be checked free before purchase. Buying one report year does not unlock others; for Israeli readers the service supports professional data preparation and does not file on their behalf.

Newbie: tax-year price
49 $/tax year

The public page displays $. Up to 100 transactions. One-time report-year purchase, without automatic renewal. Account history also affects capacity; additional Pro transactions cost extra.

Hodler: tax-year price
99 $/tax year

The public page displays $. Up to 1,000 transactions. One-time report-year purchase, without automatic renewal. Account history also affects capacity; additional Pro transactions cost extra.