Transaction Trace Visualizer
Visualize transaction call traces with interactive tree view
debug_traceTransaction with the callTracer to get trace data. Click nodes to expand/collapse and see detailed call information.1. What is Transaction Tracing?
Transaction tracing captures the complete execution path of a transaction, including all internal calls between contracts. This is essential for debugging complex transactions and understanding contract interactions.
2. How does it work?
Transaction tracing uses debug_traceTransaction RPC method with the callTracer to record every internal call, gas usage, input/output data, and state changes. The trace is returned as a hierarchical tree structure showing the complete call graph from the initial transaction through all sub-calls.
Call Types
CALL: Standard external call. DELEGATECALL: Execute code in caller's context. STATICCALL: Read-only call. CREATE/CREATE2: Contract deployment. Each type has different implications for state changes and context.
3. Examples
ERC-20 Transfer - Simple CALL
TX: 0xabcd1234...
Single CALL from EOA (0x1234...) to USDC contract (0xA0b8...)
21000 gas base + contract executionUniswap V3 Swap - Complex Multi-call Chain
TX: 0xdeadbeef...
Router (0x7a25...) → SwapRouter (0xE592...) → Pool (0x8ad6...)
→ TokenA transfer → TokenB transfer, ~150-250K total gasAave Flash Loan - CALL + DELEGATECALL Pattern
TX with executeOperation()
Flash loan request (0x7d2d...) → flashLoan CALL
→ Receiver DELEGATECALL → TokenTransfer CALL
Demonstrates delegatecall context switchingFailed Transaction - Revert at Specific Depth
TX: 0xfailed...
Trace shows successful CALLs → failed CALL with revert reason
Allows pinpointing failure point in call stack