Updated crypto tax guide in New Zealand
For Kiwis, here's your general guide on calculating your taxable income from your crypto investments or transactions.
Bitcoin just reached a new all-time high, but then you remember that you must file your tax return before 7 July 2025. Ah, a sobering reminder that crypto is not a tax-free haven.
The IRD has made it clear that income from crypto is subject to income tax. If you’ve bought Bitcoin (or any other cryptocurrency), and then have sold it at a profit, or have gifted it to someone, you’re liable to income tax at a progressive rate that depends on your total income in that tax year.
That may sound rather daunting, so let’s dive into this general guide on calculating your taxable income from your crypto investments or transactions.
When in doubt, refer to IRD.govt.nz
This guide is no replacement for the official guide on how crypto-related activities are taxed in New Zealand. Start here and then spend some time reading through, for example, what they mean by cryptoassets, and how to file your crypto tax as an individual or business.
Also, Easy Crypto has partnered with Koinly, a service that makes it easy for you to calculate the taxes you owe from all the crypto transactions you’ve done through Easy Crypto or any other exchange.
In this guide, however, you’ll learn how to calculate your crypto income manually, based on some common cases.
What is a tax year? What is “income”?
A tax year is a period that spans 12 months, where the beginning and end of which don’t always align with the calendar year (i.e. 1 Jan – 31 Dec). The current tax year is between 1 April 2024 and 31 March 2025 inclusive.
That means, all income that you received starting 1 April 2024 through 31 March 2025 are subject to income tax. For our purpose, you receive income on a crypto transaction if one or more of the following cases apply:
- You sold crypto at a profit.
- You “swapped” one crypto with another crypto, at a profit.
- You sent someone a crypto gift, where the value of that crypto gift has appreciated from the point at which you’ve bought it.
- You received income in crypto, from a business, staking or crypto mining.
After totalling up your income from crypto, your exact tax return will depend on your income tax bracket. If you’re a business, there are other considerations and tax deduction claims you can make as well. Please refer to the IRD or consult a tax advisor.
Case #1: Buy low once, sell high once.
You bought 0.1 BTC for $1000 at any point in the past, and have never sold it. Then, within the current tax year, you sold 0.1 BTC for $2000. The profit you generate from this sale is $1000, therefore your income from this transaction was $1000.
Case #2: Buy low multiple times, sell high once.
You bought 0.05 BTC for $500 and then bought another 0.05 BTC for $700. Then, within the current tax year, you sold 0.1 BTC for $2000. The cost of acquiring the entire 0.1 BTC was $500 + $700, and the sale resulted in $2000 of cash. Therefore, your income from this transaction was $2000 – ($500 + $700) = $800.
Case #3: Buy multiple times, sell multiple times.
The table below illustrates how you might have bought and sold Bitcoin throughout a given period. We’ll calculate your crypto sales profit according to the Weighted Average Cost, which is recognised by the Inland Revenue as one of the two methods of calculating trading stock profits.
A note on notation: If the Action is “sell”, the numbers are negative for Paid and BTC qty columns because you’re taking net asset value away from your portfolio.
Event | Action | Paid | BTC qty | BTC price |
1 | buy | $1,000 | 0.019608 | $51,000 |
2 | buy | $2,000 | 0.023529 | $85,000 |
3 | sell | -$1,000 | -0.011111 | $90,000 |
4 | buy | $1,000 | 0.010526 | $95,000 |
5 | sell | -$1,000 | -0.008333 | $120,000 |
Since you bought and sold BTC at different prices, the income you earned from one sale event will be different from the next. This depends on the weighted average cost (WAC) of the sold asset, which changes whenever you purchase a new batch of the same asset.
The WAC of the 0.01111 BTC sold at event #3 can be different from the cost basis of the 0.01176 BTC sold at event #5. This is because before event #3, you purchased BTC twice at a lower price, and before event #5, you’ve purchased one more batch at a much higher price.
Calculating the WAC, and therefore the exact profit from sales, is easy. First, create one new column to the existing table — Total BTC. This tracks how much of the asset has been accumulated. It will increase when you buy and vice versa.
Event | Action | Paid | BTC qty | BTC price | Total BTC |
1 | buy | $1,000 | 0.019608 | $51,000 | 0.019608 |
2 | buy | $2,000 | 0.023529 | $85,000 | 0.043137 |
3 | sell | -$1,000 | -0.011111 | $90,000 | 0.032026 |
4 | buy | $1,000 | 0.010526 | $95,000 | 0.042552 |
5 | sell | -$1,000 | -0.008333 | $120,000 | 0.034219 |
Next, we want to create a column called Total cost. This tracks how much total cost you’ve accrued in order to own the accumulated amount of Total BTC. Whatever value goes into the Total cost column must follow a conditional:
Do a cumulative sum of everything in the Paid column ONLY before the first “sell” row.
Event | Action | Paid | BTC qty | BTC price | Total BTC | Total Cost |
1 | buy | $1,000 | 0.019608 | $51,000 | 0.019608 | $1,000 |
2 | buy | $2,000 | 0.023529 | $85,000 | 0.043137 | $3,000 |
3 | sell | -$1,000 | -0.011111 | $90,000 | 0.032026 | |
4 | buy | $1,000 | 0.010526 | $95,000 | 0.042552 | |
5 | sell | -$1,000 | -0.008333 | $120,000 | 0.034219 |
Let’s pause right there and move on to adding the WAC column for now. It becomes much clearer later on. WAC is simply the Total Cost divided by Total BTC per row.
Event | Action | Paid | BTC qty | BTC price | Total BTC | Total Cost | WAC |
1 | buy | $1,000 | 0.019608 | $51,000 | 0.019608 | $1,000 | $51,000 |
2 | buy | $2,000 | 0.023529 | $85,000 | 0.043137 | $3,000 | $69,545 |
3 | sell | -$1,000 | -0.011111 | $90,000 | 0.032026 | ||
4 | buy | $1,000 | 0.010526 | $95,000 | 0.042552 | ||
5 | sell | -$1,000 | -0.008333 | $120,000 | 0.034219 |
When we sell the asset, the WAC remains unchanged. From here we can calculate the cost of sale for that particular instance, as well as the profit we acquired. The cost of sale for any event row is calculated as follows:
Cost of sale = ( BTC price – WAC ) x BTC qty
Event | Action | Paid | BTC qty | BTC price | Total BTC | Total Cost | WAC | Cost of sale | Profit |
1 | buy | $1,000 | 0.019608 | $51,000 | 0.019608 | $1,000 | $51,000 | ||
2 | buy | $2,000 | 0.023529 | $85,000 | 0.043137 | $3,000 | $69,545 | ||
3 | sell | -$1,000 | -0.011111 | $90,000 | 0.032026 | $69,545 | $772.73 | $227 | |
4 | buy | $1,000 | 0.010526 | $95,000 | 0.042552 | ||||
5 | sell | -$1,000 | -0.008333 | $120,000 | 0.034219 |
Now we’ll fill in the blanks and repeat the process. The Total Cost in event 3 will be reduced as some of the $1000 received in sales covers for the total cost of our investment. The new total cost is $3,000 (previous total cost) minus the current Cost of sale $772.73, which equals $2,227.
The total cost accumulates again at the next “buy” row, and the WAC is calculated by dividing this total cost by the number of assets accumulated (like how we calculated it before).
The complete table should look like this:
Event | Action | Paid | BTC qty | BTC price | Total BTC | Total Cost | WAC | Cost of sale | Profit |
1 | buy | $1,000 | 0.019608 | $51,000 | 0.019608 | $1,000 | $51,000 | ||
2 | buy | $2,000 | 0.023529 | $85,000 | 0.043137 | $3,000 | $69,545 | ||
3 | sell | -$1,000 | -0.011111 | $90,000 | 0.032026 | $2,227 | $69,545 | $772.73 | $227 |
4 | buy | $1,000 | 0.010526 | $95,000 | 0.042552 | $3,227 | $75,842 | ||
5 | sell | -$1,000 | -0.008333 | $120,000 | 0.034219 | $2,595 | $75,842 | $632.02 | $368 |
If you would like a copy of the spreadsheet that
In this example, your total crypto profit is $595. You must then add this to your total income in that tax year and match up the tax rate with your income bracket.
Case #4: You made a loss on some transactions
After calculating the cost basis, and if you’ve made a loss on a sale, you can deduct that from the total income, which means you will pay less in tax.
Case #5: You received payment in crypto
Record the fair market value of the crypto at the point at which you’ve received it. Since this is effectively an income, this value is taxable. If you’ve sold this crypto payment at a higher price at a later time, the additional profit is taxable.
This is also true for mining or staking rewards. Note: There are special considerations for crypto received via airdrops or hard forks
For more details: Read this article by the IRD.
The bottom line
Calculating your crypto income is easy when you’ve been keeping track of all your crypto transactions. Easy Crypto keeps a record of all your transactions, and you can easily download them into a spreadsheet to accurately calculate your profits and losses for tax purposes.
Share to
Stay curious and informed
Your info will be handled according to our Privacy Policy.
Make sure to follow our Twitter, Instagram, and YouTube channel to stay up-to-date with Easy Crypto!
Also, don’t forget to subscribe to our monthly newsletter to have the latest crypto insights, news, and updates delivered to our inbox.
Disclaimer: Information is current as at the date of publication. This is general information only and is not intended to be advice. Crypto is volatile, carries risk and the value can go up and down. Past performance is not an indicator of future returns. Please do your own research.
Last updated January 24, 2025