Queried by: minersvalidatorsdevelopersanalyticswallets
The Big Picture
Burn registration is the alternative to POW - pay TAO instead of compute. The burn amount adjusts based on registration demand, similar to difficulty. High demand = higher burn cost. It's an economic barrier that ensures registration slots go to those who value them enough to pay.
Why This Matters
How much TAO to register? Burn tells you. This is the price tag for network access on each subnet. Compare to your expected earnings to decide if registration is economically viable.
Example Scenario
Query Burn(netuid=1) returns 1000000000 (1 TAO in RAO). You must pay 1 TAO to register via burn registration on subnet 1. This TAO goes into the subnet's liquidity pool.
Common Questions
- How does burn adjust?
- Like difficulty, based on TargetRegistrationsPerInterval. More demand = higher burn. Less demand = burn decreases toward MinBurn.
- Is the TAO actually burned?
- Despite the name, TAO isn't destroyed. It's swapped into the subnet's liquidity pool (SubnetTAO), and the Alpha received is burned. The TAO stays in the ecosystem - it becomes available for others to swap out of the pool.
- Should I burn or POW?
- If you have idle compute, POW might be cheaper. If you value time and have TAO, burn is instant. Do the math: (electricity cost for POW) vs (burn TAO × TAO price).
- Are there limits on burn?
- Yes, check MinBurn and MaxBurn. Burn cost stays within these bounds regardless of demand.
Use Cases
- Check registration cost before registering
- Compare burn vs POW registration economics
- Build registration cost displays and estimators
- Track subnet demand through burn price
- Plan registration budget across multiple subnets
Purpose & Usage
Purpose
Control registration TAO cost - how much TAO must be burned to register on a subnet.
Common Query Patterns
- Query by netuid before burn registration
- Monitor burn cost trends over time
- Compare burn costs across subnets
Query Keys
| # | Name | Type | Description |
|---|---|---|---|
| 1 | key1 | u16 | key1 (u16) |
Stored Value
Relationships
Modified By
Related Events
Code Examples
import { ApiPromise, WsProvider } from "@polkadot/api";
import { stringCamelCase } from "@polkadot/util";
const provider = new WsProvider("wss://entrypoint-finney.opentensor.ai:443");
const api = await ApiPromise.create({ provider });
// Query Burn storage
const key1 = 0;
const result = await api.query
[stringCamelCase("SubtensorModule")]
[stringCamelCase("Burn")](
key1
);
console.log("Burn:", result.toHuman());Runtime Info
View Source- Pallet
- SubtensorModule
- Storage Kind
- Map
- First Version
- v101
- Current Version
- v393