Keeper Incentives

Keepers keep the Drift network healthy.

Keeper Rewards

For matching orders, Keepers receive a portion of the taker fee.

For cancelling orders (that can be cancelled see Advanced Orders FAQ), Keepers will receive the cancel_order_fee on the state.

Liquidation rewards for keepers are different for every market and range from 0.75% to 3% of the amount liquidated. See Fee schedule.

Currently, the USDC reward function for keepers (f_keeper) is designed as:

fkeeper=min(0.01max(1,torder)1/4, 0.1fuser)f_{\text{keeper}} = \min\left(0.01 \cdot \max\left(1, t_{\text{order}}\right)^{1/4},\ 0.1 \cdot f_{\text{user}}\right)

where:

  • (t_{\text{order}}) is seconds since the order was placed

  • (f_{\text{user}}) is the taker fee paid by the user who placed the order

This reward is subject to evolve to incentivise CLOB-like execution ordering. See source code for the on-chain calculation.

A Keeper reward multiplier (for taker price improvement) is applied to the keeper's minimum time-based reward component in the function above. Any percent improvement versus the baseline oracle +/- 10bps increases this multiplier.

30d fill volume for keepers is tracked on-chain via UserStats, allowing for logic to reward consistent keepers with a larger multiplier on rewards.

Last updated