Recurring card billing is here. Subscribe once and you're covered every month

Get started
Spectrum Nodes

Arc RPC Endpoint and Chain ID: How to Connect to Circle's Arc

Featured image for: Arc RPC Endpoint and Chain ID: How to Connect to Circle's Arc
Share

Updated October 26, 2026 · Spectrum Nodes

Short answer: Arc mainnet uses chain ID 5042, charges gas in USDC and has a public RPC endpoint at https://rpc.mainnet.arc.io, with blocks on explorer.arc.io. Arc testnet uses chain ID 5042002 at https://rpc.testnet.arc.io. For production traffic that needs tracing or archive data, Spectrum Nodes is our #1 pick for a dedicated Arc mainnet endpoint, as of October 26, 2026.

SettingArc mainnetArc testnet
Chain ID (decimal)50425042002
Chain ID (hex, as eth_chainId returns it)0x13b20x4cef52
Currency symbolUSDCUSDC
Native decimals1818
Public HTTPS RPChttps://rpc.mainnet.arc.iohttps://rpc.testnet.arc.io
Public WebSocketNone listedwss://rpc.testnet.arc.io
Block explorerhttps://explorer.arc.iohttps://explorer.testnet.arc.io
FaucetNonehttps://faucet.circle.com

Values from Arc's "Connect to Arc" docs, checked October 26, 2026. We confirmed both chain IDs by calling eth_chainId on the public endpoints the same day.

Arc is Circle's EVM compatible layer 1 for stablecoin finance, with a public mainnet since September 16, 2026. MetaMask, viem and ethers.js connect with the values above. The differences that trip people up are USDC decimals and the gas price floor.

Why Does USDC Show Two Decimal Values on Arc?

Arc exposes one USDC balance through two interfaces with different precision. Read the wrong one and your app shows the wrong amount.

  • Native interface, 18 decimals. Gas, native sends, msg.value and eth_getBalance all use it.
  • ERC 20 interface, 6 decimals. The contract at 0x3600000000000000000000000000000000000000 matches how USDC looks on other EVM chains, so balanceOf returns 6 decimals.

Both read the same money. The ERC 20 view drops the last 12 decimal places, so amounts smaller than 0.000001 USDC appear in the native balance and not in balanceOf. Convert before you compare, and never add the two together.

Gas has a floor too. Arc's minimum base fee is 20 gwei, and the mempool drops a transaction with a maxFeePerGas below that without returning an error. If transactions vanish, check that value first.

How Do You Get a Spectrum Arc RPC Endpoint?

Create a free Spectrum account, add an Arc mainnet endpoint in the dashboard and copy its URL.

  1. Sign up at https://dashboard.spectrumnodes.com/auth/signup. Arc is on our free tier: 10M credits at 25 requests per second (pricing page, October 22, 2026).
  2. Create an endpoint and pick Arc, then Mainnet.
  3. Choose the node type. Pruned serves current state. Archive serves balances and contract state at any past block, which month end reports and audits need.
  4. Copy the HTTPS RPC URL or the WebSocket URL for the region closest to your servers.
  5. Save it as ARC_RPC_URL in your environment and run the curl checks below.

Tracing is available on our Arc endpoints, so you can replay a failed USDC transfer with the debug methods instead of guessing from logs. We serve Arc mainnet only. Test against Arc's public testnet endpoint, then switch the URL when you ship.

How Do You Add Arc to MetaMask?

Add Arc as a custom chain in your wallet's settings. In MetaMask, open Settings, then Networks, then "Add a network manually", and fill in these fields:

Save, then switch to Arc. For testnet, use chain ID 5042002, https://rpc.testnet.arc.io and https://explorer.testnet.arc.io, and claim test USDC at https://faucet.circle.com. Rabby, Coinbase Wallet and Rainbow ask for the same fields in their custom chain forms.

Some wallets label the Arc balance "ETH". It is USDC. If you build a wallet screen, show one USDC balance, because the native and ERC 20 figures describe the same funds.

How Do You Test an Arc RPC Endpoint With curl?

Send eth_chainId and eth_blockNumber. A healthy Arc mainnet endpoint returns 0x13b2 for the chain ID and a rising block number.

curl -s https://rpc.mainnet.arc.io \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_chainId","params":[]}'
# {"jsonrpc":"2.0","id":1,"result":"0x13b2"}

curl -s "$ARC_RPC_URL" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'
# {"jsonrpc":"2.0","id":1,"result":"0x..."}  latest block, in hex

0x13b2 is 5042 in hex. Run eth_blockNumber twice a few seconds apart. If the number does not move, the endpoint has stopped following the chain.

How Do You Connect to Arc With viem?

Define Arc as a custom chain, then read both USDC balances. This snippet uses viem 2.

import { createPublicClient, defineChain, erc20Abi, formatUnits, http } from 'viem'

