Skip to content

Maker Rebates

Openfish rewards makers through two complementary mechanisms. At the trade level, a fixed maker share of the taker fee is allocated to the resting maker on every fill. On top of that, a daily rebate program can pay additional basis points scaled to the maker’s confirmed volume for the preceding 24 hours. Both layers settle in the Openfish FISH ledger and are credited automatically.


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

Market configurationCreator shareMaker rebate shareProtocol share
Creator-configured market60%25%15%
System market without creator fee config0%25%75%

This split occurs on every individual fill. The maker portion scales with the fee the taker actually paid, which is a function of trade size, price, and the market’s configured fee_bps. Current system-created markets do not need to go through the old public auction path to become live.

On a market with fee_bps = 25:

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

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 maker share.


Terminal window
curl "https://api.openfish.me/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.me/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 FISH equivalent.

ProgramWhat it rewardsHow it pays
Maker rebates (this page)Actual fills — your orders got traded againstPer-trade maker share + 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.