Maker vs taker: Polymarket makers pay zero, and nobody can say what Kalshi makers pay (August 2026)
Polymarket charges makers 0.00, a settled fact. Kalshi's own two documents disagree on whether makers are charged at all.
Posting a limit order instead of hitting the ask is cheaper on both venues, but only one of the two numbers involved actually exists. Polymarket charges makers 0.00 in all eleven categories and takers between 0.00 and 0.07 depending on category, read per market from the Gamma API. On the Kalshi side there is no maker figure to quote, because Kalshi's own two publications contradict each other on whether resting orders are charged at all: the newsroom says they are fee-exempt, the help centre says maker fees are charged, and nobody has reconciled the two in public. That leaves the cost of a Kalshi limit order as a bracket rather than a price. What almost nobody explains is what the maker's saving, whatever its exact size, is compensation for. It is not the venue rewarding patience. It is the price of writing a free option to every better-informed trader in the book, and that option gets exercised at exactly the moment you would rather it did not. Your resting order fills when you are wrong.
The most interesting fact on this page is a hole in Kalshi's documentation
Start here, because everything downstream inherits it.
Kalshi publishes a taker fee and a formula for it: roundup(0.07 x C x P x (1 - P)), on docs.kalshi.com, written for engineers. That is settled and we use it throughout.
On the maker side, two Kalshi documents say incompatible things. The newsroom states that resting orders are fee-exempt. The help centre states that maker fees are charged. One of those means a Kalshi limit order costs nothing to execute and the other means it costs something. Kalshi has not said which is current, which is superseded, or whether the two describe different products. No competitor page we have audited mentions the contradiction at all; they pick whichever document they found first and present it as the fee.
We cannot resolve it either, and we hold no canonical URL with a read date for the newsroom statement, which is why it is flagged in the front matter rather than passed off as a citation.
Our scanner does have to pick a number, so it picks one and labels it as ours. scanner/fees.py:74 carries KALSHI_MAKER_RATE = 0.0175, commented in the source as "quadratic, NOT a flat percentage", and line 152 applies it in exactly the same quadratic shape as the taker rate. That is a working assumption inside our own code. It is not a Kalshi disclosure, it has never appeared in a Kalshi fee schedule we have read, and it should not be repeated as one. It is worth noticing that 0.0175 is exactly one quarter of the 0.07 taker rate, which is the shape of an assumption someone made rather than a schedule someone published.
So everywhere below, the Kalshi maker cost appears as a range with both ends named: 0.00 under the newsroom reading, and 0.0175 under our scanner's working assumption. Where a table depends on it, the range is inside the table.
Neither venue pays a maker rebate, and only one of them has a maker number you can rely on
The word "rebate" comes from equity and crypto exchanges, where the maker side of a trade can receive a payment from the venue. Neither of these venues does that.
| Venue | Maker coefficient | Taker coefficient | Who pays the maker |
|---|---|---|---|
| Polymarket | 0.00, all eleven categories, read from the Gamma API feeSchedule | crypto 0.07 · sports, economics, culture, weather, other 0.05 · finance, politics, mentions, tech 0.04 · geopolitical 0.00 | Nobody. The venue charges the maker nothing and pays nothing |
| Kalshi | Unresolved. Newsroom: resting orders fee-exempt, so 0.00. Help centre: maker fees are charged, no coefficient we have read. Our scanner assumes 0.0175 as a working figure of our own | 0.07, roundup(0.07 x C x P x (1 - P)), docs.kalshi.com | Nobody. The venue pays the maker nothing under either reading |
Polymarket's figures are read per market from the feeSchedule object on the Gamma API, schedule version 2026-08-04.a. Zero is zero there, not a discount off a headline rate, and it applies in every category including the ones where takers pay the most.
So where does a maker's compensation come from? From the taker, through the spread. On an order-book exchange there is no house taking the other side, and the amount by which the two sides of a book exceed $1.00 is the bid-ask spread, earned by whoever is quoting it. The Gamma API's reported prices sum to exactly $1.00, which is why intra-market arbitrage does not exist on modern Polymarket; the spread you actually cross lives in bestBid and bestAsk.
The clean demonstration is Polymarket's geopolitical category, where the coefficient is 0.00 on both sides. The venue takes nothing from either party, and the maker still gets paid, entirely by the taker, entirely through the half-spread. That is the whole mechanism with the fee arithmetic removed. If the Kalshi newsroom reading turns out to be the correct one, Kalshi's maker side works the same way.
One book, four routes, and the Kalshi maker route is a bracket rather than a price
Take a single market with a best bid of $0.58 and a best ask of $0.62. Midpoint $0.60, spread 4 cents, half-spread 2 cents. You want 100 YES contracts. These are illustrative prices chosen to show the arithmetic, not a market we traded. The same arithmetic runs on live prices in our Kalshi fee calculator and Polymarket fee calculator.
Route A, Kalshi taker. Hit the ask at $0.62. Stake $62.00. Fee is roundup(0.07 x 100 x 0.62 x 0.38) = roundup($1.6492) = $1.65. Total outlay $63.65, an effective entry of $0.6365. Sourced end to end.
Route B, Kalshi maker. Rest a bid at $0.58 and wait. If it fills, stake $58.00. The fee is where the documentation runs out:
- Newsroom reading, resting orders fee-exempt: fee $0.00, outlay $58.00, effective entry $0.5800.
- Our scanner's working assumption, 0.0175 applied quadratically:
roundup(0.0175 x 100 x 0.58 x 0.42)=roundup($0.4263)= $0.43, outlay $58.43, effective entry $0.5843.
The true figure is one of those two, or something else the help centre knows and has not put in a schedule. The whole width of the uncertainty on a 100-contract entry is 43 cents, which is worth keeping in proportion: it is smaller than the rounding on the taker leg.
Measure all four routes against the $60.00 midpoint, because the midpoint is the only neutral reference:
| Route | Outlay | Against midpoint | Per contract |
|---|---|---|---|
| Kalshi taker at $0.62 | $63.65 | $3.65 worse | 3.65c paid |
| Kalshi maker at $0.58, newsroom reading (fee-exempt) | $58.00 | $2.00 better | 2.00c credit |
| Kalshi maker at $0.58, our 0.0175 working assumption | $58.43 | $1.57 better | 1.57c credit |
| Polymarket politics taker at $0.62 | $62.9424 | $2.94 worse | 2.94c paid |
| Polymarket maker at $0.58, any category | $58.00 | $2.00 better | 2.00c credit |
Two flags belong inside this table rather than under it. The two Kalshi maker rows are the same trade under two contradictory Kalshi documents, not two options you can choose between. And the Polymarket politics taker figure uses the 0.04 coefficient, 0.04 x 100 x 0.62 x 0.38 = $0.9424, carried unrounded because we do not know whether Polymarket rounds fractional fees or in which direction, and we have never fetched a human-readable Polymarket fee schedule.
The maker's gross credit is 2.00 cents a contract on Polymarket, and between 1.57 and 2.00 cents on Kalshi depending on which of Kalshi's documents is right. That is the whole prize. On a 60-cent contract, 2.00 cents is 3.3% of stake, which sounds substantial until you compare it to how far an event contract moves on one headline.
Notice what the bracket does to the ranking: on this book the Kalshi maker beats the Polymarket taker under either reading, and ties or beats the Polymarket maker. The unresolved number does not change the order of the routes here. It changes the size of the gap, not the sign of it, and that is true of every comparison on this page.
Your resting order is a free option you wrote for the rest of the market
Here is the part the fee tables cannot show you, and the part that does not depend on any unresolved coefficient.
A taker chooses the moment. You decide the news is priced wrong, you cross the spread, you pay 3.65 cents, and the cost is known, one-time and bounded before you click. That is what immediacy costs.
A maker does not choose the moment. Your bid at $0.58 sits in the book and somebody else decides when it becomes a trade. Two different populations will sell into it. One is a trader who wants out for reasons that have nothing to do with the contract's value: rebalancing, a margin need, boredom. Selling to that person is the good case and it is where the 2 cents comes from. The other is a trader who knows something you do not, and the thing they know is that $0.58 is too high.
Conditional on being filled, you are more likely to have traded against the second population than the unconditional mix suggests, because the second population is the one actively looking for stale quotes. That is adverse selection in one sentence: your order is not filled at random, it is filled first by whoever saw the news first. The vocabulary here is collected in the glossary.
The mechanism underneath it is quote lag, the delay between the world moving and the book updating. During that window your quote is stale and it is the cheapest thing on the screen. You wrote an option, the market pays you a premium of about 2 cents for it, and it gets exercised precisely when it is worst for you. Deliberate stale-quote hunting shades into the behaviour covered in market manipulation, but most of it is just somebody with a faster news feed.
The community phrase for doing this without pricing it is picking pennies on an active railroad track.
How much adverse selection erases the credit, and it is less than you would guess
You can invert the arithmetic without needing a single statistic, which is useful because nobody has published these statistics, including us.
Let f be the fraction of your fills that arrive on a news tick, and m be the average number of cents fair value moves against you on those fills. Your resting order breaks even against simply not trading when f x m equals your credit.
| Share of fills that are informed (f) | Adverse move that wipes out a 1.57c credit | Adverse move that wipes out a 2.00c credit |
|---|---|---|
| 1 in 4 | 6.3 cents | 8 cents |
| 1 in 10 | 15.7 cents | 20 cents |
| 1 in 20 | 31.4 cents | 40 cents |
| 1 in 50 | 78.5 cents | 100 cents, which cannot happen |
The two columns are the two ends of the bracket. 2.00 cents is the Polymarket credit, which is settled, and is also the Kalshi credit if the newsroom's fee-exempt statement is the current one. 1.57 cents is the Kalshi credit under our scanner's 0.0175 working assumption. Kalshi's true row sits somewhere between the two columns and Kalshi has not said where.
Read the middle row carefully. If one fill in ten arrives immediately before a 20-cent move against you, market-making that contract is a coin flip after costs, and it is a losing one anywhere below 20 cents. Event contracts move 20 cents on a single headline routinely. The question is not whether the moves are big enough to matter, it is what f actually is on your particular book, and that is the number nobody has.
Two honest caveats on this table. First, f and m are assumed inputs, not measurements. We have not measured them and we have found no published measurement of them for either venue. Second, the table assumes you flatten at fair value afterwards, which a real maker often cannot do, because the exit is a second trip across the same spread.
Notice that the unresolved Kalshi coefficient moves the break-even move by about 4 cents at f = 1 in 10. Adverse selection swamps it. The number Kalshi has not published is not the number that decides whether making pays.
The cheap end of the board offers the biggest discount and the worst conditions to collect it
Because contract count cancels out of the fee formula, the fee as a share of your stake is simply rate x (1 - P). That is derived arithmetic, not a published figure, and it is worked through step by step in Kalshi fee math. Per dollar of stake, before rounding:
| Entry price | Kalshi taker, 0.07, sourced | Maker if fee-exempt (newsroom) | Maker at our 0.0175 assumption | The gap, whole range |
|---|---|---|---|---|
| $0.05 | 6.65% | 0.00% | 1.66% | 4.99% to 6.65% |
| $0.10 | 6.30% | 0.00% | 1.58% | 4.73% to 6.30% |
| $0.30 | 4.90% | 0.00% | 1.23% | 3.68% to 4.90% |
| $0.50 | 3.50% | 0.00% | 0.88% | 2.63% to 3.50% |
| $0.70 | 2.10% | 0.00% | 0.53% | 1.58% to 2.10% |
| $0.90 | 0.70% | 0.00% | 0.18% | 0.53% to 0.70% |
Only the first column is sourced to Kalshi. The third column is our own code's assumption, reproduced here so the arithmetic is auditable, not because Kalshi has published it. The fourth column is the honest width of what a Kalshi maker saves.
The shape is the same at both ends of the bracket: the maker discount is worth roughly ten times as much at $0.05 as it is at $0.90. That is the longshot corner of the board, and it is also where books are thinnest, where a modest order moves the price against you immediately, and where a stale quote is least likely to be corrected before somebody picks it off. The place where making pays best is the place where making is hardest. Both facts come from the same feature of the market, which is that few people are quoting there.
Kalshi's rounding can delete the maker discount entirely on small cheap orders
Kalshi rounds the computed fee up to the next whole cent, which is documented on docs.kalshi.com. That interacts badly with the longshot corner, and here the unresolved coefficient genuinely does change the answer.
Take one contract at $0.03. The taker fee is 0.07 x 1 x 0.03 x 0.97 = $0.002037, which rounds up to a full cent, a multiplier of 4.9 on the unrounded rate and 33% of your 3-cent stake.
- Under the newsroom's fee-exempt reading the maker pays nothing, and the maker discount at this size is the entire cent, which is the largest proportional discount anywhere on the board.
- Under our scanner's 0.0175 working assumption the maker fee is
0.0175 x 1 x 0.03 x 0.97= $0.00050925, which also rounds up to a full cent, a multiplier of 19.6. Both sides pay exactly one cent and the maker discount is worth nothing.
Those are opposite conclusions from the same trade, which is a fair measure of how much the unreconciled documentation actually costs a small trader. Working through the buckets under the assumption, you need five contracts at $0.03 before the rounded maker fee and the rounded taker fee land in different cents: at four contracts both round to $0.01, at five the taker's $0.010185 rounds up to $0.02 while the maker's $0.0025 stays at $0.01.
At mid-board the picture is normal again under either reading. One contract at $0.50: the taker's $0.0175 rounds to 2 cents, while the maker pays 1 cent under the assumption and nothing under the newsroom reading. Kalshi's documentation also describes a whole-cent rebate accumulator, written for engineers rather than traders, which is the mechanism that carries these sub-penny fragments. We have not modelled it and we are not going to describe behaviour we have not reproduced.
What actually stops you being a maker is not the fee
Three costs sit outside every table on this page, and all three are larger than any coefficient argued about above.
Non-fill. A resting order costs nothing to place and may never trade. If your analysis was right and your bid sat 2 cents under the price the whole way up, your analysis earned you zero. The taker's 3.65 cents bought a certainty the maker did not get.
Inventory risk. A maker quoting both sides does not choose which side fills. When one side keeps trading, you accumulate a position in the direction you did not pick, and your only exits are holding it to settlement or paying the half-spread to get out. Making is not free money even where the maker fee is known to be 0.00, as it is across all eleven Polymarket categories.
The round trip. Every figure above is an entry. Exiting the same position as a taker gives back roughly what making saved you. The maker edge is only real if you can rest on both legs, and resting on both legs is the thing adverse selection makes expensive. Who actually makes money on these venues is the same question asked from the other end.
What we could not verify
This section is the point of the page.
- Whether Kalshi charges makers at all. The newsroom says resting orders are fee-exempt; the help centre says maker fees are charged. We hold no canonical URL with a read date for either statement, and we have never read a maker coefficient in a Kalshi fee schedule. Every Kalshi maker figure on this page is therefore a bracket, and the 0.0175 end of it is our own code's assumption, not Kalshi's number.
- Whether the two Kalshi documents are describing the same thing. They may be current and superseded, or general and product-specific. Nobody has said, and we are not going to guess a reconciliation and present it as one.
- Whether Polymarket rounds fractional fees, and how. Kalshi's formula rounds up explicitly. We have Polymarket's coefficients from the Gamma API and no human-readable Polymarket fee schedule page.
docs.polymarket.com/programs/builders/feeshas never been fetched by this project. - The values of f and m for any real book. The break-even table above is arithmetic on assumed inputs. Neither we nor any source we have found has measured what share of resting-order fills are informed, or how far price moves against them afterwards, on either venue.
- Anything at all about quote lag from our own tooling. Our collector runs a 30-minute cycle, which is orders of magnitude too slow to observe a stale quote being picked off. We publish no measurement of adverse selection because we cannot make one.
- Kalshi's special-event fee tiers. Acknowledged by Kalshi to exist for elections, awards ceremonies and large sporting championships, quantified nowhere public. We have no rate for any of them, maker or taker, and we are not going to infer one.
- The SSRN finding that successful Polymarket accounts are limit-order liquidity providers and unsuccessful ones are market-order takers. It is the single most relevant piece of evidence to this page's thesis and it sits in our corpus secondhand with no document we can link. Treat it as a pointer.
- Whether posting limit orders is a good idea for you. Nothing here is advice. It is arithmetic on published coefficients, one clearly labelled assumption of our own, and one mechanism that no coefficient prices.
Nobody pays us for this page, and the incentive on this exact topic is worth naming
PredictionEdge currently takes no referral revenue, and whether it ever will is undecided. A Polymarket referral code exists on our scanner page and has earned nothing to date.
The reason to say that on this page in particular: Polymarket's referral programme pays a share of net taker fees. Makers are never charged, so a referred trader who posts limit orders generates exactly zero for whoever referred them, as does anyone trading geopolitical markets at a 0.00 coefficient. Any site paid by that programme has a direct financial interest in you being a taker. The point stands regardless of who is paid: check what the page recommending an order type gets paid when you follow the recommendation.
Our own paper log is public and unflattering: 10 trades, 6 closed, net minus $28.30 on $500 deployed as of 4 August 2026. Every fee in it is computed at taker rates. One position, 4ad1b0, was arithmetically unwinnable at entry: opened on a claimed 1.20% edge at a price of $0.2965, where the fee alone is 2.81% of stake and the trade needs a 3.52% gross edge to break even on one leg. It was opened because our scanner uses a flat percentage threshold that ignores the price-dependence shown in the table above. That is the same defect this page is about, committed by our own tool, and it has not been fixed. A maker-only version of that log would carry no Polymarket fee at all, and we have not rebuilt it that way, because a resting order that never fills is not the same trade.
The scanner is a momentum detector, not an arbitrage detector, and we say so rather than let the word do work it has not earned.
The questions people actually type
Is it cheaper to use a limit order on Polymarket? Yes, and by the full taker coefficient, because Polymarket charges makers 0.00 in all eleven categories, read from the Gamma API. A taker pays 0.07 in crypto, 0.05 in sports, 0.04 in politics and 0.00 in geopolitical markets. On a 100-contract entry at $0.62 in a politics market that is $0.9424 of fee against nothing, plus the 2 cents a contract of half-spread you stop paying.
Does Kalshi charge maker fees or not? Kalshi's two own publications disagree and nobody has reconciled them publicly. The newsroom says resting orders are fee-exempt; the help centre says maker fees are charged. We have never read a maker coefficient in a Kalshi fee schedule. Our scanner assumes 0.0175 internally so it can compute something, which is our figure, not Kalshi's. Treat Kalshi maker cost as somewhere between 0.00 and roughly 0.0175 until Kalshi answers directly.
What is the difference between a maker and a taker fee? A taker hits an order already resting in the book and consumes liquidity. A maker posts an order that rests until somebody trades against it. Polymarket charges makers 0.00 and takers 0.00 to 0.07 by category. Kalshi charges takers 0.07 on roundup(0.07 x C x P x (1 - P)), and its maker side is documented in two contradictory places.
Why do market makers get a discount? Because they are carrying a risk the taker is not. A resting order fills when somebody else chooses, and the traders most motivated to choose are the ones who just learned something. On the worked example the maker's credit is 2.00 cents a contract on Polymarket. One informed fill in ten preceded by a 20-cent move cancels it exactly.
Is adverse selection a real cost or just theory? It is real and it is unmeasured, which is a different thing from theoretical. Nobody has published f, the informed share of fills, or m, the average adverse move, for either venue. What is measurable is the credit it has to cover: 2.00 cents a contract on Polymarket, and 1.57 to 2.00 on Kalshi in the example here. We cannot measure it either; our collector runs a 30-minute cycle.
Are cheap contracts a good place to post limit orders? The discount is largest there and the conditions are worst there. At $0.05 a Kalshi maker saves between 4.99% and 6.65% of stake against 0.53% to 0.70% at $0.90. Those books are also thinnest, and rounding can erase the saving completely: under our scanner's assumption one contract at $0.03 costs a whole cent whether you make or take, and you need five contracts before the two prices differ.
Will posting limit orders make me profitable? Unknown, and be suspicious of anyone who says otherwise. Our corpus holds an SSRN paper reporting that successful Polymarket accounts are limit-order providers and unsuccessful ones are market-order takers, but we hold no linkable document for it. Our own log is 10 trades, 6 closed, net minus $28.30 on $500, every fee computed at taker rates.
Sources
2 of these 8 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.
- https://docs.polymarket.com/ Gamma API. Per-market `feeSchedule` object carrying the maker and taker coefficients, read 4 August 2026, schedule version `2026-08-04.a`. Source for every Polymarket coefficient on this page.
- https://docs.kalshi.com/ Kalshi developer documentation. Source for the Kalshi taker formula, the sub-penny fee rounding and the whole-cent rebate accumulator. It is not the source of any maker figure on this page.
- Kalshi newsroom statement that resting orders are fee-exempt : URL and read date to be stamped before publish. Held secondhand in our own platform-audit notes.not yet stamped
- Kalshi Help Centre article stating that maker fees are charged : URL and read date to be stamped before publish. Held secondhand in our own platform-audit notes. We have not read a maker coefficient in it and do not attribute one to it.not yet stamped
- `scanner/fees.py:74` in this project's own source : `KALSHI_MAKER_RATE = 0.0175`, commented "quadratic, NOT a flat percentage", applied at line 152 in the same quadratic form as the taker rate. This is our code, not Kalshi's schedule. It is the only origin of the 0.0175 figure anywhere on this page.
- https://docs.polymarket.com/programs/referral-program read 5 August 2026. Referral pays a share of net taker fees; makers are never charged, so a referred maker generates nothing.
- https://docs.polymarket.com/programs/builders/fees cited as a source we have NOT read. Never fetched by this project. It is the most likely place a human-readable Polymarket fee schedule would live.
- SSRN paper reporting that successful Polymarket accounts are limit-order liquidity providers and unsuccessful ones are market-order takers : held secondhand in our research corpus with no document we can link. Treated as a pointer, not a citation.