Institutional Order Entry
REST and unary gRPC order-entry requests use tiered rate limits. Institutional order entry and FIX order-entry sessions use the same firm tier. Each method has its own per-firm rate-limit bucket. Methods displaying the same limit do not share that allowance.
REST and unary gRPC tiers are determined by your contract volume share on Polymarket US. Batch order method limits remain flat across all tiers.
Each bucket’s capacity equals the published per-second rate and replenishes continuously at that rate. These limits are not averaged over a 1-minute window.
Each batch order request counts once toward that method’s rate limit, regardless of the number of operations in the request.
FIX Protocol
FIX rate limiting is enforced at the FIX gateway on inbound messages from the client to the exchange. Order-entry sessions use the firm tier:
Tiers are determined by your contract volume share on Polymarket US.
Market-data and drop-copy sessions are limited to 150 inbound msg/sec, regardless of the firm’s order-entry tier. This limit applies only to messages you send. It does not limit the market data or drop-copy messages the exchange sends you.
Volume Share and Tier Requirements
At the start of each calendar month, Polymarket US calculates your volume share using the full preceding calendar month, from its first day through its last day. Your volume share is the contracts you traded during that month divided by the total contracts traded across the exchange during the same month. Each filled contract counts once, regardless of its execution price or the number of combo legs. For example, volume traded from August 1 through August 31 determines your September tier. Tiers are assessed monthly, not daily. If your volume share meets the Earn requirement at the monthly assessment, you are automatically eligible for that tier’s rate limit for the new month. You must keep at least the Maintain volume share to stay eligible for your current tier. If your share falls below Maintain at a monthly assessment, you keep your current rate limit for that month. If your share is still below Maintain at the next monthly assessment, you move to a lower eligible tier for that month. Each tier has its own Earn and Maintain volume share requirement, seen below.
Accelerated Tier Placement: A Participant may provide verifiable proof of their trailing-30-day contract trading volume on another prediction market venue and be assigned to the tier corresponding to that volume.
REST API
Query / Report Endpoints
These read-heavy endpoints have separate per-firm limits. Cache responses where noted.Combos Endpoints
Combos endpoints have these per-firm limits:Public (Unauthenticated) Endpoints
gRPC Streaming
Unary gRPC order-entry calls use the Institutional Order Entry limits above. The limits in this section apply to streaming connections.
Ingress rate is averaged over a 1-minute window, allowing short bursts. Exceeding the average limit will result in throttled or rejected messages. This limit applies to all participants.
The
StreamRFQEvents limit is checked only when opening a stream. It does not limit server-pushed RFQ or quote events on an established stream.
RFQ Endpoints
The institutionalpolymarket.v1.RFQAPI endpoints have these per-firm limits, shared across REST and unary gRPC requests:
Each row above has a separate per-firm endpoint bucket with one second of burst capacity. Traffic to one method does not consume another method’s endpoint-specific allowance. Exchange-wide limits also apply.
RFQ Rate-Limit Tiers
Your RFQ tier determines yourCreateQuote and DeleteQuote limits. Each method has its own allowance:
RFQ Volume Share and Tier Requirements
At the start of each calendar month, your RFQ volume share is calculated using the full preceding calendar month, from its first day through its last day. It is your RFQ-originated maker contracts during that month divided by the total RFQ-originated maker contracts across all firms, including retail participants, during the same month. A fill counts when its passive (maker) order originated from an RFQ. Each filled contract counts once, regardless of its price or the number of combo legs. The resulting RFQ tier applies for the new month and is not reassessed daily. If your volume share meets the Earn requirement at the monthly assessment, you are eligible for that tier’s RFQ rate limits for the new month. You must keep at least the Maintain volume share to stay eligible for your current tier. Maintain is 80% of Earn. If your share falls below Maintain at a monthly assessment, you keep your current RFQ rate limit for that month. If your share is still below Maintain at the next monthly assessment, you move to a lower eligible RFQ tier for that month.
RFQ tiers use a separate volume measure and eligibility thresholds from the institutional order-entry (REST and unary gRPC) and FIX tiers above.
Summary
Rate Limit Response
When rate limited, the REST API returns:429 Too Many Requests
Retry Strategy
When receiving a 429 response:- Stop making requests immediately
- Wait 1 second before retrying
- Implement exponential backoff for repeated 429s
- Consider reducing your request rate
Latency Stopgap on Orders
During periods of increased latency, Polymarket US applies a 5-second stopgap to inbound orders. If an order has been received by Polymarket US but has not been processed within 5 seconds, we reject it to protect you from a bad fill at a stale price. What it applies to:- New orders — rejected if not processed within 5 seconds.
- Order modifications via cancel/replace — also subject to the stopgap.
- Pure cancels are not affected — a standalone cancel is never rejected by this stopgap.
Best Practices
Use Streaming Instead of Polling
The API is designed as a streaming-first system. Instead of repeatedly polling for updates, subscribe to real-time streams:Streaming connections don’t count against the REST rate limit. One streaming connection can replace hundreds of polling requests. New
StreamRFQEvents connections are limited to one open attempt per second per firm, so reconnect with backoff.Cache Reference Data
Reference data (instruments, symbols, metadata) changes infrequently -ListInstruments and ListSymbols are limited to just 6 req/min. Cache responses locally:
Batch Operations
Where possible, batch your operations instead of making individual requests:- Use
SearchOrderswith filters instead of fetching orders one by one - Use
ListInstrumentswith symbol filters instead of individual lookups - Subscribe to multiple symbols in a single streaming connection
Monitoring Your Usage
Track your request patterns to stay within limits:Abuse Prevention
Patterns that may result in temporary or permanent restrictions:- Sustained requests above the rate limit
- Polling for data available via streaming
- Requesting the same unchanged data repeatedly
- Automated retry loops without backoff
Troubleshooting Rate Limits
Consistently Hitting Limits
If you’re consistently receiving 429 errors:- Reduce request frequency
- Batch multiple operations where possible
- Cache responses that don’t change frequently (reference data, instrument lists)
- Use streaming endpoints instead of polling
- Request higher limits for production use (see below)
Need Higher Limits
For production use cases requiring higher limits, send your Polymarket contact your use case, expected volume, environment (dev, preprod, prod), and the endpoints you need higher limits for.Next Steps
gRPC Streaming
Replace polling with real-time streams
Authentication
Set up API authentication