> For the complete documentation index, see [llms.txt](https://service.block-pro.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://service.block-pro.net/mainnet/lava/validator.md).

# Validator

Create and maintain a Lava validator on Mainnet.

**Mainnet · `lava-mainnet-1`**

Complete [Installation](/mainnet/lava/installation.md) and wait for full synchronization. The wallet key authorizes transactions; the consensus key signs blocks. Back up both securely, and never run two nodes with the same consensus key.

### Create a wallet

Save the recovery phrase offline. Use the recovery command instead if you already have a wallet.

```bash
lavad keys add wallet
```

### Recover an existing wallet — alternative

Enter the recovery phrase interactively.

```bash
lavad keys add wallet --recover
```

### Show the funding address

Fund this address on the correct network and leave a balance for fees.

```bash
lavad keys show wallet -a
```

### Check balance

Read the funded account balance.

```bash
lavad query bank balances "$(lavad keys show wallet -a)"
```

### Check synchronization

Continue only after catching\_up is false.

```bash
curl -fsS http://127.0.0.1:26657/status | jq '.result.sync_info.catching_up'
```

### Back up the consensus key

Create a local protected backup, then copy it to secure offline storage.

```bash
install -D -m 0600 "$HOME/.lava/config/priv_validator_key.json" "$HOME/validator-backup/lava-mainnet-priv_validator_key.json"
```

### Check create-validator syntax

Inspect the release’s CLI before submitting. The formats below differ between older and newer Cosmos SDK releases.

```bash
lavad tx staking create-validator --help
```

### Register the validator

Choose the format shown by your binary’s help. Replace the moniker and amount, then review the transaction before confirming. The sample stake is not a promise of entry into the active set.

```bash
lavad tx staking create-validator \
  --amount 50000000ulava \
  --pubkey "$(lavad tendermint show-validator)" \
  --moniker "MY_VALIDATOR" \
  --commission-rate 0.10 --commission-max-rate 0.20 \
  --commission-max-change-rate 0.01 --min-self-delegation 10000 \
  --from wallet --chain-id lava-mainnet-1 --gas auto --gas-adjustment 1.5 --gas-prices 0.05ulava
```

### Verify registration

Query the validator record after the transaction is included in a block.

```bash
lavad query staking validator "$(lavad keys show wallet --bech val -a)"
```

Registration and active voting power are different states. Check bonded status and the active-set threshold in the explorer.

[Validator reference](https://docs.lavanet.xyz/validator-manual/).
