Skip to main content
Polymarket has enabled taker fees on 15-minute crypto markets. These fees fund a Maker Rebates program that pays daily USDC rebates to liquidity providers.

Fee Handling by Implementation Type

The official CLOB clients automatically handle fees for you. Update to the latest version: What the client does automatically:
  1. Fetches the fee rate for the market’s token ID
  2. Includes feeRateBps in the order structure
  3. Signs the order with the fee rate included
You don’t need to do anything extra. Just update your client and your orders will work on fee-enabled markets.

Option 2: REST API / Custom Implementations

If you’re calling the REST API directly or building your own order signing, you must manually include the fee rate in your signed order payload.

Step 1: Fetch the Fee Rate

Query the fee rate for the token ID before creating your order:
GET https://clob.polymarket.com/fee-rate?token_id={token_id}
Response:
{
  "fee_rate_bps": 1000
}
  • Fee-enabled markets return a value like 1000
  • Fee-free markets return 0

Step 2: Include in Your Signed Order

Add the feeRateBps field to your order object. This value is part of the signed payload, the CLOB validates your signature against it.
{
  "salt": "12345",
  "maker": "0x...",
  "signer": "0x...",
  "taker": "0x...",
  "tokenId": "71321045679252212594626385532706912750332728571942532289631379312455583992563",
  "makerAmount": "50000000",
  "takerAmount": "100000000",
  "expiration": "0",
  "nonce": "0",
  "feeRateBps": "1000",
  "side": "0",
  "signatureType": 2,
  "signature": "0x..."
}

Step 3: Sign and Submit

  1. Include feeRateBps in the order object before signing
  2. Sign the complete order
  3. POST to /order endpoint
Important: Always fetch fee_rate_bps dynamically, do not hardcode. The fee rate may vary by market or change over time. You only need to pass feeRateBps
See the Create Order documentation for full signing details.

Fee Behavior

Fee Denomination

Fees are deducted from the proceeds of your trade:
Order TypeYou ReceiveFee Denomination
BUYTokensFee in tokens
SELLUSDCFee in USDC
Because fees are denominated differently, the effective fee rate differs between buying and selling.

Effective Rates: Buying (100 shares)

When buying, the fee is in tokens. Effective rate peaks at 50%.
PriceFee (tokens)Fee ($)Effective Rate
$0.100.20$0.020.2%
$0.301.10$0.331.1%
$0.501.56$0.781.6%
$0.701.10$0.771.1%
$0.900.20$0.180.2%

Effective Rates: Selling (100 shares)

When selling, the fee is in USDC. Effective rate peaks around 30%.
PriceProceedsFee ($)Effective Rate
$0.10$10$0.202.0%
$0.30$30$1.103.7%
$0.50$50$1.563.1%
$0.70$70$1.101.6%
$0.90$90$0.200.2%

Maker Rebates

How Rebates Work

  • Eligibility: Your orders must add liquidity (maker orders) and get filled
  • Calculation: Proportional to your share of executed maker volume in each eligible market
  • Payment: Daily in USDC, paid directly to your wallet

Rebate Pool

The rebate pool for each market is funded by taker fees collected in that market. Currently, 100% of collected fees are redistributed as maker rebates.
Since taker fees are lower at price extremes, trades filled at those prices contribute less to the rebate pool.

Which Markets Have Fees?

Currently, only 15-minute crypto markets have fees enabled. Query the fee-rate endpoint to check:
GET https://clob.polymarket.com/fee-rate?token_id={token_id}

# Fee-enabled: { "fee_rate_bps": 1000 }
# Fee-free:    { "fee_rate_bps": 0 }