Company and investment

Who actually makes money on prediction markets? On fee mechanics it is makers, and the two loudest numbers behind that answer cannot be sourced

Polymarket charges makers zero and takers up to 0.07. Kalshi's own docs disagree on whether makers pay at all. Our own log is at minus $28.30.

Last checked 5 August 2026 · 9 sources · 3 not yet stamped

Three things, and only one of them is settled. Settled: Polymarket charges makers 0.00 across all eleven fee categories, charges takers between 0.00 and 0.07 depending on category, and Kalshi charges takers 0.07 under a published formula. Every fill has a maker and a taker on it, and on Polymarket only one of the two pays the exchange anything. Unresolved: whether Kalshi charges makers at all. Kalshi's own newsroom says resting orders are fee exempt, Kalshi's own help centre says maker fees are charged, and we have found no public reconciliation of the two, so the maker half of the Kalshi answer cannot be priced here and we do not price it. Not verified: the claim you probably came here for. Our research corpus records an SSRN paper reporting that successful Polymarket accounts are limit-order liquidity providers while unsuccessful ones are market-order takers, and we hold no title, no authors and no link for it. Our own paper trade log sits on the taker side of that line: 10 trades, 6 closed, net minus $28.30 on $500 deployed as of 4 August 2026.

Kalshi's newsroom and its help centre disagree on whether makers are charged at all

The most useful thing on this page is not a number. It is a hole where a number should be.

Kalshi's newsroom states that resting orders are fee exempt. Kalshi's help centre states that maker fees are charged. Both are Kalshi's own publications. We have found no public reconciliation of the two, from Kalshi or from anybody else, and we cannot produce one either.

That is not a rounding disagreement. It is not a question of whether the rate is 0.01 or 0.02. The two documents disagree on whether the maker side of a Kalshi fill pays the exchange anything at all, and that is the difference between resting orders being a viable strategy on Kalshi and being a loss-making one.

What we use internally, and exactly what it is. Our scanner models Kalshi maker fees at a 0.0175 coefficient, applied in the same quadratic form as the taker fee, at fee schedule version 2026-08-04.a. That is our working assumption. It is a constant in our own source code, not a Kalshi figure. Kalshi does not publish it, we did not read it off any Kalshi schedule, and it may be wrong in either direction, including all the way down to zero if the newsroom is the accurate document. It appears nowhere in the tables below, and no conclusion on this page rests on it.

Why the hole is worth more than the number would be. Every comparison page in this niche prices the Kalshi maker side, and to do that you need a figure. There is no citable figure, so one gets picked up somewhere and printed flat. If you find a page publishing a Kalshi maker rate, ask it which Kalshi document the rate came from, and then ask it about the other Kalshi document that says the opposite. Neither of us can answer the first question. We are at least telling you the second one exists.

The honest position on Kalshi is short: taker 0.07, sourced and formula-published. Maker, unresolved at source.

Only one side of every fill pays the exchange, and on Polymarket that side pays nothing

Rates below are from published schedules at fee schedule version 2026-08-04.a.

Venue and categoryMaker rateTaker rate
Polymarket, crypto0.000.07
Polymarket, sports / economics / culture / weather / other0.000.05
Polymarket, finance / politics / mentions / tech0.000.04
Polymarket, geopolitical0.000.00
Kalshi, all categoriesUnresolved at source0.07

The Kalshi maker cell is empty on purpose, and this is the caveat rather than a footnote to it: Kalshi's newsroom says resting orders are fee exempt, Kalshi's help centre says maker fees are charged, no public reconciliation exists, and the 0.0175 coefficient our scanner carries is our assumption rather than Kalshi's published rate. Every Polymarket figure in that table and the Kalshi taker figure come from published schedules. Nothing anywhere below this line is calculated from a Kalshi maker rate.

Polymarket's maker rate is zero. Not a discount, not a rebate tier, not a promotion, and not conditional on volume. Makers are never charged, in every one of the eleven categories. That side of the question can be priced exactly, so the rest of this page prices it and leaves the Kalshi maker side alone.

