Skip to main content
CLOB V2 introduces a fee layer that lets builders earn a fee on every order routed through their application. When a builder attaches their unique builder code to an order and that order matches, a builder fee is collected alongside any platform fee. Builder fees are flat percentages of trade notional, configured by each builder within enforced limits. They’re additive — they stack on top of platform fees, never replace them.
New to the Builder Program? Start with Builder Program. This page covers the fee layer specifically.

How It Works

Builder fees and platform fees are independent. What the user pays depends on the market config and whether a builder code is attached: Builder fees never replace platform fees — they’re always additive.
Polymarket reserves the right to revoke your ability to charge a builder fee in its sole discretion, for any reason or no reason, including but not limited to instances where fees are determined to have been collected through fraudulent, deceptive, misleading, automated, self-referred, or other non-bona fide trading activity.

Registration

Register for a builder code through your Polymarket account.
1

Create a Builder Profile

Open polymarket.com → Settings → Builders and set up your builder profile.
2

Set Your Fee Rates

Configure two rates on your profile:
  • Taker Fee Rate — charged on taker orders routed through your app
  • Maker Fee Rate — charged on maker orders routed through your app
3

Copy Your Builder Code

Your profile is assigned a bytes32 builder code. Attach it to every order you submit.

Fee Rate Limits

Rate Change Policy

Fee rate changes are gated so users can see them coming:
  • Cooldown. One rate change per 7 days.
  • Advance notice. Changes take effect 3 days after being scheduled.
  • One pending change at a time. You can’t queue multiple changes — wait for the current one to take effect (or cancel it) before scheduling another.

Fee Calculation

Platform Fees

Platform fees use a dynamic per-market formula:
Where C is the trade size, p is the order price, and feeRate is a per-market parameter. Platform fees are currently taker-only and are not configurable by builders.

Builder Fees

Builder fees are a flat percentage of notional:
Example. A 1,000 pUSD taker buy routed through a builder charging 100 bps (1%) taker fee:
The maker and taker sides of a single trade can have different builder codes and different rates. If Builder A (0.3% maker) posts the resting order and Builder B (0.8% taker) submits the matching order, each earns their respective fee from their respective side.

Balance Checks

The account must have enough pUSD to cover the trade and all applicable platform and builder fees. For market buys, set an all-in spending limit so the order amount is adjusted for fees before signing.

Onchain Attribution

Builder attribution is part of the signed V2 order struct — not an offchain label. The builder field appears in every OrderFilled event emitted by the CTF Exchange V2 contract.

V2 Order Struct

The builder field is a bytes32 matching your registered builder code.

Fee Processing and Payouts

When a user places an order with your builderCode attached:
  1. The CLOB validates the order and the builder code.
  2. At match time, the Fees Service computes the platform and builder fees for each side.
  3. The trade settles onchain via CTFExchangeV2.matchOrders(), emitting OrderFilled events.
  4. The Builders Service indexes those events, joins onchain attribution with your builder profile, and accrues your earned fees.
Collected builder fees are distributed to the wallet associated with your builder profile.

Program Policies

Disabled Codes

Polymarket may disable a builder code at any time — for violations of the Builder Program terms, abusive fee practices, or platform integrity concerns. Orders carrying a disabled code will be rejected by the CLOB.

Public Visibility

Builder profiles and fee rates are publicly queryable. This is intentional — it lets users and third parties see what a builder charges before using their app.