O ID da cadeia (chain ID) é um número inteiro que identifica de forma única uma blockchain compatível com a EVM, definido pela EIP-155 e incluído em toda assinatura de transação para que uma transação assinada para uma rede não possa ser reproduzida em outra. A mainnet do Ethereum é 1, Base é 8453, Arbitrum One é 42161, Polygon PoS é 137, BNB Smart Chain é 56, Optimism é 10, Avalanche C-Chain é 43114 e a testnet Sepolia é 11155111.
A lista completa de mainnets e testnets está nas seções 2 e 3, com cada número também em hexadecimal, porque carteiras e endpoints RPC costumam mostrá-lo assim (Base é 8453 em decimal e 0x2105 em hexadecimal).
O ID da cadeia (chain ID) aparece nos piores momentos: um formulário da carteira que não salva, um dapp que diz "unsupported chain", uma biblioteca que exige o número antes de assinar. As listas que existem na internet dão o número sem o significado, e as explicações dão o significado sem a lista. Esta página tem os dois: o que o inteiro faz, os chain IDs das redes que as pessoas usam de fato, em decimal e hexadecimal, e como conferir um você mesmo em poucos segundos.
A versão curta
- O chain ID é o número inteiro que identifica uma rede EVM. Ethereum é 1, Optimism 10, BNB Smart Chain 56, Polygon 137, Base 8453, Arbitrum One 42161, Avalanche 43114, Sepolia 11155111.
- Ele faz parte de toda assinatura desde a EIP-155, então uma transação assinada para a cadeia 1 é rejeitada em todas as outras cadeias. É isso que impede ataques de replay entre redes.
- Hexadecimal e decimal são o mesmo número: a MetaMask mostra 0x2105, a Chainlist mostra 8453, e os dois significam Base.
- O valor que vale é o que o endpoint RPC da rede devolve para eth_chainId. A carteira rejeita uma rede personalizada cujo chain ID digitado não bate com essa resposta.
1. O que é um chain ID?
Toda rede EVM, do próprio Ethereum à menor Layer 2, carrega um único número inteiro que diz ao software com qual cadeia ele está falando. Esse inteiro é o ID da cadeia, ou chain ID. Ele não é um endereço, não é um contrato e não é o nome da rede: é um número simples, com o qual nós, carteiras, bibliotecas e dapps concordam, e que fica embutido em toda transação que você assina.
O número vem da EIP-155, ativada no hard fork Spurious Dragon, no bloco 2.675.000, em 2016. Antes dela, uma transação do Ethereum assinada em uma cadeia era válida em qualquer cadeia em que a mesma conta existisse, o que virou um problema real quando o Ethereum e o Ethereum Classic se separaram compartilhando todos os endereços. A EIP-155 acrescentou o chain ID aos dados que são assinados, então a assinatura só é válida na cadeia para a qual foi feita.
Na prática você encontra o chain ID em três lugares: nas configurações de rede de uma carteira, na mensagem de erro de um dapp que não suporta a rede em que você está e na configuração de qualquer biblioteca que assina transações.
2. Lista de chain IDs: mainnets
As redes abaixo são as que as pessoas procuram e as que este site acompanha. Os valores vêm do registro ethereum-lists/chains no qual o chainlist.org e o chainid.network se baseiam, conferidos em 18 de outubro de 2026. Quando a ChainGate tem um gas tracker para a rede, o nome leva a ele.
| Rede | Chain ID | Hex | Token nativo |
|---|---|---|---|
| Ethereum Mainnet | 1 | 0x1 | ETH |
| OP Mainnet (Optimism) | 10 | 0xa | ETH |
| Cronos | 25 | 0x19 | CRO |
| BNB Smart Chain | 56 | 0x38 | BNB |
| Syscoin | 57 | 0x39 | SYS |
| Ethereum Classic | 61 | 0x3d | ETC |
| Gnosis | 100 | 0x64 | XDAI |
| Unichain | 130 | 0x82 | ETH |
| Polygon PoS | 137 | 0x89 | POL |
| Monad | 143 | 0x8f | MON |
| Sonic | 146 | 0x92 | S |
| opBNB | 204 | 0xcc | BNB |
| Fantom Opera | 250 | 0xfa | FTM |
| zkSync Era | 324 | 0x144 | ETH |
| PulseChain | 369 | 0x171 | PLS |
| World Chain | 480 | 0x1e0 | ETH |
| Polygon zkEVM | 1101 | 0x44d | ETH |
| Moonbeam | 1284 | 0x504 | GLMR |
| Moonriver | 1285 | 0x505 | MOVR |
| Sei | 1329 | 0x531 | SEI |
| Soneium | 1868 | 0x74c | ETH |
| Ronin | 2020 | 0x7e4 | RON |
| Kava | 2222 | 0x8ae | KAVA |
| peaq | 3338 | 0xd0a | PEAQ |
| Mantle | 5000 | 0x1388 | MNT |
| Base | 8453 | 0x2105 | ETH |
| Haqq Network | 11235 | 0x2be3 | ISLM |
| Arbitrum One | 42161 | 0xa4b1 | ETH |
| Arbitrum Nova | 42170 | 0xa4ba | ETH |
| Celo | 42220 | 0xa4ec | CELO |
| Avalanche C-Chain | 43114 | 0xa86a | AVAX |
| Ink | 57073 | 0xdef1 | ETH |
| Linea | 59144 | 0xe708 | ETH |
| Berachain | 80094 | 0x138de | BERA |
| Blast | 81457 | 0x13e31 | ETH |
| Chiliz Chain | 88888 | 0x15b38 | CHZ |
| Taiko | 167000 | 0x28c58 | ETH |
| Scroll | 534352 | 0x82750 | ETH |
| Zora | 7777777 | 0x76adf1 | ETH |
Algumas dessas confundem as pessoas. Polygon PoS é 137 e seu token nativo agora é POL, e não MATIC; Polygon zkEVM é outra cadeia, 1101. OP Mainnet é a rede que a maioria ainda chama de Optimism. Arbitrum One (42161) é a cadeia principal da Arbitrum; Arbitrum Nova (42170) é uma cadeia separada para jogos e aplicativos sociais. BNB Smart Chain (56) e opBNB (204) são redes diferentes com o mesmo token de gas. O Ethereum Classic tem ID da rede 1, igual ao Ethereum, mas chain ID 61, que é exatamente o caso para o qual a EIP-155 foi escrita.
3. Lista de chain IDs: testnets e redes locais
As testnets têm seus próprios chain IDs, e uma carteira apontada para a testnet errada mostra saldo zero para fundos que estão perfeitamente seguros na certa.
| Rede | Chain ID | Hex | Observações |
|---|---|---|---|
| Ethereum Sepolia | 11155111 | 0xaa36a7 | Testnet recomendada pelo Ethereum para desenvolvimento de aplicativos |
| Ethereum Hoodi | 560048 | 0x88bb0 | Testnet do Ethereum para testes de staking e validadores |
| Ethereum Holesky | 17000 | 0x4268 | Descontinuada desde setembro de 2025; use a Hoodi |
| Base Sepolia | 84532 | 0x14a34 | Testnet da Base |
| Arbitrum Sepolia | 421614 | 0x66eee | Testnet da Arbitrum |
| OP Sepolia | 11155420 | 0xaa37dc | Testnet da OP Mainnet |
| Polygon Amoy | 80002 | 0x13882 | Testnet da Polygon PoS |
| BNB Smart Chain Testnet | 97 | 0x61 | Testnet da BNB Smart Chain |
| Avalanche Fuji | 43113 | 0xa869 | Testnet da Avalanche C-Chain |
| Hardhat Network (local) | 31337 | 0x7a69 | Padrão de uma Hardhat Network local |
| Geth private chain (local) | 1337 | 0x539 | Padrão de uma cadeia privada do Geth; a rede de desenvolvimento do Besu também usa esse valor |
Os status das testnets do Ethereum vêm do ethereum.org; o padrão do Hardhat está na referência de redes dele e o do Geth, na própria EIP-155. As cadeias locais são o único lugar em que duas ferramentas diferentes escolhem padrões diferentes, então, se a carteira reclamar quando você conectar a um nó local, confira se ele é 1337 ou 31337.
4. Por que o chain ID importa?
Porque ele faz parte da assinatura. Pela EIP-155 o chain ID é um dos campos incluídos no hash antes de assinar, e o valor v da assinatura é definido como o chain ID multiplicado por dois, mais 35 ou 36. Um nó na cadeia 137 que recebe uma transação assinada para a cadeia 1 não consegue recuperar um remetente válido a partir dela e a descarta. A mesma conta, o mesmo nonce e o mesmo destinatário existem nas duas cadeias, mas a assinatura só funciona em uma.
Todo o resto decorre disso. A carteira usa o chain ID para mostrar o nome da rede, o símbolo da moeda e o explorer certos. O dapp usa o chain ID para escolher os endereços de contrato que vai chamar, e é por isso que um dapp feito para a Base se recusa a funcionar quando sua carteira está no Ethereum. A biblioteca usa o chain ID para montar a assinatura, e é por isso que errá-lo na configuração produz transações que nunca chegam a lugar nenhum.
5. Chain ID vs ID da rede
As redes Ethereum carregam dois identificadores, e na maior parte do tempo eles são o mesmo número, e é por isso que os termos se misturam. A documentação do Hyperledger Besu resume a diferença em uma frase: a comunicação peer-to-peer entre nós usa o ID da rede (network ID), enquanto o processo de assinatura de transações usa o chain ID.
Os dois divergem em alguns casos conhecidos. Ethereum e Ethereum Classic têm ambos ID da rede 1, porque eram uma única rede até 2016, mas chain IDs 1 e 61. A rede de desenvolvimento do Besu usa chain ID 1337 com ID da rede 2018. Na mainnet do Ethereum, na Sepolia, na Hoodi e em todas as Layer 2 das tabelas acima os dois valores coincidem, e nada do que você faz em uma carteira pede o ID da rede.
No JSON-RPC são chamadas separadas: eth_chainId devolve o chain ID como string hexadecimal, e net_version devolve o ID da rede como string decimal. Se uma ferramenta pede um "ID da rede" no contexto de uma carteira ou dapp, quase sempre ela quer dizer o chain ID.
6. Como descubro o chain ID de uma rede?
Quatro maneiras, da mais rápida à mais confiável.
- As tabelas desta página
- Cobrem as redes que as pessoas usam no dia a dia, com a forma hexadecimal ao lado de cada número.
- chainlist.org ou chainid.network
- Os dois leem o registro ethereum-lists/chains no GitHub, que lista mais de 2.800 cadeias EVM. Buscar pelo nome dá o chain ID, o token nativo e URLs RPC públicas. As próprias páginas de ajuda da MetaMask apontam para a Chainlist, com a observação de que a MetaMask não mantém os dados de lá, então confira a entrada antes de adicionar uma rede.
- As configurações de rede da carteira
- MetaMask, Rabby, Trust Wallet e as demais mostram o chain ID de cada rede configurada nos detalhes dela. Esse é o número com que a carteira está de fato assinando.
- O próprio endpoint RPC
- Chame eth_chainId no nó. O que ele devolver é, por definição, o chain ID daquela rede, e é com isso que as carteiras comparam quando você adiciona uma rede personalizada:
curl -s -X POST https://mainnet.base.org \
-H 'content-type: application/json' \
-d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
# {"jsonrpc":"2.0","id":1,"result":"0x2105"}
# 0x2105 = 8453, so this endpoint is BaseO resultado vem em hexadecimal. 0x2105 é 8453, então este endpoint pertence à Base. Qualquer provedor JSON-RPC responde a essa chamada sem chave de API, o que faz dela o jeito mais rápido de confirmar que uma URL RPC que alguém te passou é mesmo da rede que a pessoa diz.
7. Como adiciono uma rede à MetaMask com o chain ID?
Adicionar uma rede personalizada significa preencher os cinco campos definidos pela EIP-3085, o padrão por trás da chamada wallet_addEthereumChain que os dapps usam para fazer a mesma coisa com um clique:
- Nome da rede
- Texto livre, só para exibição.
- URL RPC
- O endpoint JSON-RPC com que a carteira vai falar. Os públicos estão na Chainlist; a URL do seu próprio provedor também funciona.
- Chain ID
- O número das tabelas acima. As carteiras aceitam decimal no formulário; os dapps passam o valor como hexadecimal com prefixo 0x na chamada da API.
- Símbolo da moeda
- Como o token nativo se chama: ETH na Base e na Arbitrum, POL na Polygon, BNB na BNB Smart Chain, AVAX na Avalanche.
- URL do block explorer
- Opcional. Permite que a carteira vincule as transações ao explorer.
O chain ID e a URL RPC precisam concordar. A EIP-3085 exige que a carteira rejeite a solicitação se o chain ID informado não bater com o valor de eth_chainId do endpoint RPC, e a MetaMask mostra um erro no formulário quando isso acontece. Se você vir esse erro, o número está errado, a URL é de outra rede ou a URL é um endpoint morto; teste com a chamada curl da seção anterior.
8. Por que recebo um erro de chain ID incompatível ou unsupported chain?
O texto muda entre carteiras e dapps, mas as causas são poucas:
- A URL RPC e o chain ID não concordam
- Você digitou 8453 mas colou uma URL da mainnet do Ethereum, ou o contrário. A carteira perguntou ao endpoint, recebeu uma resposta diferente e recusou. Corrija o que estiver errado.
- O dapp não suporta a rede em que você está
- "Unsupported chain" ou "wrong network" significa que os contratos do dapp estão implantados em outros chain IDs. Troque a carteira para uma rede que o dapp lista, normalmente pelo botão de rede do próprio dapp.
- Uma transação foi assinada para um chain ID diferente do nó
- O nó a rejeita com um erro de invalid sender ou invalid chain id, porque a assinatura EIP-155 não pode ser recuperada naquela cadeia. Isso é um bug de configuração no software que envia, nunca uma queda da rede.
- Uma cadeia local mudou de ID
- Reiniciar um nó de desenvolvimento com um chain ID diferente do que a MetaMask salvou produz incompatibilidades e nonces desatualizados. Remova a rede local e adicione de novo.
- Hexadecimal e decimal foram misturados
- 0x89 é 137, mas um formulário que espera decimal trata "0x89" como texto. Use a forma decimal nos formulários de carteira e a hexadecimal nas chamadas de API.
9. Decimal, hexadecimal e CAIP-2: três formas de escrever o mesmo ID
A Chainlist e os formulários das carteiras mostram chain IDs em decimal. O JSON-RPC, a EIP-3085 e as configurações internas da MetaMask usam hexadecimal com prefixo 0x, então 137 aparece como 0x89, 42161 como 0xa4b1 e 11155111 como 0xaa36a7. É o mesmo inteiro; as tabelas acima trazem as duas formas.
Ferramentas multi-chain como o WalletConnect acrescentam uma terceira forma, o CAIP-2, que coloca um namespace na frente do número para que cadeias fora da EVM possam compartilhar um único esquema de identificação: a mainnet do Ethereum é eip155:1, a Polygon é eip155:137, a Base é eip155:8453. A parte eip155 diz "isto é um chain ID de EVM"; o número depois dos dois-pontos é o mesmo chain ID de sempre.
10. Bitcoin e Solana têm chain ID?
Não no sentido da EIP-155. O chain ID é um conceito da EVM, e Bitcoin, Litecoin, Dogecoin, Solana e XRP não têm um, e é por isso que a carteira nunca pede esse número quando você adiciona essas moedas.
Essas redes distinguem a mainnet das redes de teste de outras formas. As cadeias da família do Bitcoin usam formatos de endereço e parâmetros de rede diferentes para mainnet e testnet, e é por isso que um endereço de testnet começa de outro jeito. A Solana roda clusters separados, chamados Mainnet, Devnet e Testnet, cada um com seu próprio endpoint RPC. Se um formulário pede um "chain ID" ao depositar Bitcoin ou Solana, ele está perguntando qual rede usar, não um número.
11. Usando chain IDs em código
Qualquer biblioteca que assina transações EVM precisa do chain ID, seja da configuração, seja perguntando ao nó. Com o SDK da ChainGate as redes hospedadas já o trazem, e uma rede EVM personalizada o recebe como parâmetro ao lado da URL RPC:
import { ChainGate, importWallet } from 'chaingate';
const cg = new ChainGate({ apiKey: process.env.CHAINGATE_API_KEY });
const wallet = importWallet({ phrase: process.env.MNEMONIC });
// Hosted networks already know their chain ID
const base = cg.connect(cg.networks.base, wallet);
// Any other EVM network: pass the RPC URL and the chain ID it reports
const scroll = cg.networks.evmRpc({
rpcUrl: 'https://rpc.scroll.io',
chainId: 534352,
name: 'Scroll',
symbol: 'ETH',
});
const scr = cg.connect(scroll, wallet);O valor que você passa precisa bater com o que o endpoint informa para eth_chainId, pelos motivos da seção 4. O tutorial para enviar cripto em JavaScript percorre o resto do fluxo, e a documentação da ChainGate lista as URLs RPC hospedadas.
12. Por onde continuar
Com o chain ID resolvido, a próxima pergunta em qualquer rede é quanto custa enviar por ela. O gas tracker multi-chain cobre todas as redes da tabela de mainnets acima com taxas ao vivo, e o guia sobre gas fees explica os números que ele mostra. Se uma transação já saiu e você precisa encontrá-la, o guia sobre hash da transação mostra como consultá-la no explorer certo. E para carteiras, transferências e acesso RPC em todas essas cadeias a partir de uma única biblioteca TypeScript, a ChainGate é o SDK por trás deste site.
Perguntas frequentes
O que é chain ID em cripto?
Um número inteiro que identifica de forma única uma blockchain compatível com a EVM, definido pela EIP-155. Ele é incluído em toda assinatura de transação para que uma transação assinada para uma rede seja inválida em todas as outras. A mainnet do Ethereum é 1, Base 8453, Arbitrum One 42161, Polygon 137.
Qual é o chain ID da mainnet do Ethereum?
1, escrito 0x1 em hexadecimal. Suas testnets são Sepolia (11155111) e Hoodi (560048); a Holesky (17000) está descontinuada desde setembro de 2025.
Qual é o chain ID da Base?
8453 em decimal, 0x2105 em hexadecimal. A testnet Base Sepolia é 84532.
Qual é o chain ID da Arbitrum?
Arbitrum One é 42161 (0xa4b1). Arbitrum Nova é uma cadeia separada, 42170, e a testnet Arbitrum Sepolia é 421614.
Qual é o chain ID da Polygon?
Polygon PoS é 137 (0x89), com POL como token nativo. Polygon zkEVM é outra cadeia, 1101, e a testnet Polygon Amoy é 80002.
Qual é a diferença entre chain ID e ID da rede?
O ID da rede é usado na comunicação peer-to-peer entre nós; o chain ID é usado nas assinaturas de transação. Eles são o mesmo número na mainnet do Ethereum e em todas as testnets públicas, mas o Ethereum Classic tem ID da rede 1 e chain ID 61, e a rede de desenvolvimento do Besu usa chain ID 1337 com ID da rede 2018.
Como descubro o chain ID de uma rede?
Consulte no chainlist.org ou no chainid.network, veja nas configurações de rede da sua carteira ou envie uma chamada JSON-RPC eth_chainId para a URL RPC da rede. A resposta do RPC, em hexadecimal, é o valor que vale.
Por que a MetaMask diz que o chain ID não corresponde?
Porque a URL RPC que você informou reporta um chain ID diferente do que você digitou. A EIP-3085 exige que as carteiras rejeitem essa combinação. Confira o número na lista, ou chame eth_chainId na URL para ver de qual rede ela é de verdade.
O chain ID é o mesmo que o valor hexadecimal na MetaMask?
Sim. A MetaMask e o JSON-RPC usam hexadecimal com prefixo 0x, enquanto a Chainlist e os formulários das carteiras usam decimal, mas 0x2105 e 8453 são o mesmo número. Converta de um para o outro, nunca misture os dois em um mesmo campo.
Construa com ChainGate
Leve estas ideias para o código — a ChainGate te oferece wallets, transações e RPC gerenciado para Ethereum e mais de 20 blockchains com uma única instalação.