A worked round trip, same fills, both sides. Take 100 contracts of a Polymarket politics market at $0.60, sold at $0.66. The politics coefficient is 0.04 and the published fee form is rate x C x P x (1 - P).

  • Taker entry: 0.04 x 100 x 0.60 x 0.40 = $0.96
  • Taker exit: 0.04 x 100 x 0.66 x 0.34 = $0.8976
  • Gross move: 100 x $0.06 = $6.00
  • Taker keeps $4.14. The maker on the other side of both fills paid $0.00.

Fees took 31% of the gross move from one side and nothing from the other. The same round trip on Kalshi, using the published taker formula roundup(0.07 x C x P x (1 - P)), costs $1.68 on entry and $1.58 on exit, so $3.26 out of a $6.00 move. The Kalshi maker side of those same two fills cannot be shown, because the rate for it is the thing in dispute.

The dishonest part of that example is the phrase "same fills". A taker chooses the moment and pays for it. A maker chooses nothing, which is the next section but one, and it is the reason a zero fee is not free money.

The paper everyone quotes, which we cannot put in front of you

Our community research pass reached 17 sources after Reddit was blocked at domain level on every attempt: BBB complaint records, Trustpilot themes, Hacker News, SSRN, court filings and Substack. Out of that pass came the finding that now gets repeated everywhere, that successful Polymarket accounts are limit-order liquidity providers and unsuccessful ones are market-order takers.

We cannot cite it. Our notes record the finding and not the document. No title, no author list, no working-paper number, no URL, no read date. It appears elsewhere in our own material, flagged the same way each time, and we are not going to launder it into a citation by restating it with more confidence than we had the first time.

So the honest version is this. The mechanism is verified from the published fee schedules and from how the order book is built. The empirical claim about who ends up ahead is a pointer to a document we have never held. If you find a page stating it as settled fact with a percentage attached, ask that page for the link.

What a maker is paid, and the three things it costs them

The maker is paid the half-spread. That is the only revenue line on this side of the trade, and it is small.

Worked example, illustrative prices. YES best bid $0.58, best ask $0.62. Midpoint is $0.60, the spread is 4 cents, the half-spread is 2 cents. A taker crossing to the ask gives up 2 cents on a 60 cent position, which is 3.3% of stake before any fee at all, and in a politics market the taker fee adds 0.04 x 0.38, which is 1.52% of stake. All-in cost to enter is about 4.8%, and a round trip roughly doubles it. The 3.3% is what the resting order collects. The 1.52% is what the exchange collects.

Then the costs, none of which appear on any fee schedule.

Adverse selection. Your resting order is a free option you have written for the rest of the market, and it gets exercised when it is worst for you. You are not filled at random. You are filled first by whoever saw the news first.

Quote lag. The gap between the world moving and the book updating is the window in which your quote is stale and can be picked off. We cannot measure it. Our signal collector runs a 30-minute cycle, orders of magnitude too slow to observe quote lag, so nothing we publish measures the variable that decides whether making is profitable.

Inventory risk. A maker quoting both sides does not choose which side fills. When one side keeps trading, the maker accumulates a position they never wanted and must either carry it to settlement or pay the half-spread to get out. That is why market-making is not free money even where the maker fee is genuinely 0.00, as it is across all eleven Polymarket categories.

Net of those three, a zero maker fee is a necessary condition for a maker to profit and nowhere near a sufficient one. On Kalshi you cannot even establish the necessary condition, because the fee itself is unresolved.

Break-even is decided by entry price, and the cheap end is the expensive end

Break-even as a share of stake is rate x (1 - P). That is derived arithmetic rather than a published figure: the contract count cancels the price, so entry price alone decides how far the market has to move before the trade was worth doing. Every row below uses a published taker coefficient.

Entry priceBreak-even at 0.04at 0.05at 0.07
$0.053.80%4.75%6.65%
$0.103.60%4.50%6.30%
$0.302.80%3.50%4.90%
$0.502.00%2.50%3.50%
$0.701.20%1.50%2.10%
$0.900.40%0.50%0.70%

