Last month I bought 200 contracts on a Fed decision market at 67 cents each. The trade executed, I waited, Powell did his thing, and I sold out at 81 cents. Nice little profit, right? Then I looked at my actual P&L and realized I'd given back almost a third of my gains to fees. That's when I decided to actually sit down and understand what Kalshi charges, because "almost a third" felt wrong. Turns out I was doing the math incorrectly, but the exercise was useful. Here's everything I learned about Kalshi fees explained in plain terms.
Kalshi is a CFTC-regulated exchange, which means it operates differently than offshore prediction markets. You deposit USD, you go through KYC, and you trade contracts that settle at either $0 or $1. Every contract represents a yes/no outcome on some real-world event.
The fee structure is straightforward once you understand it:
That 7% number trips people up, including me at first. It's not 7% of your position size. It's 7% of the maximum profit you could make if the contract settles in your favor.
Let me walk through an example because this confused me for weeks.
Say you buy a YES contract at 40 cents. If you win, the contract pays $1.00. Your maximum profit is 60 cents (the dollar payout minus your 40-cent cost). Kalshi takes 7% of that 60 cents, which equals 4.2 cents.
But here's the cap: the fee never exceeds 7 cents per contract, no matter how large your potential profit is.
So if you buy a YES at 5 cents (potential profit of 95 cents), 7% would be 6.65 cents. You pay 6.65 cents, not 7, because you're still under the cap.
If you buy a YES at 2 cents (potential profit of 98 cents), 7% would be 6.86 cents. Still under the cap.
The cap really only kicks in on extreme longshots or when you're selling contracts at very low prices.
Same logic applies. If you sell a YES contract at 70 cents, you're essentially betting NO. Your maximum profit is 70 cents (you keep the premium if the event doesn't happen). 7% of 70 cents is 4.9 cents.
The fee gets charged when you enter the position. If you lose, you already paid the fee on entry, but there's no additional fee. You just lose your cost basis.
Let me use some real Kalshi markets to show how this plays out.
Fed Decision Markets (KXFEDDECISION series): These often trade in the 80-95 cent range for the expected outcome. If you're buying YES at 90 cents, your max profit is 10 cents. 7% of 10 cents is 0.7 cents. That's a pretty small fee relative to position size.
CPI Markets (KXCPIYOY series): These can be more spread out. If you're buying a bracket at 25 cents, your max profit is 75 cents. 7% of that is 5.25 cents. On a 25-cent contract, that's a meaningful percentage of your risk capital.
Election Markets (KXPRESPARTY): When contracts trade near 50 cents, your max profit is 50 cents either way. 7% equals 3.5 cents. Reasonable.
The pattern here: fees hurt more on longshot bets and less on heavy favorites.
I spent my first year on Polymarket before the geofence pushed US users off. Over there, fees were baked into the spread via the AMM, plus gas costs if you were moving funds around. It was harder to calculate your true cost per trade.
Kalshi's model is more transparent. You see the fee before you confirm. There's no blockchain gas, no slippage from automated market makers, no conversion costs from stablecoins.
The tradeoff? Kalshi's 7% can feel steep compared to traditional equity markets where you pay basically nothing per trade. But prediction markets aren't equity markets. The contracts are binary, liquidity is thinner, and the regulatory overhead is real.
I run a Telegram channel over at @Kalshi_market where we discuss this stuff regularly. The consensus among active traders is that the fees are acceptable on liquid markets but can eat into returns on low-probability, low-volume contracts.
Kalshi doesn't charge withdrawal fees for standard ACH transfers. That's genuinely good. Some offshore books nickel and dime you on every withdrawal.
A few things to keep in mind:
After a year of trading here, I've developed some habits:
Trade liquid markets. Tighter spreads mean the fee is a smaller percentage of your edge. Fed decisions, major economic data, and political markets tend to have the best liquidity.
Size appropriately. The fee is per contract. If you're trading 10 contracts vs 1,000 contracts, your percentage cost is the same. Don't overtrade, but don't undertrade either.
Hold to settlement when conviction is high. If you buy at 40 cents and the market moves to 55 cents, you can sell and lock in profit (paying another fee on the new position if you flip). Or you can hold to settlement and only pay the one entry fee. Depends on your conviction.
Avoid extreme longshots unless you have real edge. Buying a contract at 3 cents means 7% of 97 cents (6.79 cents) in fees. If you're wrong, you lost 3 cents plus the fee. If you're right, you gained 97 cents minus the fee. The math still works if you have edge, but the fee is a larger percentage of your risk on longshots.
No. You pay the 7% fee (capped at 7 cents) when you enter a position, calculated on your potential profit. If the contract settles against you, you lose your cost basis, but there's no additional exit fee. This is different from some platforms that charge on both sides of a trade.
Kalshi doesn't charge fees for ACH deposits or withdrawals. Your bank might have its own policies on wire transfers, but standard ACH is free on Kalshi's end. The main friction is the time it takes for ACH to clear, which can be a few business days depending on your bank.
The percentage impact is the same whether you trade 1 contract or 1,000 contracts. However, the bid-ask spread on illiquid markets can hurt small traders disproportionately. If you're trading a few contracts on a wide-spread market, the spread cost might exceed the fee cost. Stick to liquid markets when trading small.
Yes. When you enter a trade, the fee is calculated and displayed before you confirm. It's deducted from your account at the time of trade execution. You don't have to manually calculate or pay anything separately. Your P&L in the interface is already net of fees, which makes tracking performance straightforward.
Not financial advice. I trade my own money and you can lose yours. Do your own research.