USDC as the native gas token
On most EVM blockchains, a volatile token (such as ETH) serves as the native asset for gas fees and value transfer. Arc replaces this with USDC. Every transaction fee, balance, and native transfer on Arc is denominated in USDC. This means:- Fees are predictable in dollar terms.
- You hold a single asset for both gas and application-level transfers.
- There is no need to acquire or manage a separate volatile token.
Two interfaces, one balance
USDC on Arc has two interfaces that share the same underlying balance:| Interface | Decimals | Purpose |
|---|---|---|
| Native | 18 | Gas accounting, native sends, and msg.value |
| ERC-20 | 6 | application-level transfers, approvals, and allowances |
0x3600000000000000000000000000000000000000
uses 6 decimals to match the standard USDC representation on other EVM networks.
The ERC-20 and native interfaces share the same underlying balance. An ERC-20
transfer directly moves the native balance, and a native send is reflected in
the ERC-20 balance. These are not two separate tokens. For the complete
protocol reference, see EVM differences.
USDC.balanceOf(addr)andaddr.balancerepresent the same value in different decimals (6 vs 18). AbalanceOfof0does not mean the native balance is0; amounts below 1×10⁻⁶ USDC are truncated in the ERC-20 view.- Native transfers into or out of a contract also change its ERC-20 USDC balance.
- A native transfer can revert even with a sufficient balance (for example, because of the blocklist or zero-address rules).
Transfer log from a system address, Arc’s implementation of
EIP-7708 (an Amsterdam-track Ethereum
proposal). Because this system event covers all USDC movements at 18-decimal
precision, it gives wallets and indexers a single universal source of truth for
balance changes.
For fee parameters and gas pricing details, see
Gas and fees. For the rationale behind stable
fee denomination, see Stable fee design.
Indexing USDC movements
The native system emitter logs aTransfer (18 decimals) for every USDC
movement, so indexing it alone gives complete coverage. The ERC-20 USDC contract
additionally logs its own Transfer (6 decimals) for ERC-20-interface activity,
so a single ERC-20 transfer emits both; match on the emitter address to avoid
double-counting. For the full event reference, including emitter addresses, the
mint and burn mapping, and legacy native events, see
USDC system events. For a step-by-step
walkthrough, see Index Arc events.