@sdk.markets/sdk is currently a preview package. These docs show the SDK surface we're building toward.Join the waitlist
markets sdk

Fees

How value flows out of a finalized market.

Two fees are deducted from the total pool at finalization. Neither fee is taken on voided markets.

The two fees

  • Creator fee. Set per market at creation via creatorFeeBps (0–500, i.e. 0%–5%). Routes to creatorFeeRecipient, which should default to the creator wallet in the SDK surface.
  • Platform fee. Set globally on the factory via setFeeConfig(recipient, bps) (0–500). Routes to the factory's configured platform recipient. Reflected on each market at creation time — changing the factory's platform fee doesn't retroactively change fees on already‑created markets.

Combined cap: 1,000 bps (10%). The factory reverts on createMarket if the sum exceeds this.

When fees are taken

Fees are deducted inside finalizeMarket() — not at creation, buy‑in, or resolution. Before finalization, the full pool sits in the contract. After finalization, fees are transferred and the remainder becomes the payout pool.

payoutPool = totalPool × (10000 - creatorFeeBps - platformFeeBps) / 10000
creatorCut = totalPool × creatorFeeBps / 10000
platformCut = totalPool × platformFeeBps / 10000

FeesPaid(creatorFeeAmount, platformFeeAmount, creatorFeeRecipient, platformFeeRecipient) is emitted alongside MarketFinalized.

Voided markets pay nothing

If the market voids via dispute majority, no fees are taken. Every participant's refund() returns their exact stake in USDC. The creator and platform recipients earn nothing on a void.

This is a design choice, not a bug: fees compensate hosts for running legitimate markets. If the market is invalid enough to void, there's nothing to compensate.

Picking fee levels

A few practical considerations:

  • 0%–1% feels free. Participants don't notice and it barely changes expected value.
  • 2%–5% is standard. Most prediction market platforms cluster here.
  • Above 5% gets noticeable quickly on short‑horizon markets. The cap on creator fee (500 bps) plus platform fee (up to 500 bps more) gives a hard ceiling of 10% combined.

Fees compound with time‑value: on a week‑long market with a 5% total fee, expected annualized drag is meaningful. Communicate fees clearly in your UI — participants will discover them either way, but surprise discoveries are the ones that burn trust.

On this page