Optimism Mainnet (chain ID 10) — the canonical OP-Stack L2 and home of the Superchain (interoperable family of OP-Stack chains including Base, World Chain, Mode, Zora, Unichain, Ink). Full EVM equivalence, sub-cent fees, fault-proof secured. The reference implementation that other OP-Stack chains track.
- 01Superchain-native apps that need cross-chain composability with Base/World/Zora
- 02RetroPGF-eligible public goods and infra
- 03Standard low-fee EVM DeFi without Coinbase-specific tooling
- 04OP-Stack L2 deployments via Conduit / Caldera / Alchemy Rollups
- 05Native USDC + CCTP cross-Superchain transfers
- pnpm add viem wagmi
- pnpm add @eth-optimism/sdk
| Variable | Scope | Description |
|---|---|---|
| NEXT_PUBLIC_OP_RPC_URL | Client | Optimism RPC URL. Public is `https://mainnet.optimism.io` (rate-limited) — use Alchemy / QuickNode / dRPC for production. |
| NEXT_PUBLIC_OP_CHAIN_ID | Client | Chain ID — 10 for Optimism Mainnet, 11155420 for OP Sepolia. |
Use viem's `optimism` / `optimismSepolia` chain definitions. For native L1↔L2 messaging use the `CrossDomainMessenger` (call `sendMessage` on the source domain; messages are relayed asynchronously). For cross-Superchain transfers between OP/Base/World/Zora etc., use the canonical Superchain bridge contracts or third-party fast bridges (Across, Stargate). USDC on Optimism is native (CCTP-enabled) — prefer `0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85` (native USDC) over the bridged USDC.e at `0x7F5c764cBc14f9669B88837ca1490cCa17c31607`.
- ⚑L2→L1 native withdrawals have a 7-day challenge window — use a fast bridge for user exits, not the OP Bridge UI.
- ⚑There are TWO USDCs on Optimism: native `USDC` (Circle, CCTP) and bridged `USDC.e` (legacy). Liquidity and integrations split between them — explicitly choose which one your product supports.
- ⚑Optimism mainnet uses fault proofs (live since 2024) — challenger and proposer dynamics differ from Arbitrum's BoLD. Don't assume bridge timing parity.
- ⚑The Superchain shared sequencer / interop is rolling out; cross-Superchain atomic composability is NOT yet production-safe — assume async bridge UX for now.
- ⚑OP-Stack tooling (op-node, op-geth, op-batcher) is shared across Base/World/Zora — but Coinbase-specific OnchainKit features are Base-only.
- ⚑Public mainnet.optimism.io RPC drops eth_subscribe and rate-limits hard; always use a managed provider in prod.