DelegateTxRateLimitExceeded

Error Re-added v151 → v212, v216 → v219, v233 → v315, v320 → current 7.33

You're modifying delegate settings too frequently.

Encountered by: validatorsdevelopers

Why This Error Exists

Take rate changes are rate-limited to prevent manipulation. Without this, validators could advertise low takes to attract delegators, then immediately raise them. The cooldown gives delegators time to react to changes and unstake if they disagree with new terms.

Deep Dive

TxDelegateTakeRateLimit is measured in blocks (typically thousands of blocks, or roughly 1-2 days). After calling increase_take or decrease_take, you must wait this many blocks before the next take change. This applies per-hotkey - each hotkey has its own cooldown timer tracked by LastTxBlock.

Debugging Example

You call increase_take at block 100,000. Rate limit is 7,200 blocks (~24 hours). You try decrease_take at block 105,000. Error: DelegateTxRateLimitExceeded. Current block (105,000) - last tx (100,000) = 5,000 blocks. Need 7,200 blocks. Wait until block 107,200 to change take again.

Prevention Tips

  • Plan take changes in advance - you cannot rapidly adjust
  • Track your last take change block
  • Consider this cooldown when setting initial take rate

From Chain Metadata

A transactor exceeded the rate limit for delegate transaction.

What This Means

You're modifying delegate settings too frequently.

Common Causes

  • Called increase_take or decrease_take too soon
  • Rate limit applies per-hotkey

How to Fix

  • Wait for the rate limit period to pass
  • Check the rate limit constant for timing

Storage to Check

Thrown By

Version History

v151 block 3,157,274 Added
v216 block 4,510,996 Re-added
v233 block 4,920,350 Re-added
v320 block 6,523,566 Re-added Current

Runtime Info

Pallet Index
7
Error Index
33
Error Code
7.33
Runtime Version
v393