Latency improvements and order response changes — Friday July 24, 04:00 UTC
- Rollout Friday, July 24 at 04:00 UTC: An async commit pipeline cuts matching latency.
POST /orderandPOST /orderswill no longer returntransactionHasheson successful FAK/FOK matches — you gettradeIDsinstead.tradeIDsbehavior is unchanged; websocket fills are unaffected. - SDK users: Bump to the latest CLOB client (TypeScript, Python, Rust) before rollout — it resolves hashes from
tradeIDsfor you. - Custom REST integrations: If you depend on inline
transactionHashes, poll trades bytradeIDuntil each has a hash or returnsFAILED. See TypeScript, Python, and Rust.
Relayer: deprecating CLOB v1 Neg Risk Adapter
- Old adapter retired: Relayer calls to the CLOB v1 Neg Risk Adapter (
0xd91E80cF2E7be2e162c6513ceD06f1dD0dA35296) are being deprecated. CLOB v2 integrations should use the current Neg Risk Adapter at0xadA2005600Dec949baf300f4C6120000bDB6eAabfor all pUSD-collateral actions. - Grace period for redeems: Relayer redeems targeting the old adapter remain available until Friday, July 17, 2026 at 00:00 UTC. After that, relayer calls to the old address are fully retired.
- Updated documentation: See Contracts.
Sports taker fee and maker rebate update
- Sports fee coefficient: The sports taker fee rate increases from
0.03to0.05at midnight UTC. - Sports maker rebate: The sports maker rebate decreases from 25% to 15% of collected taker fees.
- Updated documentation: Fees and Maker Rebates Program.
World Cup markets decimalized to a 0.0025 (0.25¢) tick size
- Finer tick size for World Cup markets: All World Cup to advance, moneyline, spreads, and totals markets are now decimalized to a 0.0025 (0.25¢) tick size. This lets you execute at smaller ticks and tighter spreads for the most competitive prices. Applies only to those World Cup markets — see Place Orders.
Bridge API: optional X-Builder-Code header
CLOB DELETE /orders maximum batch size reduced to 1000
DELETE /orderslimit: The maximum number of order IDs per cancel request is now1000. Split larger cancellation batches across multiple requests.
Increased CLOB order rate limits
Raised burst and sustained rate limits for several CLOB trading endpoints.
- CLOB POST /order - 120000 every 10 minutes (200/s) - (SUSTAINED)
- CLOB DELETE /order - 120000 every 10 minutes (200/s) - (SUSTAINED)
- CLOB POST /orders - 2000 every 10s (200/s) - (BURST)
- CLOB DELETE /orders - 2000 every 10s (200/s) - (BURST)
Data API: builderCode added to /v1/builders/leaderboard and /v1/builders/volume
- New field: Both
GET /v1/builders/leaderboardandGET /v1/builders/volumenow include abuilderCodestring on each entry — the builder’s onchain attribution code as attached to orders viabuilderCode(see Migrating to CLOB V2). - Additive change: existing clients are unaffected. Legacy builders without a registered code return an empty string.
GET /markets/keyset maximum limit reduced to 100
GET /markets/keysetlimit: The maximumlimitvalue is now100. Requests should useafter_cursor/next_cursorto paginate through larger result sets.
CLOB V2 is live on production
Polymarket’s CLOB V2 upgrade is live on
https://clob.polymarket.com.- Production URL unchanged: V2 now runs on the standard CLOB host. New integrations should use
https://clob.polymarket.com. - No V1 compatibility: Legacy V1 SDKs and V1-signed orders are no longer supported on production.
- Open orders wiped: Resting orders from before the cutover did not migrate and must be re-created with V2 signing.
- Migration guide: See Migrating to CLOB V2 for the SDK, raw order signing, pUSD, and builder attribution changes.
Relayer API: POST /submit returns immediately without transactionHash
- Faster
POST /submitresponses: The Relayer’sPOST /submitendpoint now returns immediately with just{ transactionID, state: "STATE_NEW" }. ThetransactionHashfield has been removed from the submit response to improve performance. - How to get the hash: Poll
GET /transactionwith the returnedtransactionIDto retrieve the onchaintransactionHashonce the transaction has been broadcast.
CLOB V2: upgrades go live April 28 at ~11:00 UTC, with ~1 hour of downtime
Polymarket is shipping a coordinated upgrade: new Exchange contracts, a rewritten CLOB backend, and a new collateral token (pUSD).Exchange upgrades go live April 28, 2026 at ~11:00 UTC with ~1 hour of downtime. All integrations must migrate to the V2 SDK before the cutover — there will be no backward compatibility after go-live.Full walkthrough: Migrating to CLOB V2. Follow Discord, Telegram, and status.polymarket.com for the exact start time.Historical pre-cutover note: before go-live, integrations could test against
https://clob-v2.polymarket.com. As of April 28, V2 runs on https://clob.polymarket.com.What’s changing- New Exchange contracts (CTF Exchange V2 + Neg Risk CTF Exchange V2)
- pUSD replaces USDC.e as the collateral token (standard ERC-20 on Polygon, backed by USDC, backing enforced onchain)
- Order struct:
nonce,feeRateBps,takerremoved —timestamp(ms),metadata,builderadded - Fees are now set at match time — no more
feeRateBpson orders - Builder attribution is native via
builderCodeon orders (no morebuilder-signing-sdk) - EIP-712 Exchange domain version bumps from
"1"to"2"(ClobAuth stays at"1")
- Install the V2 SDK —
@polymarket/clob-client-v2orpy-clob-client-v2— and remove the legacyclob-client/py-clob-clientpackages - Update constructor from positional args to options object; rename
chainId→chain - Remove
feeRateBps,nonce, andtakerfrom your order creation code - If you’re a builder, copy your code from Settings → Builder and attach it to orders
- If you sign orders without the SDK, update the
verifyingContractand the signed Order fields — see For API users - Plan for all open orders to be wiped at cutover
Bridge API: added support link for bridging issues
- Support contact: Added a link to our Bridge API provider’s support (Fun.xyz) for failed, stuck, or compliance-held bridge transactions. See Deposit Status.
New keyset pagination endpoints for markets and events
- New endpoints: Added
GET /markets/keysetandGET /events/keysetfor cursor-based pagination, replacing offset-basedGET /marketsandGET /events. - How it works: These use an opaque
after_cursor/next_cursortoken instead ofoffset, providing stable and efficient paging through large result sets. Same filters, same response shape per item — the only differences are the wrapper response ({ "markets": [...], "next_cursor": "..." }) and the rejection ofoffset. - Migration: The existing
GET /marketsandGET /eventsendpoints remain available but will be deprecated in a future release. New integrations should use the keyset variants.
GET /markets: closed defaults to false
closeddefault change: Theclosedquery parameter onGET /marketsnow defaults tofalse. Closed markets are excluded from results unless you explicitly passclosed=true.
Increased API Rate Limits
Increased burst and sustained rate limits for several CLOB trading endpoints.
- CLOB POST /order - 5000 every 10s (500/s) - (BURST)
- CLOB POST /order - 48000 every 10 minutes (80/s)
- CLOB DELETE /order - 5000 every 10s (500/s) - (BURST)
- CLOB DELETE /order - 48000 every 10 minutes (80/s)
- CLOB POST /orders - 1500 every 10s (150/s) - (BURST)
- CLOB POST /orders - 21000 every 10 minutes (35/s)
- CLOB DELETE /cancel-market-orders - 1500 every 10s (150/s) - (BURST)
- CLOB DELETE /cancel-market-orders - 21000 every 10 minutes (35/s)
REST API Fee Fields Update
- Fee calculation source: Fees should now be calculated using the
feeScheduleobject within a market.
Fee Structure V2
- New fee categories: Fees now apply to Crypto, Sports, Finance, Politics, Economics, Culture, Weather, Tech, Mentions, and Other / General markets with updated rates per category. Geopolitical and world events markets remain fee-free.
- Updated documentation: Trading Fees and Maker Rebates Program.
March Madness: $2M+ in Liquidity Rewards
- March Madness Liquidity Rewards: Adding $2M+ in liquidity rewards to both live and pregame markets.
- How it works: Liquidity rewards are payments for placing competitive bids. Rewards are paid out based on the size of your orders, how close they are to the midpoint, and how consistently they are quoted relative to other liquidity providers. Orders must be active on the book for a minimum of 3.5 seconds to be eligible.
- $7.5k for full game ML market
- $500 for 5 other markets (most recently created full game spread, most recently created full game total, 1st half ML, most recently created 1st half spread, most recently created 1st half total)
- $60k for full game ML
- $4k for most recently created full game spread and most recently created full game total
- $8k for 1st half ML, most recently created 1st half spread, most recently created 1st half total
- Markets: Browse March Madness markets
- More details: Liquidity Rewards documentation
Taker Fees & Maker Rebates: All Crypto Markets
- Crypto market fees expansion: Starting March 6, 2026, taker fees and maker rebates extend to all crypto markets including 1H, 4H, daily, and weekly. The same fee structure as existing crypto markets applies. Only new markets created after March 6 are affected.
- Updated documentation: Trading Fees and Maker Rebates Program updated to reflect all crypto market coverage.
5-Minute Crypto Markets
- 5-minute crypto markets: Launched with taker fees enabled. Fees follow the same curve as 15-minute crypto markets, peaking at 1.56% at 50% probability.
- Maker Rebates: Liquidity providers earn daily USDC rebates funded by taker fees, same as 15-minute crypto markets.
Taker Fees & Maker Rebates: NCAAB and Serie A
- Sports market fees: Taker fees to be enabled on NCAAB (college basketball) and Serie A markets on February 18, 2026.
- Per-market rebate calculation: Rebates are now calculated per market, makers only compete with other makers in the same market.
- Updated documentation: Maker Rebates Program updated with sports fee tables and parameters.
Bridge API: Withdrawal Endpoint
- Withdrawal Endpoint: New
/withdrawendpoint to bridge USDC.e from Polymarket to any supported chain and token. - Multi-chain withdrawals: Withdraw to EVM chains (Ethereum, Arbitrum, Base, etc.), Solana, and Bitcoin.
- Updated documentation: Bridge API docs updated to reflect deposit and withdrawal functionality.
Docs Update: RTDS documentation
- RTDS docs updated to reflect RTDS supports comments and crypto prices only.
- Removed legacy CLOB references and
clob_authfrom RTDS docs.
Docs Update: Maker Rebates Program
- Maker Rebates Program: Updated funding schedule with distribution method (volume-weighted vs fee-curve weighted).
- Fee-curve weighted rebates: Documented fee-equivalent formula and rebate calculation.
- FAQ: Clarified how rebates are calculated during fee-curve weighted periods.
New API Features
- Releases: Daily Releases timing
- HeartBeats API: HeartBeats endpoint for monitoring connection status and canceling orders
- Post Only Orders: Orders that are rejected if they would immediately match against an existing order
Taker Fees & Maker Rebates
- Taker Fees: Enabled on 15-minute crypto markets. Fees vary by price and peak at 1.56% at 50% probability.
- Maker Rebates: Daily USDC rebates paid to liquidity providers, funded by taker fees.
Polymarket Real-Time Data Socket (RTDS) official release
- Crypto Price Feeds: Access real-time cryptocurrency prices from two sources (Binance & Chainlink)
- Comment Streaming: Real-time updates for comment events including new comments, replies, and reactions
- Dynamic Subscriptions: Add, remove, and modify subscriptions without reconnecting
- TypeScript Client: Official TypeScript client available at real-time-data-client For complete documentation, see Market Data.
WSS price_change event update
- There has been a significant change to the structure of the price change message. This update will be applied at 11PM UTC September 15, 2025. We apologize for the short notice
- Please see Real-Time Data for details.
Updated /trades and /activity endpoints
- Reduced maximum values for query parameters on Data-API /trades and /activity:
limit: 500offset: 1,000
Batch Orders Increase
- The batch orders limit has been increased from 5 -> 15. Read more about the batch orders functionality here.
Get Book(s) update
- We’re adding new fields to the
get-bookandget-booksCLOB endpoints to include key market metadata that previously required separate queries.min_order_size- type: string
- description: Minimum price increment.
neg_risk- type: boolean
- description: Boolean indicating whether the market is neg_risk.
tick_size- type: string
- description: Minimum price increment.
New Batch Orders Endpoint
- We’re excited to roll out a highly requested feature: order batching. With this new endpoint, users can now submit up to five trades in a single request. To help you get started, we’ve included sample code demonstrating how to use it. Please see Place Orders for more details.
Change to /data/trades
- We’re adding a new
sidefield to theMakerOrderportion of the trade object. This field will indicate whether the maker order is abuyorsell, helping to clarify trade events where the maker side was previously ambiguous. For more details, refer to the MakerOrder object on the Manage Orders page.
Websocket Changes
- The 100 token subscription limit has been removed for the Markets channel. You can now subscribe to as many token IDs as needed for your use case.
- New Subscribe Field
initial_dump- Optional field to indicate whether you want to receive the initial order book state when subscribing to a token or list of tokens.
default: true
New FAK Order Type
We’re excited to introduce a new order type soon to be available to all users: Fill and Kill (FAK). FAK orders behave similarly to the well-known Fill or Kill (FOK) orders, but with a key difference:
- FAK will fill as many shares as possible immediately at your specified price, and any remaining unfilled portion will be canceled.
- Unlike FOK, which requires the entire order to fill instantly or be canceled, FAK is more flexible and aims to capture partial fills if possible.
Increased API Rate Limits
All API users will enjoy increased rate limits for the CLOB endpoints.
- CLOB - /books (website) (300req - 10s / Throttle requests over the maximum configured rate)
- CLOB - /books (50 req - 10s / Throttle requests over the maximum configured rate)
- CLOB - /price (100req - 10s / Throttle requests over the maximum configured rate)
- CLOB markets/0x (50req / 10s - Throttle requests over the maximum configured rate)
- CLOB POST /order - 500 every 10s (50/s) - (BURST) - Throttle requests over the maximum configured rate
- CLOB POST /order - 3000 every 10 minutes (5/s) - Throttle requests over the maximum configured rate
- CLOB DELETE /order - 500 every 10s (50/s) - (BURST) - Throttle requests over the maximum configured rate
- DELETE /order - 3000 every 10 minutes (5/s) - Throttle requests over the maximum configured rate