Increasing Stake

The first ever Starknet validator survey is now live!

Make your voice heard and help improve Starknet and its ecosystem together 🤜🤛

The staking and pooling contracts allow validators and delegators to increase their existing stake. Validators use the increase_stake function, which is called from the Staking contract, while delegators use the add_to_delegation_pool function, which is called from the delegation pooling contract. These functions add the specified amount of STRK tokens to the current stake, recalculate rewards before the staked amount is updated, and update the total staked amount.

Prerequisites
  • Sufficient STRK token balance in your Starknet wallet.

  • The caller must be either the validator/delegator or their respective reward address.

Procedure
  1. Pre-approve the STRK ERC20 contract for the transfer of tokens from your address to the relevant contract:

    • Validators: Pre-approve the staking contract for the transfer of tokens from your address.

    • Delegators: Pre-approve the delegation pooling contract for the transfer of tokens from your address.

  2. Using a Starknet block explorer, navigate to the relevant contract (Staking contract for validators, delegation pooling contract for delegators).

  3. In the contract interface, locate and select the increase_stake function (for validators) or the add_to_delegation_pool function (for delegators).

  4. Enter the following parameters:

    • In address, enter the address of the validator (for increase_stake) or the delegator (for add_to_delegation_pool) whose stake you want to increase. This can be either the validator’s/delegator’s address or their respective reward address.

    • In amount, enter the number of STRK tokens you want to add to the existing stake.

  5. Submit the transaction to execute the stake increase.

Ensure that the validator is not in an unstake process before attempting to increase the stake. If they are currently unstaking, this function will fail.