suideveloper
All questions
Consensus, validators and staking

How do I become a Sui validator?

October 31, 2026

You need three things: a production node that meets the hardware requirements, a validator candidate registered on-chain, and enough delegated stake to reach the joining threshold. Under SIP-39 that threshold is a voting power of 3 out of 10,000, which is 0.03% of total stake. As of epoch 1291 (25 October 2026), total stake was about 7.08 billion SUI, so the threshold works out to roughly 2.1 million SUI. Once you meet it, you request to join, and you become active at the next epoch boundary.

Hardware

The Sui docs list these suggested minimums for a validator:

  • 24 physical cores (48 vCPUs)
  • 128 GB RAM
  • 4 TB NVMe storage
  • 1 Gbps network

A validator runs sui-node with a validator.yaml config instead of fullnode.yaml. Plan for key management, monitoring and upgrades before you go live. Each protocol upgrade requires validators to update their binary.

Register a candidate with the CLI

The sui validator subcommands wrap the 0x3::sui_system entry functions. Use an Ed25519 account that holds some SUI for gas:

Terminal
# 1. Generate protocol, network, worker and account key files plus validator.info
sui validator make-validator-info \
  "My Validator" "Short description" \
  "https://example.com/logo.png" "https://example.com" \
  validator.example.com 1000

# 2. Register as a candidate (calls request_add_validator_candidate)
sui validator become-candidate validator.info

# 3. Once you have enough stake, ask to join next epoch (calls request_add_validator)
sui validator join-committee

The arguments to make-validator-info are name, description, image URL, project URL, host name and gas price. The command writes protocol.key, account.key, network.key, worker.key and validator.info to the current directory. Keep the key files safe, because the node uses them to sign.

Get delegated stake

Once you're a candidate, your staking pool exists and anyone can stake to it with request_add_stake, using your validator address. This can be you, your organisation or delegators. Stake goes to your validator address, not to the staking pool ID. See how staking works.

join-committee aborts with EMinJoiningStakeNotReached if the pool would have less than 3 voting power after joining. The check runs again at the epoch change. If other validators' stake grew in the meantime and you fell below the threshold, you're returned to the candidate list.

Staying in the set

The SIP-39 rules (phase 3, active on mainnet) are enforced at every epoch change:

Voting power Result
2 or more Safe
1 to just under 2 At risk. Removed after 7 consecutive epochs
Below 1 Removed at the next epoch change

Other validators can also report you with sui validator report-validator. If a quorum reports you, your stake rewards for that epoch are slashed. Commission is capped at 20% (MAX_COMMISSION_RATE = 2000 basis points).

30M SUI or voting power?

Older guides, and parts of the docs, still say you need 30 million SUI. That was the original min_validator_joining_stake. SIP-39 replaced it with voting-power thresholds, and the current framework code checks voting power, not the 30M parameter. The SUI equivalent moves as total stake changes, so check the current total stake (see how many validators Sui has) before you plan.

If you only want to serve data or follow the chain, you need a full node, not a validator.

Sources

More on consensus, validators and staking