RPC method

trace_block on Monad

Not available on SwiftNodes

Measured 2026-10-04 by our weekly probe, which calls trace_block through the same Monad endpoint customers use.

What trace_block does

Returns Parity-style traces for every transaction in a block: internal calls, contract creations and value transfers. Indexers use it to reconstruct internal ETH movements that receipts do not show.

What to use instead on Monad

Monad did not serve the trace_* namespace in our probe, which is common on OP Stack and zk chains. The debug_* namespace works on Monad: use debug_traceBlockByNumber with the callTracer for the same internal-call data.

Example request

curl -s https://rpc.swiftnodes.io/rpc/monad?key=YOUR_API_KEY \
  -X POST -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"trace_block","params":["latest"]}'
import { createPublicClient, http } from "viem";

const client = createPublicClient({ transport: http("https://rpc.swiftnodes.io/rpc/monad?key=YOUR_API_KEY") });

// Any JSON-RPC method, typed loosely: trace_block on Monad
const result = await client.request({
  method: "trace_block",
  params: ["latest"],
});

Other methods on Monad

trace_block on other chains

Support differs by chain; the full measured table is on the trace_block reference.

Frequently asked questions

Does Monad support trace_block?

Not on our Monad upstreams: trace_block failed in our weekly method probe (2026-10-04). Monad did not serve the trace_* namespace in our probe, which is common on OP Stack and zk chains. The debug_* namespace works on Monad: use debug_traceBlockByNumber with the callTracer for the same internal-call data.

Monad endpoints, live block height and WebSocket status are on the Monad RPC page.

One key covers every chain we serve, and SwiftNodes has a free tier.