tutorial8 min read

Add a Custom RPC to MetaMask: Extension and Mobile Steps

Add any EVM chain to MetaMask with a custom RPC: current extension and mobile steps, Chainlist, wallet_addEthereumChain, chain IDs, and common fixes.

By RPC Directory••
#MetaMask#RPC#Wallets#Tutorial
$add-rpc-to-metamask.md

MetaMask ships with Ethereum and a set of popular networks enabled, and you can add any other EVM chain by giving it a custom RPC endpoint. The steps below follow MetaMask's own Help Center for the browser extension and the mobile app (checked 9 October 2026).

This guide walks through adding custom RPC networks to MetaMask, choosing quality endpoints, and troubleshooting common issues.

What You'll Need

Before adding a network, gather these details:

  1. RPC endpoint URL: an HTTPS address that accepts JSON-RPC calls (e.g., https://mainnet.base.org)
  2. Chain ID: the network's unique numeric identifier (Base mainnet is 8453)
  3. Currency symbol: the native gas token ticker (ETH, POL, BNB, etc.)
  4. Block explorer URL (optional): for viewing transaction details

You can find all of this for any supported chain on RPC Directory.

Adding a Network to MetaMask

Check the built-in list first

MetaMask lists some networks under 'Additional networks' in the network selector. Adding one from that list is the safest route, because MetaMask supplies the details for you.

  • Extension: open the menu in the top right and select 'Networks'. Scroll to 'Additional networks' and click 'Add' next to the network, or search for it.
  • Mobile: tap the networks dropdown at the top of the 'Tokens' tab, scroll to 'Additional networks', tap the '+' icon and confirm.

Add a network manually (extension)

  1. Open the menu in the top right and select 'Networks'.
  2. Click 'Add a custom network'.
  3. Enter the network details listed below and click 'Save'.

Add a network manually (mobile)

  1. Tap the networks dropdown at the top of the 'Tokens' tab.
  2. Switch to the 'Custom' tab.
  3. Tap 'Add a custom network' and enter the network details listed below.

The details MetaMask asks for (exact field labels can differ between versions):

  • Network name: a label you will recognize, such as "Mantle"
  • RPC URL: the HTTPS endpoint you want MetaMask to use
  • Chain ID: the network's chain ID, such as 5000 for Mantle
  • Currency symbol: the gas token ticker, such as MNT
  • Block explorer URL: optional, used for transaction links

Once saved, the network appears in the network selector. MetaMask runs some basic checks on what you enter and warns if something looks wrong, but it does not verify that a custom network is what it claims to be.

For a worked example, the Monad mainnet RPC guide lists the Monad fields (chain ID 143, symbol MON) and the public RPC URLs that passed an 8-round probe. The Soneium mainnet RPC guide does the same for an OP Stack L2 that uses ETH (chain ID 1868), and the Chiliz mainnet RPC guide covers an EVM L1 with its own gas token (chain ID 88888, symbol CHZ). The Taiko mainnet RPC guide covers a based rollup that uses ETH (chain ID 167000), and the Boba mainnet RPC guide covers an OP Stack L2 where gas is ETH, not the BOBA token (chain ID 288).

Use your own RPC URL on a network you already have

Default networks such as Ethereum already have an RPC URL. To add your own endpoint next to it:

  • Extension: open the menu in the top right and select 'Networks'. Click the three dots next to the network, open the 'Default RPC URL' dropdown, click 'Add RPC URL', then enter the URL and a nickname and save.
  • Mobile: tap the networks dropdown at the top of the 'Tokens' tab. Tap the three dots next to the network and tap 'Edit'. Open the RPC URL dropdown, tap 'Add RPC URL', enter the URL and a nickname, and tap 'Save'.

You can switch between saved RPC URLs later, or delete one with the trash icon in the same screen. MetaMask notes that a custom RPC URL on Ethereum, Linea, Base, Arbitrum or BNB Smart Chain turns off Smart Transactions features such as MEV protection until you switch back to the default RPC URL.

Add a network through Chainlist

Chainlist (chainid.network) can add a network to MetaMask in a few clicks. MetaMask does not maintain the Chainlist data, so compare the chain ID and RPC URL with the chain's own docs or its RPC Directory page before you confirm.

  1. Open chainid.network. On mobile, open it in the MetaMask in-app browser.
  2. Click 'Connect' and approve the connection in MetaMask.
  3. Search for the network and click 'Add Chain'.
  4. Review the request in MetaMask and approve it.

For dapp developers: wallet_addEthereumChain

A dapp can ask MetaMask to add a network with the wallet_addEthereumChain method (EIP-3085). It takes one object with these fields:

  • chainId: the chain ID as a hex string, such as 0x1388 for Mantle (5000)
  • chainName: the display name, such as Mantle
  • nativeCurrency: the gas token name, symbol and decimals, such as MNT with 18 decimals
  • rpcUrls: one or more HTTPS endpoints, such as https://rpc.mantle.xyz
  • blockExplorerUrls: optional, such as https://mantlescan.xyz

MetaMask shows the user a confirmation with the details your dapp sent, and the user decides whether to add the network. If a switch request fails with error code 4902, the network has not been added yet, so call wallet_addEthereumChain first.

When a website asks MetaMask to add a network, the confirmation shows only what that website sent. Trust it as much as you trust the site, and check the chain ID against chainid.network or the chain's RPC Directory page.

Networks do not sync between devices

A network added in the extension does not appear in the mobile app, and the other way round. Custom networks also need to be added again after you reinstall MetaMask and restore your wallet.

Sources

Choosing the Right RPC Endpoint

Not all endpoints perform equally under load. Here's what to consider:

Public endpoints are free and require no signup. They work for development, low-traffic dApps, and personal wallets. Limitations: rate limits (often 10–50 req/s), no uptime SLAs, and restricted method support (rarely archive data or debug_* calls).

Paid provider endpoints trade monthly cost for reliability. Expect 99.9%+ uptime SLAs, higher throughput (500–5,000 req/s), WebSocket support, and access to archive nodes and trace methods. If you're running anything production-grade, you'll want a paid tier eventually.

Check our public vs paid RPC guide for a deeper breakdown of when to upgrade.

Common Chain IDs

NetworkChain IDSymbol
Ethereum1ETH
Base8453ETH
Arbitrum One42161ETH
OP Mainnet (Optimism)10ETH
Polygon PoS137POL
BNB Chain56BNB
Avalanche C-Chain43114AVAX

Find the full list, with working endpoints, on the chains page. Chain IDs match chainid.network.

Chain RPC Guides

Per-chain RPC guides with chain IDs and the quirks that matter for wallets and apps:

Troubleshooting

"Could not fetch chain ID" or connection errors

The RPC URL is unreachable or returning unexpected responses. Check for typos, confirm the endpoint is live, or try a different endpoint from our directory.

"Invalid Chain ID" or network mismatch

The chain ID you entered doesn't match what the RPC node reports. Double-check the correct ID on RPC Directory and re-enter it.

"Network already exists"

The wallet won't add duplicate networks. Find the existing entry in your network settings and either edit it or delete it before adding a new one.

Transactions stuck or failing

This usually points to endpoint issues (rate limits, downtime) or network congestion. Try switching to a different RPC endpoint, or check a block explorer to see if the network itself is slow. Also confirm you have enough native tokens for gas.

Next Steps

With your network configured, you can bridge assets using cross-chain bridges, interact with dApps directly, or add more networks for multi-chain workflows.

Browse RPC Directory to find endpoints for any chain and compare providers when you're ready to move beyond public infrastructure.

Using another wallet too? We have guides for Rabby, Rainbow, Phantom, Bifrost and Talisman.

---

Don't have MetaMask yet? Download it here.