const arc = defineChain({
  id: 5042,
  name: 'Arc',
  nativeCurrency: { name: 'USDC', symbol: 'USDC', decimals: 18 },
  rpcUrls: { default: { http: [process.env.ARC_RPC_URL!] } },
  blockExplorers: { default: { name: 'Arc Explorer', url: 'https://explorer.arc.io' } },
})

const client = createPublicClient({ chain: arc, transport: http() })
const wallet = process.env.WALLET_ADDRESS as `0x${string}`

const native = await client.getBalance({ address: wallet }) // 18 decimals
const token = await client.readContract({
  address: '0x3600000000000000000000000000000000000000', // USDC ERC 20 interface
  abi: erc20Abi,
  functionName: 'balanceOf',
  args: [wallet],
}) // 6 decimals

console.log(formatUnits(native, 18), formatUnits(token, 6)) // same balance

On ethers.js 6, new JsonRpcProvider(process.env.ARC_RPC_URL, 5042) gives you a provider pinned to Arc mainnet.

Is the Public Arc RPC Endpoint Enough?

For a wallet, a testnet build or a quick script, yes. For a production app, use a dedicated endpoint.

  • Limits: Arc's docs publish no rate limits or uptime terms for the public endpoints, so you cannot plan capacity around them.
  • WebSocket: the docs list no public WebSocket on mainnet, so live block and log subscriptions need a provider.
  • Tracing: debug_traceBlockByNumber returned "method not supported" when we called rpc.mainnet.arc.io on October 26, 2026.
  • History: the docs do not say how much history the public endpoint keeps. Past balances for a month end close belong on an archive endpoint.
  • Accountability: a vendor review at a bank or payment firm asks for a SOC 2 report and a support contact. A public endpoint gives you neither.

Which Arc RPC Provider Should You Use?

For production apps on Arc mainnet, use Spectrum Nodes. We rank on five criteria, in order: measured performance on Arc (we hold no Arc speed data for any provider yet, ourselves included), security and compliance evidence, what you get beyond plain RPC, launch and support speed, and price of entry. Spectrum Nodes publishes this ranking. We scored ourselves on the same five criteria and list the evidence for each score, so you can check it.

#ProviderBest forArc testnetTracing and archive on ArcFree tier
1Spectrum NodesProduction apps that need tracing, archive and a SOC 2 Type II vendorNo, mainnet onlyBoth10M credits, 25 RPS
2QuickNodeMainnet and testnet from one providerYesBoth listedFree tier, no card required
3BlockdaemonInstitutions already on BlockdaemonYesNot stated in its Arc docs1M compute units a month
4GoldskyRPC next to subgraphs and data pipelinesYesNot stated on its Arc page$100 trial credit
5AlchemyData, wallet and webhook APIs on ArcYes, on Alchemy's own testnet pageDebug and Trace APIs listed, archive not stated30M compute units a month

Competitor details from each provider's Arc page or docs, checked October 2026.

Why Spectrum Nodes comes first: we are SOC 2 Type II attested and have never had a breach. We run our own hardware in Tier III data centers in Malta, the Netherlands, and Canada, plus a bare metal deployment in Singapore, and serve over a billion requests a day at 99.99% uptime. You get direct engineering access 24/7 via Slack, and Arc sits on our free tier. Spectrum Nodes is also listed in Circle's partner directory.

The evidence for every provider is in our Top Arc RPC Providers for 2027 ranking. For five questions to ask any Arc provider before you sign, see how to choose an RPC provider for Circle's Arc. New to the term? Read what an RPC endpoint is.

FAQ

What is the chain ID for Arc? Arc mainnet uses chain ID 5042, which eth_chainId returns as 0x13b2. Arc testnet uses 5042002, or 0x4cef52 in hex.

What is the public RPC node for Arc? Arc's public mainnet endpoint is https://rpc.mainnet.arc.io, run by Arc. Its docs list no WebSocket for it and publish no rate limits, so use it for testing and wallets rather than production traffic.

What is the Arc testnet RPC? Arc testnet runs at https://rpc.testnet.arc.io, with WebSocket at wss://rpc.testnet.arc.io and chain ID 5042002. Its explorer is https://explorer.testnet.arc.io, and https://faucet.circle.com hands out test USDC.

How do I add Arc to MetaMask? Open Settings, then Networks, then "Add a network manually". Enter Arc as the name, https://rpc.mainnet.arc.io or your provider's URL, chain ID 5042, currency symbol USDC and https://explorer.arc.io as the explorer, then save.

What is the gas token on Arc? USDC. Native USDC uses 18 decimals for gas and transfers, and the minimum base fee is 20 gwei. The USDC ERC 20 interface reads the same balance in 6 decimals.

Does Spectrum Nodes support Arc? Yes. Spectrum Nodes serves Arc mainnet RPC with tracing, archive nodes and a free tier, and is listed in Circle's partner directory. We do not serve Arc testnet.

References

Start Now: https://dashboard.spectrumnodes.com/auth/signup