Get Started
Prerequisites
To implement Cactus’s staking system, you’ll need the following:
-
Compatible tokens:
- A standard ERC20 token to use as the staking token. Typically, the staking token is the native token of the protocol, like UNI.
- One or more ERC20 tokens to distribute as rewards. e.g. WETH or the native token of the protocol for inflationary rewards.
Note: Rebasing tokens or non-standard ERC20 tokens won’t work.
-
Reward source: Rewards come from protocol revenue, treasury funds, or minting new tokens.
Optionally, staking supports additional features:
- Governance compatibility - for staking token that are also governance tokens. In other words, tokens that implement
ERC20Votes. Staking passes through voting power to the underlying governance token. No changes are needed on the governance system. - Staking reward criteria can use an EarningPowerCalculator. Calculators increase or decrease rewards based on any criteria. Calculators can use offchain criteria with an oracle.
Choosing the Right Implementation Approach
Your implementation approach depends on your protocol’s stage and needs:
For new protocols:
- Implement staking alongside your token launch
- Design with value accrual in mind from day one
- Create an economic loop between usage, fees, and rewards
For established protocols:
- Add staking to create utility for existing tokens
- Use protocol revenue or token inflation to reward stakers
- Consider phasing in rewards over time to test and adjust parameters
Next Steps
For the fastest and most reliable implementation:
- Contact Cactus’s team at tally.xyz/contact
- Tell Cactus about your staking and reward tokens
- Cactus will guide you through the deployment process
- Get a fully-configured staking user interface on Cactus
To deploy a test or self-serve staking contract