SubnetLocked

Storage Map v133 → current

TAO locked for a subnet .

Explore chain
Queried by: subnet ownersanalyticsdevelopers

The Big Picture

Creating a subnet requires locking TAO as a commitment. SubnetLocked shows how much is locked for each subnet. This capital is at risk if the subnet is dissolved. Higher lock = more commitment from the owner = more skin in the game.

Why This Matters

How committed is this subnet owner? SubnetLocked shows their capital at stake. More locked TAO = stronger commitment to making the subnet successful.

Example Scenario

Query SubnetLocked(netuid=18) returns 100000000000000 (100,000 TAO). The owner locked 100K TAO to create this subnet - significant commitment.

Common Questions

Is locked TAO lost?
Not necessarily. If the subnet remains healthy, the TAO stays locked but isn't lost. If dissolved, locked TAO may be slashed or returned based on rules.
Why require locking?
Prevents spam subnet creation. Lock cost ensures only serious operators create subnets and have incentive to maintain them.
Does this change over time?
Typically fixed at creation based on NetworkMinLockCost at that time. Some mechanisms might adjust it later.

Use Cases

  • Check how much TAO is locked in a subnet
  • Research subnet creation costs over time
  • Build subnet economics dashboards
  • Calculate owner's capital commitment
  • Track locked TAO across the network

Purpose & Usage

Purpose

Track lock cost paid for subnet creation - the stake the owner put up to create this subnet.

Common Query Patterns

  • Query by netuid
  • Calculate owner's locked capital
  • Research subnet creation economics
Part of: Subnet Management

Query Keys

#NameTypeDescription
1
key1
u16 key1 (u16)

Stored Value

Value in RAO (÷10⁹ for TAO)

RAO -> TAO (/ 10^9)

Relationships

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 SubnetLocked storage
const key1 = 0;

const result = await api.query
  [stringCamelCase("SubtensorModule")]
  [stringCamelCase("SubnetLocked")](
  key1
);

console.log("SubnetLocked:", result.toHuman());

Runtime Info

View Source
Pallet
SubtensorModule
Storage Kind
Map
First Version
v133
Current Version
v393