Quick Answer
Since January 1, 2025, the IRS has required crypto holders to track cost basis wallet-by-wallet (technically “by account or wallet”) rather than pooling every coin into one universal average, following the framework set out in final broker regulations and the transition safe harbor in Revenue Procedure 2024-28. If you hold the same asset across an exchange account, a hardware wallet, and a DeFi wallet, each one now keeps its own separate stack of tax lots. Moving coins between wallets you control is not a sale, and the original basis and holding period travel with the coins, but only if you can document which lot moved. Skip that documentation and the IRS default rule kicks in: first-in, first-out, applied separately inside each wallet, whether or not that produces the result you would have chosen.
Why This Matters Right Now If You Use More Than One Wallet
Anyone who bought crypto more than a year ago and has since spread it across a couple of exchanges, a hardware wallet, and maybe a DeFi wallet used for staking or swaps is sitting on a recordkeeping problem that didn’t exist in quite this form before 2025. For a decade, the informal industry practice was universal cost tracking: pool every purchase of an asset across every platform into one running list of lots, and when you sold from any of them, pick a lot from that combined pool. The IRS effectively tolerated this because digital asset guidance was thin and no broker was reporting basis to the government anyway.
That tolerance ended with final regulations under Section 6045 and the accompanying transition guidance. Digital assets are now treated, for cost-basis purposes, the way a brokerage treats separate accounts holding the same stock: a share of Apple in your Fidelity account and a share of Apple in your Schwab account are not fungible for tax-lot purposes, even though they’re economically identical. Crypto now works the same way, and the “account” in “wallet-by-wallet” includes self-custody wallets, not just exchange accounts. If you’re a self-custody investor who moves coins around for security, DeFi yield, or simple hygiene, you now have several separate ledgers to maintain instead of one.
The stakes are real money, not just paperwork. Misapplying basis across wallets can overstate gains, understate them in a way that draws an IRS mismatch letter once Form 1099-DA reporting ramps up, or strand a low-cost-basis lot in the wrong wallet where you can’t reach it when you actually want to realize that gain or loss. This guide walks through the mechanics for people who actually live with multiple wallets day to day: what changed, how basis moves with a transfer, how to pick a lot method inside each wallet, and where the new broker reporting regime leaves you exposed if you rely on self-custody or DeFi tools. For readers who want the bigger picture on how tokenized assets and blockchain-recorded ownership are reshaping traditional portfolios generally, our real-world asset tokenization guide covers the mechanics of putting non-crypto assets on-chain, which is a useful companion to the crypto-specific rules covered here.
Why the IRS Moved to Wallet-by-Wallet Cost Basis
Two things forced the shift. First, the IRS finalized digital asset broker reporting rules that require custodial platforms — exchanges, some payment processors, certain hosted-wallet providers — to report gross proceeds from digital asset sales starting with 2025 transactions, with basis reporting phasing in for assets acquired on or after January 1, 2026 and held at a broker. A broker can only report basis for what happened inside its own walls. It has no way to know what you paid for a coin on a different exchange three years ago, and it has even less visibility into a coin that arrived from a self-custody wallet with no cost information attached. Universal, cross-platform tracking was never something a broker could verify or report on; wallet-by-wallet tracking is.
Second, the universal-pool approach created an opening that regulators considered too generous: a taxpayer could sell a highly appreciated lot on the exchange where the cheapest available basis happened to sit, regardless of where the coins were actually held, effectively cherry-picking basis across accounts in a way traditional securities investors are not allowed to do. Treating each wallet or account as its own basis pool closes that gap and lines crypto treatment up with how brokerage accounts have always worked for stocks.
Revenue Procedure 2024-28 gave taxpayers a one-time transition safe harbor: if you were using universal tracking through the end of 2024, you were permitted to allocate your existing pooled basis across your actual wallets and accounts using a reasonable method, so long as you did the allocation and kept records of it before January 1, 2025. That window has closed. If you didn’t do that allocation, the practical fallback most preparers use is to treat each wallet’s holdings as starting from whatever specific, documentable purchases can be traced into it, which is considerably more work after the fact than doing it on time would have been.
How Basis and Holding Period Travel When You Move Coins Between Your Own Wallets
Moving crypto from an exchange to a hardware wallet, or from one self-custody wallet to another you control, is not a disposition. No gain or loss is recognized on a wallet-to-wallet transfer, because you haven’t sold, swapped, or spent anything — you’ve just relocated property you already own. That principle hasn’t changed. What has changed is the bookkeeping obligation that comes with it.
Under the current rules, the specific lot (or lots) you’re moving must be identified at the time of the transfer, not reconstructed later when you eventually sell. If you send 2 ETH out of a wallet that holds ETH purchased at three different prices, you need a contemporaneous record of which 2 ETH — by purchase date and cost — left the wallet. That record is what lets the receiving wallet inherit the original basis and the original holding period (including the acquisition date, which determines whether a later sale is short-term or long-term).
If you don’t make that identification at the time of the transfer, the default rule applies: first-in, first-out, applied within the sending wallet. The oldest lot in that wallet is treated as the one that moved, whether or not that’s what you actually intended. This matters more than it sounds like it should, because FIFO by default tends to move your longest-held, and often lowest-basis, coins first — which can be exactly backward from what a tax-aware investor would choose.
A related point that trips people up: a transfer between two wallets you control is different from a transfer to a wallet you don’t control, even briefly. Routing coins through a bridge, a peer-to-peer swap contract, or a third party’s custodial address — even as a pass-through step — can turn what you intended as an internal transfer into a disposition, because ownership or control genuinely changed hands for a moment. Keep transfers direct, and keep records of the sending address, receiving address, transaction hash, date, and quantity for every move, not just the ones you think might matter later.
Choosing a Lot Method Inside Each Wallet: FIFO, HIFO, and Specific Identification
Once basis is properly allocated to the wallet where a lot actually sits, you still need a method for deciding which lot gets sold when you dispose of less than your full balance in that wallet. Three methods dominate in practice.
First-in, first-out (FIFO) treats the oldest lot in the wallet as the one sold first. It’s the default if you take no other action, and it tends to realize longer holding periods (helpful for the lower long-term capital gains rate) but also tends to realize whatever basis happens to be oldest, which during a multi-year bull run is usually the lowest-cost, highest-gain lot.
Highest-in, first-out (HIFO) sells the most expensive lot in the wallet first, regardless of when it was bought. This generally minimizes the gain recognized on any given sale, which is why it’s popular with active traders, but it requires the software or spreadsheet doing the tracking to actually support it, and it isn’t automatically compliant just because you prefer the result — it still has to be a genuine specific identification, documented before the return is filed.
Specific identification is the umbrella method that allows FIFO, HIFO, LIFO, or any other deliberate selection, as long as you identify the exact lot at or before the time of the transaction and can substantiate it afterward — typically by a contemporaneous record showing the wallet, the lot’s acquisition date, quantity, and basis, tied to the specific disposal. HIFO is really just specific identification applied consistently to minimize current-year gain; the IRS doesn’t have a check box for “HIFO,” it has a check box for whether you made a valid specific identification at all.
The practical constraint that matters for multi-wallet holders: you can only specifically identify among the lots that actually reside in the wallet making the disposal. You cannot look across your Coinbase account, your Ledger, and your MetaMask wallet and pick whichever lot anywhere has the highest basis. The pool you’re choosing from is wallet-specific, which is exactly the discipline the 2025 rules were designed to enforce.
What Form 1099-DA Reports and Where It Leaves Self-Custody Holders Exposed
Form 1099-DA is the new information return digital asset brokers use to report sales to both the taxpayer and the IRS, similar in spirit to the 1099-B stockbrokers have sent for decades. The rollout is staged: gross proceeds reporting applies to sales processed through a broker starting with the 2025 tax year, with basis reporting for covered digital assets — generally those acquired on or after January 1, 2026 while held at that broker — phasing in afterward. Assets acquired earlier, or acquired outside a reporting broker, are treated as noncovered, and no basis figure will show up on the form even once basis reporting is otherwise live.
The bigger gap for multi-wallet holders is who counts as a broker at all. After Congress used the Congressional Review Act in 2025 to void the earlier rule that would have swept decentralized exchange front-ends and certain non-custodial wallet software into the broker definition, that category of platform is not issuing 1099-DA forms and has no reporting relationship with the IRS about your activity. A hardware wallet, a self-custody software wallet, and most DeFi protocols simply don’t send anyone a form. The custodial exchange where you first bought the asset might report gross proceeds on a later sale from that same exchange, but the moment coins leave for a wallet you control, the paper trail an examiner would otherwise rely on disappears — and the recordkeeping burden shifts entirely to you.
That asymmetry is the whole reason a guide aimed specifically at multi-wallet holders is worth reading closely: the group with the least amount of automatic government-facing documentation is the group with the most complicated basis situation, because they’re the ones moving assets between reporting and non-reporting environments in the first place.
A Worked Example: Maya’s ETH Across Three Wallets
Maya buys ETH on Coinbase over the course of 2024, then spreads her holdings across a hardware wallet and a software wallet she uses for DeFi. Here’s how her lots actually move and what happens when she eventually sells.
| Date | Event | Quantity | Basis / Lot |
|---|---|---|---|
| Jan 15, 2024 | Buys ETH on Coinbase (Lot A) | 2.0 ETH | $2,300/ETH ($4,600 total) |
| Jun 3, 2024 | Buys ETH on Coinbase (Lot B) | 1.5 ETH | $3,150/ETH ($4,725 total) |
| Nov 20, 2024 | Buys ETH on Coinbase (Lot C) | 1.0 ETH | $3,400/ETH ($3,400 total) |
| Dec 28, 2024 | Transfers Lot A to her Ledger wallet, documented before the safe-harbor deadline | 2.0 ETH | Basis moves with it: $4,600 |
| Feb 10, 2025 | Transfers 1.0 ETH from Lot B to her MetaMask wallet | 1.0 ETH | Basis moves with it: $3,150 |
| Apr 10, 2025 | Swaps that 1.0 ETH for a governance token inside MetaMask, ETH at $3,800 | 1.0 ETH | Taxable: $650 short-term gain |
| Jun 22, 2025 | Transfers Lot C to her Ledger wallet | 1.0 ETH | Basis moves with it: $3,400 |
Two things are worth pausing on. The swap inside MetaMask is a disposition — trading ETH for a different token is a taxable event even though no dollars ever touched a bank account — and because Lot B was purchased in June 2024 and disposed of in April 2025, it’s a short-term gain taxed at ordinary income rates: proceeds of $3,800 minus basis of $3,150 equals a $650 gain. The Ledger wallet, meanwhile, has quietly accumulated two lots with very different histories: 2 ETH from Lot A (basis $2,300 each, acquired January 2024) and 1 ETH from Lot C (basis $3,400, acquired November 2024). Both are long-term by the time Maya sells from that wallet in September 2026, but they carry very different basis per coin — which is exactly the situation the next section walks through.
Lot Method Comparison at the Point of Sale
In September 2026, Maya decides to sell 1.5 ETH out of her Ledger wallet, where ETH is trading at $4,200. The wallet holds 3 ETH total across the two lots described above: 2 ETH at a $2,300 basis (Lot A) and 1 ETH at a $3,400 basis (Lot C). Which 1.5 ETH she’s deemed to have sold — and how much gain she recognizes — depends entirely on the method she applies inside that one wallet.
| Method | Lots Treated as Sold | Basis Used | Recognized Gain |
|---|---|---|---|
| FIFO (default) | 1.5 ETH from Lot A | $3,450 | $2,850 |
| HIFO | 1.0 ETH from Lot C + 0.5 ETH from Lot A | $4,550 | $1,750 |
| Specific ID (Maya’s actual election) | 0.75 ETH from each lot | $4,275 | $2,025 |
Maya didn’t pick pure HIFO. She elected a specific split — three-quarters of an ETH from each lot — because she wanted to keep a full, single, low-basis Lot-A remainder intact for a donation she’s planning later in the year rather than leaving fragmented partial lots behind. That’s the point of specific identification: it isn’t only a tax-minimization lever, it’s a tool for controlling exactly which units remain in the wallet afterward. The chart below shows the recognized gain under each approach.
Recognized Gain by Lot Method (1.5 ETH Sold at $4,200)
Bar length scaled to gain amount; dashed line marks the zero baseline. All three outcomes are long-term gains in this scenario, so the difference is purely the size of the taxable gain, not its character.
Notice that every method here only draws from the two lots physically present in the Ledger wallet. None of them can reach back into whatever remains on Coinbase or in the MetaMask wallet, even though all three wallets hold the same asset. That containment is the entire mechanical consequence of wallet-by-wallet tracking, and it’s why the wallet a lot sits in — not just the price you paid for it — now determines what’s available to you at the moment of sale.
Common Mistakes That Wreck a Multi-Wallet Cost Basis Record
Most of the errors we see aren’t exotic; they’re simple gaps in habit that compound over a few years of moving coins around.
Treating a transfer like a sale in the software, or vice versa. Many tracking tools default to labeling any outgoing transaction as a disposal unless you manually flag it as an internal transfer. Miss that flag on a wallet-to-wallet move and the software will invent a sale that never happened, basis and all.
Not recording the destination wallet address. If your records show coins leaving a wallet but don’t tie the transfer to a specific receiving address you control, you have no way to prove it was an internal move rather than a payment to someone else, which matters if you’re ever asked to substantiate the position.
Assuming basis carries automatically without documentation. Basis and holding period only carry over cleanly when you can show which lot moved. A transfer you can’t tie to a specific lot defaults to FIFO in the sending wallet — sometimes the wrong outcome, and always outside your control once the deadline for that transaction has passed.
Forgetting that DeFi swaps are dispositions. Swapping one token for another inside a wallet, wrapping a token, or providing liquidity in exchange for a pool token are usually disposals of the token you put in, whether or not any of it ever reached a bank account. Treating these as “just moving crypto around” is one of the most common ways multi-wallet holders understate gains.
Losing track of pre-2025 basis when reallocating under the safe harbor. Taxpayers who used the Revenue Procedure 2024-28 transition allocation but didn’t keep a copy of the allocation method and resulting per-wallet lot list are now trying to reconstruct, from memory, a decision they made once and never wrote down.
Relying on an exchange’s 1099-DA as if it covers everything. A 1099-DA from one exchange reports what happened at that exchange. It says nothing about a coin that arrived there from self-custody with basis attached, and it certainly says nothing about activity on a different platform or wallet entirely. Filing a return as though the form is the complete picture is one of the fastest ways to end up with an IRS notice down the line.
Mixing personal and business wallets. Freelancers and small business owners who accept crypto payments and also hold personal crypto in the same wallet create a basis-tracking mess that’s much harder to unwind than keeping the two separated from the start.
A Practical Checklist for Every Wallet You Touch
- List every wallet and account that currently holds, or has ever held, the asset — exchange accounts, hardware wallets, software wallets, and any DeFi position where the token itself sits in a contract you control.
- For each wallet, build (or export from tracking software) a lot-level ledger: acquisition date, quantity, cost basis, and current location.
- Confirm your pre-2025 allocation under the safe harbor was actually documented; if it wasn’t, reconstruct it now from exchange statements and transaction history rather than guessing later.
- Before any transfer between your own wallets, decide and record which specific lot is moving — don’t let the default FIFO rule make that decision for you by omission.
- Save the transaction hash, sending address, receiving address, date, and quantity for every internal transfer, not just the ones that look significant at the time.
- Flag every DeFi swap, wrap, or liquidity deposit as a disposal in your records unless you’ve specifically confirmed with a tax professional that a given protocol interaction qualifies for different treatment.
- Before making a sale, check which lots are actually present in that specific wallet — you cannot borrow basis from a different wallet holding the same asset.
- If you want to use HIFO or a custom specific identification, make and document the selection at or before the time of the sale, not when you file the return months later.
- Reconcile any 1099-DA you receive against your own full ledger rather than treating it as the complete record.
- Revisit the whole ledger at least once a year, ideally before year-end, while transaction details are still fresh enough to verify.
Key Takeaways
- Since January 1, 2025, cost basis for digital assets is tracked separately for each wallet or account, not pooled across every platform you use.
- Moving coins between your own wallets isn’t taxable, but basis and holding period only carry over if you document which specific lot moved.
- Without that documentation, the sending wallet’s oldest lot is deemed to have moved, under the default FIFO rule.
- Inside a single wallet, you can still choose FIFO, HIFO, or a custom specific identification — but only among the lots physically present there.
- Form 1099-DA reporting is staged and incomplete for self-custody users: custodial brokers report what happens on their platform, but most self-custody wallets and DeFi protocols report nothing at all after the 2025 rollback of the broader broker definition.
- The transition safe harbor under Revenue Procedure 2024-28 for reallocating pre-2025 basis closed at the start of 2025; anyone who missed it is reconstructing records the hard way.
Frequently Asked Questions
Do I have to track cost basis separately for every wallet I own?
Yes. Since January 1, 2025, IRS guidance requires digital asset holders to track cost basis on a per-wallet or per-account basis rather than pooling holdings across every platform into one universal record. Each exchange account, hardware wallet, and software wallet holding the same asset maintains its own separate set of tax lots.
Is moving crypto from an exchange to my own hardware wallet a taxable event?
No. Transferring crypto between wallets you control is not a sale, exchange, or disposition, so it does not trigger gain or loss. The original cost basis and holding period carry over to the receiving wallet, provided you can document which specific lot was transferred at the time of the move.
What happens to my cost basis if I don’t identify which lot I’m transferring?
If you don’t make a specific identification at the time of the transfer, the default first-in, first-out rule applies within the sending wallet, meaning the oldest lot in that wallet is treated as the one that moved, regardless of which coins you actually intended to send.
Does Form 1099-DA report my full cost basis history?
No. Form 1099-DA reports what a specific broker knows about transactions on its own platform, with gross proceeds reporting starting for 2025 sales and basis reporting phasing in for assets acquired on or after January 1, 2026 while held at that broker. It does not capture basis information for assets that arrived from self-custody wallets or other platforms, and most non-custodial wallets and DeFi protocols do not issue the form at all.
Can I use HIFO across all my wallets combined to minimize gains?
No. Specific identification methods like HIFO can only be applied among the lots actually held within the specific wallet or account making the sale. You cannot select a high-basis lot sitting in a different wallet to offset a sale made from another wallet, even if both wallets hold the same asset.
References
- Internal Revenue Service, Revenue Procedure 2024-28: Transition safe harbor for allocating unused digital asset basis to wallets and accounts.
- U.S. Department of the Treasury and Internal Revenue Service, final regulations under Internal Revenue Code Section 6045 on digital asset broker reporting.
- Internal Revenue Service, draft and final instructions for Form 1099-DA, Digital Asset Proceeds From Broker Transactions.
- Congressional Review Act joint resolution rescinding the expanded digital asset broker reporting rule for certain decentralized finance platforms, 2025.
- Internal Revenue Service, Notice 2014-21 and successor digital asset guidance on the property characterization of virtual currency.
