trace_transaction on Polygon
Measured 2026-10-04 by our weekly probe, which calls trace_transaction through the same Polygon endpoint customers use.
What trace_transaction does
Returns the Parity-style trace of one transaction: every internal call, creation and value transfer it caused. It is the usual tool for debugging a transaction after it has been mined.
What to use instead on Polygon
Polygon did not serve the trace_* namespace in our probe, which is common on OP Stack and zk chains. The debug_* namespace works on Polygon: use debug_traceTransaction with the callTracer instead.
Example request
curl -s https://rpc.swiftnodes.io/rpc/polygon?key=YOUR_API_KEY \
-X POST -H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"trace_transaction","params":["0x0000000000000000000000000000000000000000000000000000000000000000"]}'import { createPublicClient, http } from "viem";
const client = createPublicClient({ transport: http("https://rpc.swiftnodes.io/rpc/polygon?key=YOUR_API_KEY") });
// Any JSON-RPC method, typed loosely: trace_transaction on Polygon
const result = await client.request({
method: "trace_transaction",
params: ["0x0000000000000000000000000000000000000000000000000000000000000000"],
});Other methods on Polygon
- eth_getLogsSupported
- eth_getBlockReceiptsSupported
- eth_feeHistorySupported
- eth_getProofSupported
- eth_createAccessListSupported
- debug_traceCallSupported
- trace_blockSupported
trace_transaction on other chains
Support differs by chain; the full measured table is on the trace_transaction reference.
- Ethereum
- Base
- Arbitrum
- Optimism
- BNB Smart Chain
- Avalanche
- Sonic
- Linea
- Scroll
- zkSync Era
- Blast
- Mantle
- Gnosis
- Celo
- Berachain
- Monad
- Unichain
- Kaia
- PulseChain
Frequently asked questions
Does Polygon support trace_transaction?
Not on our Polygon upstreams: trace_transaction failed in our weekly method probe (2026-10-04). Polygon did not serve the trace_* namespace in our probe, which is common on OP Stack and zk chains. The debug_* namespace works on Polygon: use debug_traceTransaction with the callTracer instead.
Polygon endpoints, live block height and WebSocket status are on the Polygon RPC page.
One key covers every chain we serve, and SwiftNodes has a free tier.