At a 0.07 coefficient a contract bought at $0.10 costs 6.3% of stake in fees while the same coefficient at $0.90 costs 0.7%. A ninefold difference, driven by nothing but entry price. The longshot corner of the board looks like the cheap way in and is the most expensive place on the board in percentage terms. You can run your own prices through the Polymarket fee calculator.

Kalshi makes it worse at small size on the taker side, because the fee rounds up to the next whole cent. One contract at $0.03 generates a raw taker fee of $0.002037, which rounds to a full penny: 4.9 times the unrounded rate, and 33% of a $0.03 stake. The Kalshi fee calculator applies the round-up, and the fee math is worked through here.

Every percentage in that table is what a taker has to overcome. The maker's version of the same table is a column of zeros on Polymarket. There is no maker column for Kalshi, and we are not going to build one out of a coefficient Kalshi has not published.

The referral programmes pay nothing on the traders who are actually making money

This is what gives the bonus-chasing genre its shape, and it is verified from Polymarket's own documentation, read direct on 5 August 2026.

The in-product referral programme pays 10% of net trading fees on direct referrals and 5% indirect, behind a $10,000 lifetime trading volume gate, ending at 30 days after signup or Platinum tier, whichever comes first. "Net fees" means what Polymarket keeps after the referred user's own rebate.

Now read that against the fee table at the top of this page. Makers are never charged on Polymarket, so a referred user posting limit orders generates exactly zero referral revenue. So does anyone trading geopolitical markets, where the taker rate is 0.00. The referral line pays only when the person you sent is crossing the spread in a category that charges for it.

Which points the economics of a paid-per-signup page one way and one way only: toward recruiting takers, in crypto and sports, trading often. Nobody has to be dishonest for that to shape what gets written. It is an incentive doing its work quietly.

Kalshi's side does not reach that question at all. Kalshi's own Referral Program FAQ describes an ordinary user refer-a-friend scheme paying trading credits that are not cash, where only profits made trading with them become withdrawable, expiring 7 days from issuance, with the code required within 72 hours of account creation and before the first deposit, and US only. Kalshi publishes no percentage and no payout amount anywhere. Third-party affiliate pages publish "up to $25 per referral" and "lifetime commissions up to 30%" for that same programme. Kalshi's own FAQ publishes neither figure.

Our own log is on the taker side and it is losing

10 trades, 6 closed, net minus $28.30 on $500 deployed, as of 4 August 2026. That is the whole record, and it leads this section, because a page arguing that takers pay while quietly being a taker would be worth nothing.

Five positions opened on 28 July are worth showing individually, because the arithmetic is the point. All figures below come from collector B, the 500-market signal scanner. We never compute a metric across collector B and collector A, the roughly 9,000-market history collector holding 11,000 resolved outcomes. Different universes, different start times. A blended number would be unfalsifiable, which is precisely the defect we document in competitors.

Entry priceLive rateBreak-evenEntered at
$0.92960.040.28%3.80%
$0.87840.040.49%2.15%
$0.85730.050.71%1.59%
$0.86930.070.91%1.20%
$0.29650.042.81%1.20%

The last row was a guaranteed loss at the moment of entry, before any market movement at all. It needed 2.81% of stake to clear the fee and it was opened on a claimed edge of 1.20%. The row above it was opened on the identical claimed edge of 1.20% and was fine, because at $0.8693 break-even is 0.91%. Same edge number, opposite economics. The cause is that our scanner applied a flat percentage threshold to a fee that is a parabola in price. That threshold has not been replaced yet, and the trade stays in the log.

At entry, the one-leg book was plus $4.73 and the two-leg book, which adds a Kalshi leg priced at the published 0.07 taker rate, was minus $3.48 before the market moved at all. Fee survival was 4 of 5 on one leg and 2 of 5 on two legs. Do not read those as rates. n = 5. Note what the two-leg figure does not include: any Kalshi maker cost, because there is no rate we are willing to publish for it.

