Staking
Stake RLM to secure the network and earn rewards
Overview
Staking RLM secures the Realm network and earns you a share of trading fees. You can stake directly or delegate to a validator.
Staking Requirements
- Minimum stake: 100 RLM
- Unbonding period: 7 days
- Reward distribution: Every epoch (~1 hour)
How to Stake
stake.tstypescript
import { RealmClient } from '@realm/sdk';const client = new RealmClient();await client.connect(wallet);// Stake 1000 RLMawait client.stake({amount: 1000,validator: '0x...', // Optional: delegate to validator});// Check staking infoconst info = await client.getStakingInfo();console.log('Staked:', info.staked);console.log('Pending rewards:', info.pendingRewards);
Claiming Rewards
claim.tstypescript
// Claim accumulated rewardsawait client.claimRewards();
Unstaking
Unbonding Period
Unstaking takes 7 days. Your tokens will not earn rewards during unbonding.
unstake.tstypescript
// Unstake 500 RLMawait client.unstake({amount: 500,});// Tokens available after 7 days
Reward Calculation
Staking rewards come from trading fees. Your share is proportional to your stake relative to total staked:
rewardstext
Your Reward = Total Fees × (Your Stake / Total Staked)Example:- Total fees this epoch: 10,000 USDC- Total staked: 10,000,000 RLM- Your stake: 10,000 RLM- Your reward: 10,000 × (10,000 / 10,000,000) = 10 USDC