The method switch is a calculator. The identification is a record you had when you sold.
Not tax advice · reviewed 25 October 2026
Pick lots before year-end
FIFO sells the oldest lot in the account. HIFO sells the highest known USD basis per unit and leaves unknown lots for last. Specific identification sells only the lots you name. All three can be run on the same rows. Only the third one claims you chose particular units, and that claim is not created by clicking the method after the fact. The output is a review with a tax pro.
What to look at while the year is still open
- Open lots: acquisition date, remaining quantity, and basis per unit. A lot with no basis should not be “picked” into a finished gain. The sale that consumes it stays out of the total. See missing basis.
- Holding period. A sale is long-term only when its UTC date is after the one-year anniversary. A sale on the anniversary is short-term. February 29 anniversaries fall on February 28.
- The difference between methods. The calculator shows FIFO, HIFO, and a named lot side by side on rows you type. The HIFO and FIFO guide uses the fictional River sample, where the two methods disagree.
- The record. BasisFix’s JSON names
lot-plus the buy’s event id. After a matched transfer the id isxfer-plus the outgoing event and the source lot. That file tells the matcher what to consume. It does not prove you identified the units when the sale happened. The longer note is on specific identification.
No deadline statute is quoted on this page. If you have not sold, you still choose whether to sell and which records you will keep at that time. If you already sold, a January toggle to HIFO is a recomputation, not a new identification. An over-allocation in the JSON is rejected and does not consume the lot.
Questions
Can HIFO be turned on in January and called specific identification?
No. Switching the worksheet to HIFO shows what that ordering would have done. It is not proof that you identified the lots when you sold. Specific identification has to be supportable at the time of the sale. The JSON file in BasisFix is a calculation input, not that record.
What does BasisFix actually store?
A lot id and a quantity you name for a sale or an outgoing transfer. The id looks like lot- followed by the buy’s event id, or xfer- followed by the outgoing id and the source lot id after a matched transfer. An over-allocation is an error and does not consume the lot.
Is there a deadline printed on this page?
No statute date is quoted here. The practical point is that the identification belongs with the sale, while you still know which coins you meant, not as a silent toggle after the year is over. A preparer tells you what your records need to show.