One more thing about our own tool, because it bears on the question directly. The scanner finds momentum, not arbitrage. Intra-market arbitrage is dead on modern Polymarket, where Gamma prices sum to exactly $1.00. Its latest logged run scanned 500 markets and returned 29 signals, recorded as 6 spread, 22 volume and 3 momentum. A per-run count is not a rate either, and that breakdown does not add up to the total, which is dealt with below rather than tidied away.

Claims about who makes money that we are not going to repeat

  • "85% win rate." One competitor scanner publishes that figure alongside "The #1 Source" in its title tag while ranking for nothing. No published methodology, no sample size, no trade log. We are not naming it to attack it, we are naming the shape: an unfalsifiable performance claim with nothing underneath it.
  • A wash-trading estimate of roughly a quarter of Polymarket trades. It appears in our notes with no named author and no paper. Not repeated here as a finding.
  • "Just buy No on everything." The community argued this over 471 points and 276 comments and never resolved it, because the two sides were quoting different things: "73% of Polymarket markets resolve to No" against "the average No price is already 73 cents". If both are true, the edge is already in the price. The only actual experiment in that thread was a real $100 wet-run that lost about $5 over a month, and we take that apart here.
  • Any Kalshi maker rate, ours included. We hold a 0.0175 coefficient in our scanner and we are not publishing a comparison built on it while Kalshi's own two documents contradict each other.

What we could not verify

This section is the point of the page.

  • Whether Kalshi charges makers at all. Kalshi's newsroom states resting orders are fee exempt. Kalshi's help centre states maker fees are charged. Both are Kalshi's own publications and we have found no public reconciliation. We publish no Kalshi maker rate anywhere on this page. Our scanner carries 0.0175 at fee schedule version 2026-08-04.a as a working assumption of ours, and it may be the wrong number or the wrong idea entirely.
  • The SSRN paper. No title, no authors, no link, no read date. It is the central empirical claim on this topic and we cannot produce the document.
  • Whether Kalshi's round-up rule applies on the maker side. The published formula roundup(0.07 x C x P x (1 - P)) is stated for takers. Since the maker rate is itself unresolved, the rounding question sits behind an unanswered one, and at small size rounding matters more than the rate: a single $0.03 contract pays 33% of stake on the taker side.
  • Special-event fee tiers on Kalshi. Acknowledged by Kalshi to exist for elections, awards ceremonies and large sporting championships. Never quantified anywhere public. We are not going to guess a tier.
  • Our own scanner's signal breakdown. The latest logged run records 29 signals with a split of 6 spread, 22 volume and 3 momentum. Those three add to 31, not 29. We have not reconciled the total against the split, so treat both as recorded rather than as checked.
  • What share of volume on either venue is maker-side. Not published, and we have not measured it. Without that, "makers make the money" is a statement about incentives rather than about totals.
  • Whether any individual trader is profitable over a long run. No audited account-level record has been published on either venue, ours included. Our log is 10 trades. That is an anecdote with a timestamp, not evidence.
  • Adverse selection cost, quote lag and inventory cost. All three decide whether making pays, and a 30-minute collection cycle cannot see any of them.

Nobody pays us for this page

PredictionEdge currently takes no referral revenue, and whether it ever will is undecided. There is no signup link on this page. A Polymarket referral code does exist on our scanner page, and it has earned nothing to date.

That disclosure carries more weight here than usual, because the argument on this page runs against the interest of every site that does take referral revenue. Their programme pays on taker fees, so it pays them to recruit takers, and this page says takers are the side that pays. Apply the same test to us: our log is public, it is down $28.30, and the trade that could never win is still in it.

Questions people actually type

Who makes money on Polymarket? On fee mechanics, makers. Polymarket charges makers 0.00 across all eleven categories and charges takers 0.00 to 0.07 depending on category, so on every fill only one side pays the exchange. Our corpus records an SSRN paper saying successful accounts are limit-order providers, but we hold no link for it, so treat that as a pointer and not a citation.

Does Kalshi charge maker fees? Nobody outside Kalshi can answer that from published sources. Kalshi's newsroom says resting orders are fee exempt and its help centre says maker fees are charged, and no public reconciliation of the two exists. The taker side is settled at 0.07 under roundup(0.07 x C x P x (1 - P)). Any page quoting you a Kalshi maker rate is quoting something Kalshi has not published.

