Kalshi's CSV is in cents, not dollars
This is the single most common mistake people make doing their Kalshi taxes by hand, and it is an easy one to miss. The trade history CSV you export from Kalshi stores monetary values in cents, not dollars. Read the numbers as dollars and every figure on your return comes out one hundred times too large.
The fix is simple once you know to look for it. This guide shows what the columns actually contain, how to convert them, and the spots where the cents convention quietly trips people up.
- Kalshi prices contracts from 1 to 99 cents, and its data exports keep everything in that same cents unit.
- Divide every monetary column by 100 to move from cents to dollars.
- Say you bought 100 contracts at a price of 40 and sold at 55.
- Fees are in cents too, so a fee shown as 35 is 35 cents, not 35 dollars.
- ContractTax reads the Kalshi CSV in its native cents format and converts everything to dollars automatically, so the cost basis, proceeds, fees, and net P&L it produces are already in the right unit.
Why the numbers look wrong
Kalshi prices contracts from 1 to 99 cents, and its data exports keep everything in that same cents unit. So a fill recorded as 4200 is not 4,200 dollars, it is 42 dollars even. A price of 65 means 0.65 dollars, not 65 dollars.
If your exported totals look absurdly large, a few hundred trades adding up to millions, the cents convention is almost always why. Nothing is broken, the values just need dividing by 100 to become dollars.
How to convert it
Divide every monetary column by 100 to move from cents to dollars. That applies to entry price, exit price, the amount paid or received, and fees. Quantities, the number of contracts, are already whole numbers and do not get divided.
In a spreadsheet, the cleanest approach is to add a new column that divides the raw cents value by 100, rather than editing the originals in place, so you can always check your work against the export.
A worked example
Say you bought 100 contracts at a price of 40 and sold at 55. In cents the export shows entry 40 and exit 55. Converted to dollars that is 0.40 and 0.55 per contract. Your cost was 100 times 0.40, which is 40 dollars, and proceeds were 100 times 0.55, which is 55 dollars, a 15 dollar gain before fees.
Read as dollars by mistake, those same rows would imply a 4,000 dollar cost and a 5,500 dollar sale, overstating both your basis and your gain by a factor of one hundred.
Where the cents convention bites
Fees are in cents too, so a fee shown as 35 is 35 cents, not 35 dollars. Forgetting to convert fees inflates your deductible costs and throws off your net.
Partial fills compound it. A single order that filled in pieces shows several rows, each in cents, and summing them before converting carries the one-hundred-times error straight into your cost basis.
Where ContractTax fits
ContractTax reads the Kalshi CSV in its native cents format and converts everything to dollars automatically, so the cost basis, proceeds, fees, and net P&L it produces are already in the right unit. You never have to remember to divide anything.
It is educational software, not tax advice, but it removes the most common source of a wildly wrong return before you ever start filling in forms.