Contract calls5 CU

eth_call on Optimism

Executes a message call against the EVM without creating a transaction — the backbone of every contract read (balanceOf, totalSupply, etc.). Returns the call's return data.

Runs against a chosen block's state with no gas paid; override from/value/block to simulate a sender or a past state. It surfaces the contract's revert reason, which is how you catch errors like 'insufficient allowance' before sending a real tx.

Optimism endpoint (public — no key)

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

Method

eth_call

Cost

5 CU

Chain ID

10

Block time

~2 s

Finality

~2 s soft · L1-final ~13 min

Contract calls on Optimism

eth_estimateGas covers L2 execution; the L1 data fee is added at inclusion. For calldata-heavy calls, compression (post-Ecotone blobs) keeps the L1 component modest.

Parameters

[callObject, blockNumber|tag]

cURL

curl https://rpc.nodeflare.app/op/public \
  -X POST \
  -H 'content-type: application/json' \
  -d '{"jsonrpc":"2.0","method":"eth_call","params":[{"to": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", "data": "0x18160ddd"}, "latest"],"id":1}'

The example targets the USDC contract on Optimism — you can run it as-is.

ethers.js

import { ethers } from 'ethers';

const provider = new ethers.JsonRpcProvider(
  'https://rpc.nodeflare.app/op/public'
);

const result = await provider.send('eth_call', [{"to": "0x0b2c639c533813f4aa9d7837caf62653d097ff85", "data": "0x18160ddd"}, "latest"]);

Try it live

Runs the example above against the public Optimism endpoint — straight from your browser.

eth_call on Optimism — FAQ

How do I call eth_call on Optimism?

POST a JSON-RPC 2.0 request with "method": "eth_call" to NodeFlare's Optimism endpoint at https://rpc.nodeflare.app/op/public. No API key is required for the public endpoint.

What does eth_call cost on the free tier?

eth_call is weighted at 5 compute units per call. The free tier includes 2,000,000 CU/month, so that is roughly 400,000 eth_call calls per month — no credit card.

Is eth_call available on the public Optimism endpoint?

Yes. eth_call works on the public Optimism endpoint (https://rpc.nodeflare.app/op/public) with no API key, rate-limited per IP. A free key adds higher limits and a dedicated path.

Anything Optimism-specific to know when using eth_call?

eth_estimateGas covers L2 execution; the L1 data fee is added at inclusion. For calldata-heavy calls, compression (post-Ecotone blobs) keeps the L1 component modest.

Call eth_call on Optimism with a free key

2,000,000 compute units/month, heavy methods unlocked, every chain included. No credit card.

Get your free API key →