FieldDeposit

Constant v136 → current u64

Increases deposit cost for larger identities, discouraging excessive field usage.

Current Value

0.10 TAO (100000000 raw)

Conversion: ÷ 10^9 (RAO → TAO)

Relevant for: validatorsdeveloperswallets

The Big Picture

Each additional field in your identity requires extra deposit. This creates an economic incentive to keep identities concise. Total deposit = InitialDeposit + (FieldDeposit * number of additional fields). More fields = more locked TAO.

Why This Matters

If you want a rich identity with custom fields, you'll pay more deposit. This constant tells you the per-field cost so you can calculate the total and decide if extra fields are worth it.

Example

InitialDeposit is 0.1 TAO, FieldDeposit is 0.1 TAO. A basic identity costs 0.1 TAO deposit. Adding 1 additional field (like 'discord') brings total to 0.2 TAO. Adding 2 fields costs 0.3 TAO. All refundable when you clear the identity.

Common Questions

Does this apply to standard fields too?
No, only to additional (custom) fields beyond the standard set. Standard fields (display, email, etc.) are covered by InitialDeposit.
Can I reduce my deposit by removing fields?
Yes, call set_identity with fewer fields. The deposit adjusts down and excess is returned.

From Chain Metadata

The amount held on deposit per additional field for a registered identity.

Use Cases

  • Calculate total deposit for identity with additional fields
  • Design identity forms with cost awareness
  • Understand economics of rich vs minimal identities

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 FieldDeposit constant
const value = api.consts[stringCamelCase("Registry")][stringCamelCase("FieldDeposit")];
console.log("FieldDeposit:", value.toHuman());

// Convert RAO to TAO if this is a balance value
const taoValue = value.toBigInt() / BigInt(1e9);
console.log("TAO:", taoValue.toString());

Type Information

Type
u64
Byte Size
8 bytes
Encoding
fixed
Raw Hex
0x00e1f50500000000

Runtime Info

Pallet
Registry
First Version
v136
Latest Version
v136
Current Runtime
v393