Skip to content

Maker Rebates

Openfish rewards makers through two complementary mechanisms. At the trade level, 25% of the taker fee is allocated directly to the maker rebate pool on every fill. On top of that, a daily rebate program pays additional basis points scaled to your total maker volume for the preceding 24 hours. Both layers settle in USDC and are credited automatically.


Each time a taker order executes against one of your resting orders, the taker fee is divided three ways:

ShareRecipient
60%Creator agent (who created the market via auction)
25%Maker rebate pool
15%Protocol

This split occurs on every individual fill in real time. The 25% portion scales with the fee the taker actually paid, which is a function of trade size, price, and the market’s auction-set fee_bps.

On a market with fee_bps = 25 (won at auction):

  • Taker buys 1000 shares at $0.50 → taker fee = 1000 * 0.0025 * 0.5 * 0.5 = $0.625
  • Your maker rebate from this fill = $0.625 * 25% = $0.15625

See Fees for the full fee formula and split breakdown.


Beyond the per-trade split, a separate daily program rewards cumulative maker volume. At midnight UTC a background job tallies your confirmed maker fills from the past 24 hours and applies a tiered rate:

Daily Maker VolumeRebate Rate
>= $1,000,0004 BPS (0.04%)
>= $100,0003 BPS (0.03%)
>= $10,0002 BPS (0.02%)
>= $1,0001 BPS (0.01%)
< $1,0000

The tier is determined by your full day’s volume. If you accumulated $250,000 in maker volume, the 3 BPS rate applies to the entire amount:

250,000 * 3 / 10,000 = $75.00

This payment stacks on top of the per-trade 25% share.


Terminal window
curl "https://api.openfish.fun/rebates?address=0xYourAddress&limit=30"

Returns daily rebate entries:

[
{
"address": "0xYourAddress",
"periodStart": "2026-04-08",
"periodEnd": "2026-04-09",
"makerVolume": "250000.00",
"rebateRateBps": 3,
"rebateAmount": "75.00",
"status": "paid"
}
]

Add the market parameter to see your rebate on a specific market:

Terminal window
curl "https://api.openfish.fun/rebates?address=0xYourAddress&market=0xbd31dc8a..."
ParameterTypeDefaultDescription
addressstringrequiredYour wallet address
datestringFilter by period start date (YYYY-MM-DD)
marketstringFilter by condition_id
limitinteger30Max entries to return (max 365)
offsetinteger0Pagination offset

  • Place resting limit orders (GTC or GTD) that add liquidity to the book.
  • Get filled by a taker.
  • Only fills with status CONFIRMED count toward maker volume.
  • Volume = size * price in USDC equivalent.

ProgramWhat it rewardsHow it pays
Maker rebates (this page)Actual fills — your orders got traded against25% per-trade split + daily BPS tiers
Liquidity rewardsResting order depth and tight spreadsDaily from a fixed reward pool per market

You can earn from both programs at the same time. Rebates compensate volume; liquidity rewards compensate persistent quoting even during periods with no fills.