Bribing veCRV gauges 101

Andre Cronje
4 min readAug 20, 2021

Background

You can lock CRV to create veCRV;

dao.curve.fi/locker

Once you have veCRV, you can vote for gauges every 10 days

dao.curve.fi/gaugeweight

Having veCRV has a few innate benefits;

  • 50% of all trading fees generated by curve.fi are distributed weekly to veCRV holders (claim at the bottom of curve.fi)
  • veCRV boosts how much CRV rewards you receive for providing liquidity

Liquidity Mining & Bribes

Liquidity is a major component for projects, often projects provide liquidity incentives (or liquidity mining) to increase liquidity, liquidity providers provide liquidity and they receive the projects native tokens, examples include SNX on sUSD, ALCX on alUSD, SPELL on MIM, etc.

If this liquidity is available in a curve.fi pool, then they also receive CRV tokens. The amount of CRV received by a given pool (gauge) is based on the gauge weight, which is a function of how much veCRV has voted for that gauge (pool).

As such, projects have two options to increase liquidity via liquidity mining, option 1 via their native token, option 2 via veCRV votes.

Receiving bribes

For the purpose of incentivizing veCRV votes, we created bribe.crv.finance, this allows projects to provide incentives for veCRV votes (thus increasing CRV rewards / this same system can be used to incentivize DAO votes).

If you have veCRV, you can vote every 10 days via dao.curve.fi/gaugeweight. On the dashboard of bribe.crv.finance you will see any upcoming bribes, these will show you an estimate of how much rewards you will receive if you vote for the given pool.

The estimate is based on voting 100% of your veCRV for the pool, this however is not required, you can split your vote however you prefer. So you could split your vote 33% SPELL (MIM), 33% FTM (fantom-fusdt), 33% CREAM (ib ~ Iron Bank)

If you voted in this week, at week reset (Thursday UTC), you can claim your share of the rewards. Once you have voted for a given pool, you will keep receiving the rewards every week, you do not have to revote every 10 days. So if this week I voted for fantom-fusdt pool, then next week I can claim my share of FTM rewards, as well as the following week, ad infinitum as long as rewards are available.

  • Vote once, claim weekly, no need to revote
  • Split up votes in any %, no need to vote 100%

Bribing veCRV

If you are a project wanting to incentivize liquidity, you can easily add incentives to a gauge.

Simply click ADD A REWARD

Find the gauge/pool you want to incentivize, Choose Pool

Paste in the reward token address in the first input field, and the amount of reward tokens on offer in the second input field and select Submit

This will create a transaction for add_reward_amount

Alternatively, you can do so directly via the contract here

Contract definitions

Address: 0x7893bbb46613d7a4FbcC31Dab4C9b823FfeE1026

active_period(address gauge, address reward_token) : The current active claim period (always previous week starting Thursday UTC) for a given gauge and token

claimable(address user, address gauge, address reward_token) : The amount of tokens a veCRV voter has claimable

claim(address user, address gauge, address reward_token) : Claims the claimable rewards for a given user.

add_reward_amount(address gauge, address reward_token, uint amount) : Adds the given amount of reward_token as rewards for a given gauge. These rewards are added for the next active_period

--

--