A market making bot on Polymarket posts resting bids and offers on both sides of a binary outcome and earns the spread, supported by the venue zero maker fee. The math looks clean on a spreadsheet and gets messy in production. Inventory builds asymmetrically, adverse selection eats the spread on the markets that move, and the capital required to keep meaningful quotes on the book runs into five and six figures before any edge appears. This guide walks through the quoting strategy, the rebate math with a worked example, the inventory mechanics, and the realistic conditions under which a Polymarket market making bot actually clears net of risk.
What market making on Polymarket actually means
A market maker posts resting limit orders on both sides of the order book and waits for somebody else to cross the spread. On Polymarket the spread is denominated in cents of probability between zero and one. A market maker quoting a binary outcome at, say, 42 bid and 44 offer is committing to buy YES at 42 cents and sell YES at 44 cents. If both legs fill at equal size the maker pockets 2 cents per share, less any inventory carry and less the cost of being wrong about where the fair value sits.
Polymarket pays zero maker fees on the central limit order book, and on select campaigns it pays an explicit rebate to makers who keep two sided quotes inside a defined band. That fee structure is what makes the strategy structurally viable. On a venue that charged ten basis points to add liquidity, the same quote width would be a money loser at almost any fill rate. The mechanics of the maker side of the fee schedule are detailed in the maker taker fees post, and the underlying book structure is in the order book explainer.
The maker rebate math (worked example)
The point of starting with the math is that nothing else in this post matters if the expected value per quote does not pencil. So here is a single worked example, with numbers I have actually observed on the venue rather than illustrative round figures.
Pick a moderately liquid politics market, with a mid price of 0.43 and a two sided book that looks like 0.42 bid 0.44 offer at 500 share depth on each side. The market maker posts 200 shares at 0.42 and 200 shares at 0.44. The quote width is 2 cents, or roughly 466 basis points on the mid. Suppose over a five minute window each side fills once at full size and the mid does not move.
- Gross spread captured. 200 shares times 0.02 dollars equals 4 dollars on a 168 dollar gross trading footprint. About 238 basis points of round trip return.
- Maker fee. Zero on the base CLOB. On a rebate campaign, add one to three basis points on filled notional, so on the order of 5 to 15 cents of extra revenue on this round trip.
- Inventory carry cost. If both legs fill within the same minute, inventory carry is negligible. If only the bid fills and the maker holds 200 long shares for an hour while the market drifts to 0.41 mid, the inventory mark to market loses 2 dollars. That single one sided event wipes out the round trip from a successful two sided fill earlier.
- Net edge per balanced round trip. Roughly 4 dollars in this example, before adverse selection adjustments.
The naive read is that the strategy earns 4 dollars every five minutes per quoted market and scales linearly. The realistic read is that balanced fills happen perhaps 30 to 40 percent of the time on a healthy book. Another 30 to 40 percent of the time the maker gets only one side and accumulates inventory at a price that turns out to be wrong. The remaining 20 to 40 percent the quotes never fill at all.
Multiply the 4 dollar nominal edge by a realistic two sided fill rate of 35 percent, subtract the expected loss on the one sided fills, and a sensible expected edge for a non professional running this on one market is closer to 80 cents to 1.50 dollars per five minute window than to 4. Still positive, but only if uptime, cancels, and risk controls are tight.
Inventory risk: why one sided fills hurt
The single failure mode that ends most amateur market making attempts is asymmetric fills. A market drifts from 0.43 toward 0.40. The maker quotes 0.42 bid and 0.44 offer. The bid fills repeatedly because the maker is the most aggressive buyer on the way down. The offer never fills. Within twenty minutes the maker is long several thousand shares above the current mid and the spread captured earlier is smaller than the mark to market loss on inventory.
This is not a low probability scenario. It is the default behaviour of any market that has directional information arriving. Avoiding it requires three mechanical defences and one philosophical one.
The three mechanical defences are an inventory cap (no position ever exceeds N shares on either side, where N is a small fraction of working capital), a skew rule (when inventory drifts long, the quoted bid drops and the offer drops with it, so that taking more longs is harder and offloading existing longs is easier), and an aggressive cancel policy (any time the mid moves by more than a threshold, both legs cancel immediately and reprice from the new mid rather than letting stale quotes fill into a move).
The philosophical defence is the acceptance that on directional events the maker is going to lose. The job is to lose less than is captured on quiet ranges, and to size the strategy such that no single move can blow up the book.
Quoting strategy: spread, size, skew
A quoting strategy on Polymarket has three knobs and getting them roughly right matters more than any clever signal layer on top.
Spread. The width of the quote determines two things: the gross edge per fill and the fill rate. Tighter quotes fill more often but capture less. Wider quotes capture more per fill but fill rarely and are vulnerable to being undercut by another maker quoting inside. On a market with natural spread of 2 cents, a sensible maker quotes 1.5 to 2 cents wide, sometimes wider when volatility rises. Quoting tighter than the prevailing book is usually a sign that the strategy has not priced in adverse selection.
Size. The quantity displayed at the quote affects the venue side and the risk side. Larger size attracts more flow but exposes the maker to single fill inventory shocks. Smaller size protects against blow ups but earns less. The pragmatic starting point is sizing each side at one to two percent of working capital, scaled down on volatile markets and up on quiet ones.
Skew. Skew is the asymmetric adjustment to bid and offer based on current inventory. With zero inventory, quotes are symmetric around the mid. With long inventory, both bid and offer shift down by a small fraction of a cent, making it cheaper for the bot to sell and more expensive for the bot to buy. With short inventory, the opposite. Skew is the in band defence against inventory accumulation that does not require cancelling everything.
The viability map by market category
Not every market on Polymarket is a sensible target for a market making bot. The viable set is narrower than people assume. Some market categories are structurally hostile to making and reward only takers; others have spreads so wide that the maker captures clear edge but volume so low that the strategy never scales.
Quote width versus adverse selection cost by market category
The table below collapses the same picture into a row per category. The recommendation column is the working rule I would give a desk allocating capital to this strategy for the first time.
| Category | Typical spread | Daily volume | Adverse selection risk | Recommendation |
|---|---|---|---|---|
| Liquid binary politics | 1.5 to 3 cents | $100k to $5M | Moderate, with spikes around debates and primaries | Primary target. Two sided quoting works. |
| Macro and policy events | 2 to 5 cents | $20k to $300k | Elevated around scheduled releases (CPI, FOMC) | Quote with auto pause around release windows. |
| Crypto event markets | 1 to 4 cents | $50k to $1M | High. Informed flow arrives in seconds. | Avoid for amateurs. Pros run with sub 100ms cancels. |
| Illiquid sports | 4 to 10 cents | under $20k | Very high during live events | Skip. Volume does not pay for the risk. |
| Long horizon novelty | 3 to 8 cents | under $10k | Low day to day, episodic on news | Niche. Manual desk play, not a bot strategy. |
Adverse selection and information arrival
The single concept that separates a market making bot that makes money from one that bleeds is adverse selection. The intuition: the trader who hits your bid is informationally more likely than not to know something you do not. If they did not, they would either be quoting alongside you or doing nothing. Hitting a resting bid is the act of somebody who has decided, right now, that 0.42 is too high. On average, they are right slightly more often than they are wrong, and that slight asymmetry is the cost of providing liquidity.
On a venue with retail flow mixed in among the informed flow, adverse selection is manageable. Retail fills are roughly random with respect to the next price move, and the maker captures spread cleanly. On a venue with mostly informed flow, the maker loses on most fills and the strategy does not work.
Polymarket is closer to the manageable end, because most of the flow is retail directional. But around a debate, a court ruling, or a regulatory announcement, the proportion of informed flow spikes. A market making bot that does not pause around those events is paying tuition to traders who know more than it does.
The infra you need to actually run it
A market making bot has a sharper infrastructure floor than any other strategy on Polymarket. The reason is the cancel latency requirement. When the mid moves, the bot has to pull its existing quotes before somebody picks them off at the stale price. A copy trade bot that reacts in two seconds is fine. A market making bot that takes two seconds to cancel is donating money to faster participants.
The websocket connection. Polymarket exposes a websocket feed of order book updates. The bot subscribes on startup, keeps the connection open, and processes events as they arrive. The cleanest implementation is an event loop that updates an in memory book on every message and triggers the quoting logic on each tick. The full plumbing is in the bot architecture post.
Latency budget. A reasonable self hosted bot on a VPS near the venue can achieve 100 to 200 millisecond round trip from market move to cancel acknowledged. A professional setup colocated near the CLOB host can compress that to under 50 milliseconds. Below 50 milliseconds is diminishing returns territory; above 300 milliseconds the strategy is structurally disadvantaged against any competing maker with better infra.
Capital tied up. Resting orders lock collateral. A bot quoting 200 shares on each side of ten markets at average price 0.5 ties up roughly 2,000 dollars per market in working balance, or 20,000 dollars across the program. That is the minimum. A realistic capital floor for a strategy that quotes meaningfully on twenty to fifty markets is 50,000 to 200,000 dollars in USDC on Polygon, with another buffer of comparable size held in reserve for inventory drawdowns.
Monitoring. The minimum monitoring stack is position by market with alerts on cap breach, fill rate by market, mid price drift versus quote price, and an explicit kill switch hooked to a panic threshold. The official venue documentation at docs.polymarket.com covers the CLOB endpoints and the rebate program eligibility rules that the monitoring stack has to track against.
Honest expectations: who should and should not run a market making bot
The reason to write this section explicitly is that the headline number on market making bots ("makers earn the spread, zero fees") sounds like a free lunch and is, in practice, the opposite. Here is the realistic split of who clears net of risk.
Should consider running it. Developer traders with prior options or futures market making experience, a capital base of at least 50,000 dollars dedicated to the strategy, and the patience to spend a quarter calibrating before allocating size. Quant teams at small prop shops looking for an additional venue. Professional desks that already run market making elsewhere and have the infra to extend cheaply.
Should not run it. Retail traders looking for passive income. Anyone whose total Polymarket allocation is under 10,000 dollars. Anyone who has not built and run a research bot to collect order book data for at least a month and verify their assumptions about fill rates and spread distribution. Anyone who wants to set and forget; this strategy is the opposite of that. For most of this population the right starting point is the architecture overview as a research project, not a deployment plan.
A market making bot is not a way to convert capital into yield. It is a way to convert capital, infrastructure, and ongoing attention into a thin, regime dependent return that disappears the moment any one of those three inputs gets neglected. The economics work. They do not work for free.
The market maker rents the spread. The rent is paid in inventory risk, adverse selection, and the cost of running infrastructure that does not blink. Skip any of the three and the rent goes negative.
Frequently asked questions
Does Polymarket pay a maker rebate?
Polymarket charges zero maker fees on the central limit order book, and runs periodic rebate campaigns that pay a small basis point credit to makers who keep two sided quotes inside a defined band on eligible markets. The eligibility rules and current rates are listed in the venue documentation under the rebate program section.
How much capital do I need for a market making bot?
The practical floor is around 50,000 dollars in USDC on Polygon for a program quoting twenty to fifty markets, with comparable reserve held back for inventory drawdowns. Below that capital base, fixed costs and minimum quote sizes consume most of the realisable edge.
Can I run a market making bot from a laptop?
Technically yes, on a single quiet market with wide quotes. In practice the latency and uptime requirements push any serious deployment to a VPS or dedicated host in a region close to the venue, with persistent websocket connections and automated restart logic.
What is the biggest failure mode for a market making bot?
Inventory accumulation against the trend. The bot fills repeatedly on one side as the market moves, then holds a large position at a price that has become stale. Mitigations are hard inventory caps, skew on the quotes when inventory drifts, and aggressive cancels when the mid moves beyond a threshold.
Is market making on Polymarket profitable for retail?
Generally no. The capital floor, the infrastructure requirement, and the calibration period combine to put the strategy out of reach for most retail traders. The honest recommendation for traders under a 10,000 dollar allocation is to copy trade or to run a research bot, not to attempt market making.