DelegateTakeTooLow
Error Re-added v151 → v212, v216 → v216, v217 → v219, v233 → v315, v320 → v326, v334 → current 7.48The delegate take rate is below the minimum allowed.
Why This Error Exists
Bittensor enforces a minimum delegate take to ensure validators are compensated for their work. Without a floor, a race to zero could harm validator economics and network health. The minimum ensures validators can sustainably operate while still allowing competition on rates.
Deep Dive
MinDelegateTake is typically around 900 basis points (9%) but can change via governance. Take decreases are allowed (via decrease_take) but cannot go below this floor. The rate limit on take changes also prevents rapid manipulation - validators cannot quickly swing between high and low takes.
Debugging Example
You call decrease_take(hotkey=5Xyz..., take=500). Error: DelegateTakeTooLow. Query MinDelegateTake - returns 900 (9%). Your requested 500 (5%) is below the floor. Solution: Set take >= 900. Call decrease_take(hotkey, take=900) for minimum allowed.
Prevention Tips
- Query MinDelegateTake before decreasing take
- Remember the rate is in basis points (900 = 9%)
- Plan your take strategy within the allowed range
From Chain Metadata
Delegate take is too low.
What This Means
The delegate take rate is below the minimum allowed.
Common Causes
- Take percentage below MinDelegateTake
- Trying to set take to zero when minimum exists
How to Fix
- Check SubtensorModule.MinDelegateTake for the minimum
- Set take at or above the minimum allowed
Storage to Check
Thrown By
Version History
Runtime Info
- Pallet Index
- 7
- Error Index
- 48
- Error Code
- 7.48
- Runtime Version
- v393