Skip to main content

Staking Flow

Before interacting with the API methods, it is useful to understand how native staking works on Monad.

Monad staking follows an EVM-compatible delegation model. A delegator assigns tokens to a validator, who participates in block production and network consensus. By delegating tokens, you help secure the network and earn staking rewards.

All staking operations are executed on-chain. The Stakely Staking API crafts the required transactions, while signing and broadcasting are handled by your application.

Staking user journey

A high-level view of what happens to your funds and the wait times involved. Each box is a state of your position; the arrows are the actions (and the time) that move between them.

Staking parameters

Key parameters for planning a Monad native staking integration:

ParameterValue
Staking typeNative
NetworksMainnet
API minimumNone
Stake activationNext epoch; up to 2 epochs (~5h 30m to ~11h)
Unbonding / lock when exitingNext epoch; up to 2 epochs (~5h 30m to ~11h)
Rewards modelManual claim or compound
Monad epochs

Monad epochs last 50,000 blocks, which is about 5 hours 30 minutes. Both stake activation and unstaking take effect at an epoch boundary, so the wait depends on where in the current epoch the transaction lands: a transaction early in an epoch can be pending for close to a full epoch, and depending on the epoch's state it can take up to 2 epochs (~11h). Plan UX for a range of roughly 5h 30m to 11h rather than a fixed value.


Delegate

Delegation assigns a specified amount of tokens to a validator.

  1. Initiate Delegation: Use the delegate action to create a transaction that delegates a chosen amount to a validator.
  2. Transaction Confirmation: Once the transaction is confirmed on-chain, the delegation is registered but not yet active.
  3. Activation: The stake becomes active at the next epoch boundary (~5h 30m per epoch). Depending on the state of the epoch, activation can take up to 2 epochs (~11h).
  4. Reward Accrual: Once active, rewards begin to accumulate based on validator performance and protocol rules.

Undelegate

Undelegation starts the process of removing tokens from an active stake position.

  1. Initiate Undelegation: Use the undelegate action to signal the removal of a specified amount from your delegated stake.
  2. Withdrawal Slot Assignment: The undelegated amount is placed into a withdrawal slot.
  3. Withdrawal Epoch: Tokens remain locked until the next epoch boundary, on the same timing as activation: roughly 5h 30m, and up to 2 epochs (~11h) depending on the state of the epoch.

Withdraw

Once an undelegated amount becomes available after the withdrawal epoch, it must be withdrawn.

  1. Check Withdrawal Availability: Verify that the withdrawal slot is ready.
  2. Withdraw Funds: Use the withdraw action to transfer the available amount back to your wallet.
  3. Post-Withdrawal: Withdrawn tokens can be transferred, redelegated, or used in other on-chain operations.

Claim rewards

Staking rewards can be claimed independently of delegation and undelegation actions.

  1. Check Accumulated Rewards: Retrieve current reward information for the delegator address.
  2. Claim Rewards: Use the claim rewards action to transfer accumulated rewards to your wallet.

Compound rewards

Rewards can also be reinvested directly into the active stake position.

  1. Compound Rewards: Use the compound action to automatically add accumulated rewards back into your delegated stake.
  2. Increased Stake: The compounded amount increases your active delegation and continues earning rewards.

API interaction