Is it better to be a maker or a taker on Kalshi? It cannot be priced yet. A Kalshi taker pays 0.07, which is $1.68 on 100 contracts entered at $0.60, and that figure is published. The maker side is unresolved because Kalshi's own two documents disagree on whether resting orders are charged at all, so any ratio between the two sides would be invented rather than calculated.

Why do most prediction market traders lose money? Because a taker pays twice before the market moves: the half-spread and the fee. On a 4 cent spread with a $0.62 politics contract that is 3.3% of stake plus 1.52% of stake, about 4.8% to enter and roughly double for a round trip. A view has to be worth more than that before it is worth having.

Do cheap contracts give better odds? Not after fees. Break-even as a share of stake is rate x (1 - P), so at a 0.07 coefficient a $0.10 contract needs 6.3% and a $0.90 contract needs 0.7%. Kalshi's taker round-up makes it worse at small size: a single contract at $0.03 pays a full penny, which is 33% of stake.

Is market making on Polymarket free money because the maker fee is zero? No. Zero is the fee, not the cost. A resting order is an option you wrote for the market, exercised against you when the news breaks, and a maker never chooses which side fills. Our own collection runs on a 30-minute cycle, far too slow to measure quote lag, so we cannot put a number on that cost.

Has PredictionEdge made money doing this? No. The public paper log is 10 trades, 6 closed, net minus $28.30 on $500 deployed as of 4 August 2026. One position was arithmetically unwinnable at entry: opened on a claimed 1.20% edge at $0.2965, where the fee alone is 2.81% of stake. The scanner fix behind that has not shipped.

Do referral programmes pay on profitable traders? Largely not. Polymarket pays 10% of net trading fees on direct referrals, and Polymarket makers are never charged fees, so a referred trader posting limit orders generates zero. Geopolitical markets at a 0.00 taker rate generate zero too. The programme also ends at 30 days or Platinum tier, whichever comes first.

Sources

3 of these 9 entries are held in our notes but the primary document has not been re-read and linked yet. They are marked below rather than mixed in with the rest.

  1. https://docs.polymarket.com/ Polymarket documentation. Per-category taker rates and the zero maker rate. Gamma exposes bestBid and bestAsk only, which is why YES and NO come out of one book.
  2. https://docs.polymarket.com/programs/referral-program 10% of net trading fees direct, 5% indirect, $10,000 lifetime volume gate, ends at 30 days or Platinum tier. Read direct 5 Aug 2026.
  3. https://partners.dub.co/polymarket Dub partner programme. $0.01 per click, $10 per first deposit, no volume gate stated on the page. Read direct 5 Aug 2026.
  4. https://docs.kalshi.com/ Kalshi developer documentation. The taker formula `roundup(0.07 x C x P x (1 - P))`, sub-penny fee rounding, whole-cent rebate accumulator. No maker rate is taken from here.
  5. https://help.kalshi.com/ Kalshi Help Centre. The article stating that maker fees are charged, which is one half of the documented contradiction, and the Referral Program FAQ read direct 5 Aug 2026. Exact article URL to be stamped before publish.not yet stamped
  6. Kalshi newsroom statement that resting orders are fee-exempt : the other half of the contradiction. URL to be stamped before publish. Nothing on this page is calculated from either half.not yet stamped
  7. SSRN working paper on Polymarket account profitability : cited as a source we CANNOT link. No title, no authors and no URL exist anywhere in our notes. Recorded secondhand from our community research pass. To be stamped or struck before publish.not yet stamped
  8. PredictionEdge fee model, schedule version 2026-08-04.a : supplies the Polymarket per-category rates and the Kalshi taker formula used in the tables below. It also carries a Kalshi maker coefficient of 0.0175, which is our own working assumption and is not published by Kalshi. No figure on this page is derived from it.
  9. PredictionEdge paper trade log, trade_log.csv, collector B : 10 trades, 6 closed, net minus $28.30 on $500 deployed, as of 4 Aug 2026