RPC method

eth_chainId on Arbitrum

Supported on SwiftNodes

Everything below was measured on 2026-10-13 by calling eth_chainId on Arbitrum through the same endpoint customers use, and is re-measured weekly.

What eth_chainId does

Returns the chain ID (EIP-155) as a hex string. Wallets and libraries check it before signing, and the signature commits to it, so a transaction signed for one chain cannot be replayed on another.

Arbitrum chain ID, as measured

net_version returns the same number as decimal text. Older tools read net_version; use eth_chainId, which is the value signatures commit to.

We sent Arbitrum a legacy transaction signed without a chain ID (pre-EIP-155). Its nodes did not reject it for that: the answer was about the empty balance ("insufficient funds for gas * price + value: address 0x375103A9bDA8C1339E4d62d2E550e299Ae0C4dC6 have 0 want 845040021001"). Unprotected transactions are accepted at the RPC, so replay protection depends on your wallet signing with the chain ID.

eth_chainId0xa4b1 (42,161)
net_version42161

Example request

curl -s https://rpc.swiftnodes.io/rpc/arbitrum?key=YOUR_API_KEY \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
// Check you are on Arbitrum before signing
import { createPublicClient, http } from "viem";

const client = createPublicClient({
  transport: http("https://rpc.swiftnodes.io/rpc/arbitrum?key=YOUR_API_KEY"),
});

const id = await client.getChainId(); // 42161
if (id !== 42161) throw new Error(`wrong chain: ${id}`);

// Add Arbitrum to a browser wallet
await window.ethereum.request({
  method: "wallet_addEthereumChain",
  params: [{
    chainId: "0xa4b1",
    chainName: "Arbitrum",
    nativeCurrency: { name: "ETH", symbol: "ETH", decimals: 18 },
    rpcUrls: ["https://rpc.swiftnodes.io/rpc/arbitrum?key=YOUR_API_KEY"],
  }],
});

Other methods on Arbitrum

eth_chainId on other chains

Frequently asked questions

Does Arbitrum support eth_chainId?

Yes. eth_chainId answered on the SwiftNodes Arbitrum endpoint when our weekly probe called it through the customer path (2026-10-13).

What is the Arbitrum chain ID?

42161 in decimal, 0xa4b1 in hex, as returned by eth_chainId on 2026-10-13.

How do I add Arbitrum to MetaMask?

Call wallet_addEthereumChain with chainId 0xa4b1, the native currency ETH with 18 decimals, and your RPC URL; the example on this page has the full object.

Arbitrum endpoints, live block height and WebSocket status are on the Arbitrum RPC page.

One key covers every chain we serve, and SwiftNodes has a free tier.