One published statement shape. Purchases, sales, sends, and bill pay are not the same row.
Not tax advice · reviewed 25 October 2026
Strike bitcoin taxes
Strike posted an account-statement CSV on 31 January 2025 and asked for feedback on the columns. That post is the header BasisFix accepts. A comment there said later statements differed and that the dashboard “Generate report” file is not the same format. A file with another header is reported and skipped. The worksheet is a review with a tax pro.
How a row is read
- Purchase. Basis is the Cost Basis (USD) cell when it is filled. In the posted example, BTC Price times the bitcoin amount does not equal that cell, so BasisFix does not recompute basis from the price. If the cost-basis cell is blank, basis is the absolute USD amount plus the absolute USD fee.
- Sale. Proceeds are absolute Amount USD minus absolute Fee USD. That assumes the fee is not already inside Amount USD. A fee charged in bitcoin increases the quantity sold.
- Send. A transfer out, not a sale. The quantity is Amount BTC. Fee BTC is flagged as a network fee and is not a second disposal. If the wallet on the other side received the net amount, the quantities may not match and the lots stay in the Strike account. See self-transfers are not sales.
- Receive. A transfer in. BTC Price is not income and is not basis. If the note or description says gift, the row is warned and still left without a fair-market-value basis. Carryover basis is not computed. See gifts and inheritance.
- Bill Pay. Spending bitcoin. The posted row leaves Amount USD blank, so BasisFix uses Amount BTC times BTC Price as proceeds. A blank price leaves proceeds blank rather than inventing them.
- Deposit, Withdrawal, Debit, Credit with no bitcoin amount are dollars. They are skipped.
Dates like Jan 1 2024 12:02:05 are read as UTC. Dollar cells may contain a dollar sign, a thousands separator, or a dash for blank. None of those become a made-up price.
Questions
Which Strike CSV does BasisFix read?
The monthly account-statement header Strike posted on 31 January 2025: Reference, Date and Time UTC, Transaction Type, Amount USD, Fee USD, Amount BTC, Fee BTC, BTC Price, Cost Basis USD, Destination, Description, and Note. A dashboard Generate report file is a different shape and stays unrecognized.
Is a Strike send a sale?
No. A Send is a transfer of Amount BTC. The BTC network fee is flagged and is not turned into its own sale. A Bill Pay row is different: it spends bitcoin, and BasisFix treats it as a disposition at BTC Price when Amount USD is blank.
Does a Strike receive count as income?
Not in BasisFix. BTC Price on a receive is ignored. A note that says gift is warned and still has no automatic fair market value. Fiat deposits, withdrawals, debits, and credits with no bitcoin amount are skipped.