All posts
16 September 2026·4 min read·NodeFlare Team

Arc Mainnet RPC, From Day One

Circle's Arc L1 opened to the public today. NodeFlare serves it from its own node — Chain ID 5042, USDC-native gas, 500 ms blocks. Free public endpoint, no API key.

Circle's Arc mainnet opened to the public today. We are serving it from our own node in Frankfurt, from the first day it was possible to run one.

The endpoint

Public, no API key:

https://rpc.nodeflare.app/arc/public

Keyed, on any plan including the free tier:

https://rpc.nodeflare.app/arc/v1/{YOUR_KEY}
Terminal
curl https://rpc.nodeflare.app/arc/public \
  -X POST \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'

That returns 0x13b2, which is 5042.

What Arc actually is

Arc is a Circle-built L1 where USDC is the gas token. That single decision changes the shape of an application more than it first appears. You no longer hold a second, volatile asset purely to pay for execution, and a fee quoted today means the same thing next month. The base fee is pinned at 20 gwei, and with a 30,000,000 gas limit that is typically a few percent used, there is no fee market to fight.

Blocks arrive every 500 milliseconds on a fixed tick. Consensus is Malachite, a Tendermint-derived BFT engine, which means finality is deterministic: when a block is decided it is final. There is no confirmation-depth heuristic to tune and no reorg path to write code against. For anything settlement-shaped that is a meaningful simplification.

The validator set is permissioned. Circle chose the founding operators, and that cohort is institutional rather than anonymous. Running a read node, which is what answers this endpoint, needs no permission from anyone.

Why we are early

We have been watching the snapshot API since the start of September, because Arc cannot be synced from genesis. A snapshot is mandatory, and for months the mainnet side of that API returned nothing while testnet filled up. We ran a checker every fifteen minutes with one specific guard: the old API path returns a 404 HTML page rather than an error, and a naive check reads that as "no snapshots" forever. Ours required the testnet list to be non-empty before it would believe anything about mainnet.

The first mainnet snapshot appeared last night. The node was restored, caught up, and is answering.

That is the whole advantage of running your own infrastructure rather than reselling someone else's: when a chain opens, you are not waiting for a vendor to decide it is worth supporting.

What works today

The full eth_, net_ and web3_ surface, plus debug_ and trace_ methods. Multi-chain balance and portfolio endpoints include Arc, and so do the agent tools, which means an agent can now read Arc positions in the same call that reads Ethereum and Base.

Compute-unit pricing is identical to every other chain we serve. There is no per-chain fee here and never has been. The free tier covers Arc the same as it covers Ethereum.

Full details are in the Arc endpoint documentation.

Where it runs

Two nodes, in Chicago and Frankfurt, each with its own execution and consensus layer. Requests are routed to whichever is healthy, so losing a machine or a region does not interrupt the endpoint.

Worth stating plainly: Arc is one day old as a public network. Two regions is real redundancy, not a guarantee that nothing will go wrong on a chain this young. Which chains run in which position is written down in our uptime and SLA section rather than averaged into a single number.