← Protocols
Convex
01Description

Yield-boosting layer on top of Curve. Deposits Curve LP tokens through Convex's locked veCRV position to earn boosted CRV + CVX + bribes without locking any CRV yourself.

02Best for
  • 01boosted Curve LP yield
  • 02cvxCRV / vlCVX governance plays
  • 03stablecoin / LST LP farming
  • 04Votium / Hidden Hand bribe markets
03Install
  • pnpm add viem
04Environment variables
VariableScopeDescription
NEXT_PUBLIC_CONVEX_BOOSTERClientConvex Booster on Ethereum mainnet: 0xF403C135812408BFbE8713b5A23a04b3D48AAE31. Entry point for all Curve-pool deposits.
NEXT_PUBLIC_CVXCRV_STAKINGClientcvxCRV staking contract on Ethereum mainnet: 0xaa0C3f5F7DFD688C6E646F66CD2a6B66ACdbE434.
05Prompt snippet
Integrate Convex boosted Curve farming. Look up the `pid` (pool id) for a given Curve LP from `Booster.poolInfo(pid)` or the public `https://www.convexfinance.com/api/curve-apys` endpoint. Deposit: `IERC20(curveLP).approve(Booster, amount); Booster.deposit(uint256 pid, uint256 amount, bool stake=true)` — `stake=true` auto-stakes the wrapped cvxLP into the pool's `BaseRewardPool` so CRV+CVX+extras start accruing immediately. Claim rewards with `BaseRewardPool.getReward(address account, bool claimExtras)`. Withdraw with `BaseRewardPool.withdrawAndUnwrap(uint256 amount, bool claim)` — returns the original Curve LP. For CRV holders: convert CRV→cvxCRV one-way via the `CrvDepositor`, stake on `cvxCRV staking` for the same yield as veCRV plus a share of platform fees. Lock CVX for 16 weeks via `CvxLockerV2.lock(account, amount, spendRatio)` to gain vlCVX governance + bribe income.
06Gotchas
  • Converting CRV → cvxCRV is ONE-WAY (no peg redemption); cvxCRV/CRV peg is maintained only by a Curve secondary market and can de-peg during stress.
  • vlCVX locks are 16 weeks (epoch-based); locks auto-relock by default but can be set to expire — bribe revenue requires active voting via Votium each epoch.
  • Boost depends on Convex's veCRV holdings vs total Curve gauge weight; dilution by other large veCRV holders (Stake DAO, individual whales) reduces effective boost over time.
  • `Booster.deposit` with `stake=false` mints a wrapped cvxLP token that does NOT earn rewards until you stake it in the corresponding `BaseRewardPool` — easy to miss.
  • Curve gauge weights are voted on biweekly — a pool you farm today can lose CRV emissions if voters move weight elsewhere (gauge politics / bribe wars).
  • Reward tokens beyond CRV+CVX (`extraRewards`) are gauge-dependent and may include illiquid tokens that need manual swapping.
  • Convex itself charges a fee split on CRV rewards (~17% to cvxCRV stakers / vlCVX / platform); APY shown is post-fee but verify on the Convex UI vs Curve native APR.
07Alternatives