Guide
How a Polymarket Reward Farming Bot Works
By ClydeScanPublished
A Polymarket reward farming bot is software that automatically discovers markets paying liquidity rewards, rests qualifying two-sided limit orders inside the rewarded spread, keeps those orders in band as prices move, and manages the inventory it acquires when they are filled. The strategy it implements is described in what Polymarket reward farming is.
1. Market discovery
The exchange exposes which markets currently carry reward pools, so discovery is a polling problem rather than a guessing one. A bot pulls the reward-eligible set continuously, because pools and eligibility change daily and a stale list means quoting markets that no longer pay.
Discovery output is a candidate list, not a trading decision. Most candidates are rejected at the next stage.
2. Reward eligibility and ranking
Ranking is where most of the performance lives. The right metric is not pool size but reward density: pool size against the maker liquidity already competing for it. A $500 pool with two makers pays better than a $5,000 pool with fifty.
Eligibility filters then remove markets that are unsafe to quote:
- the midpoint must sit inside the band where two-sided quotes score;
- the market must be genuinely tradeable, with real depth rather than a nominal book;
- a filled order must have a bounded exit, so the worst case is capped before the order is placed rather than discovered afterwards.
That last filter is the one that separates a working bot from an expensive one. Quoting a market where you cannot cheaply get out is how reward farmers give back weeks of income in an afternoon.
3. Quoting
For each admitted market the bot rests limit orders on both YES and NO, at or near the programme's minimum size, positioned inside the rewarded spread. Three deliberate choices:
- Minimum size. Past the qualifying threshold, extra size buys extra fill risk rather than extra reward score.
- Join, don't cross. Orders are placed alongside the existing book rather than taking liquidity, which would pay the spread and generate an immediate position.
- Both sides. Two-sided quoting earns the scoring multiplier and means no net directional position at entry.
4. Inventory management
Fills are inevitable, so the bot needs a model of what it owns. The useful decomposition in a binary market is that a matched YES and NO pair is worth exactly $1 at resolution and therefore carries no directional risk. Only the unmatched shares are exposed.
The bot reads its positions from the chain rather than trusting its own record of what it thinks it placed, because orders can fill partially, be cancelled mid-flight, or be filled by processes outside its view. When unmatched shares appear, it works them back toward zero by acquiring the opposite side or exiting, under a loss cap. Past a hard limit it stops quoting that market rather than adding to a position it is already struggling to balance.
5. Repricing
Quotes go stale silently. When the midpoint moves, a resting order drifts out of the rewarded band and stops earning without any error or notification. The bot re-checks each resting order against the current band, cancels the ones that have drifted, and re-places them in band on the next cycle.
Repricing is a trade-off, not a free action. Repricing too eagerly means cancelling orders that were about to earn; too slowly means paying rent on quotes that stopped scoring hours ago.
6. Adverse selection control
The fills that hurt are not random. Informed traders arrive when something has changed, which is exactly when a stale quote is worst priced. A bot has a few defences:
- Rest behind depth. Because reward scoring ignores queue position, an order behind a deep queue scores identically while being much less likely to be filled.
- Watch the tape. A market printing aggressive one-sided flow is a market about to fill you badly; reducing or pulling size there is cheaper than hedging afterwards.
- Prefer stable markets. Deep, slow-moving markets generate fewer toxic fills per reward dollar than fast ones.
7. Reward and P&L accounting
A reward farming bot that only counts rewards cannot tell whether it is working. Correct accounting needs both sides, from separate sources:
- Rewards from the exchange's own reward ledger, which is authoritative, plus maker rebates, which are a separate stream and easy to omit.
- Costs as realised P&L on the bot's own fills over the same window.
The ratio of the two is the health metric. Above 1.0 the strategy nets positive; below it, rewards are subsidising the inventory. Ours has been below 1.0 over the most recent window, which is visible on our results page and explained in our methodology.
8. Capital allocation
Capital is finite, so quoting one market means not quoting another. Allocation sits behind per-market caps and an overall budget, with markets that stop clearing the reward-density floor losing their allocation to better ones. A global kill switch that cancels everything at once is not optional: the failure mode of a market maker is accumulating positions faster than it can hedge them.
Common questions
What does a Polymarket reward farming bot actually do?
It discovers markets that pay liquidity rewards, ranks them by reward pool against maker competition, rests two-sided limit orders inside the rewarded spread, reprices those orders as the midpoint moves, hedges any inventory it acquires when an order fills, and records reward income against trading costs.
How does a reward farming bot avoid taking directional risk?
By quoting both sides at once. In a binary market a matched YES and NO pair is worth $1 at resolution regardless of outcome, so only unmatched shares carry directional risk. The bot's inventory logic works those unmatched shares back toward zero.
How does a bot decide which markets to quote?
By reward density: the size of the daily reward pool relative to how much maker liquidity is already competing for it, filtered to markets that are tradeable, sit inside the band where two-sided quotes score, and where a filled order has a bounded exit.
A working implementation
ClydeScan Reward Farmer implements each of the components above and runs live on our own Polymarket account. Its measured performance, including the periods where inventory costs exceeded reward income, is published on the results page and served from a public stats API that anyone can query.