debug_traceBlockByHash
Debug & Trace | Arbitrum
debug_traceBlockByHash | Arbitrum
Arbitrum API method that traces the execution of all transactions in a block identified by its hash. Chainstack Arbitrum reference.
POST
debug_traceBlockByHash
Arbitrum API method that traces the execution of all transactions in a block identified by its hash. This method provides detailed traces for every transaction and call that took place in the block, including gas usage and performance metrics for each operation.Documentation Index
Fetch the complete documentation index at: https://docs.chainstack.com/llms.txt
Use this file to discover all available pages before exploring further.
Learn how to deploy a node with the debug and trace API methods enabled.
Get your own node endpoint todayStart for free and get your app to production levels immediately. No credit card required.You can sign up with your GitHub, X, Google, or Microsoft account.
Parameters
hash— the hash of the block to be traced.tracer— an object identifying the type of tracer and its configuration:4byteTracer— tracer that captures the function signatures and call data sizes for all functions executed during a transaction, creating a map that links each selector and size combination to the number of times it occurred.callTracer— tracer that captures information on all call frames executed during a transaction. The resulting nested list of call frames is organized into a tree structure that reflects the way the EVM works and can be used for debugging and analysis purposes.prestateTracer— tracer with two modes:prestateanddiff, where the former returns the accounts needed to execute a transaction, and the latter returns the differences between the pre and post-states of the transaction.
Response types
4byteTracer response
object— the4byteTracertraces object:result— a map of the function signature, the call data size, and how many times the function was called.
callTracer response
object— thecallTracertraces object:from— the address of the sender who initiated the transaction.gas— the units of gas included in the transaction by the sender.gasUsed— the total used gas by the call, encoded as hexadecimal.to— the address of the recipient of the transaction if it was a transaction to an address. For contract creation transactions, this field isnull.input— the optional input data sent with the transaction.output— the return value of the call, encoded as a hexadecimal string.error— an error message in case the execution failed.revertReason— the reason why the transaction was reverted, returned by the smart contract if any.calls— a list of sub-calls made by the contract during the call, each represented as a nested call frame object.
prestateTracer response
object— theprestateTracertraces object:smart contract address— the address of the smart contract associated with the result.balance— the balance of the contract, expressed in Wei and encoded as a hexadecimal string.code— the bytecode of the contract, encoded as a hexadecimal string.nonce— the nonce of the account associated with the contract, represented as an unsigned integer.storage— a map of key-value pairs representing the storage slots of the contract.
debug_traceBlockByHash code examples
Use case
Thedebug_traceBlockByHash method is useful for auditing all transactions in a specific block. Developers can use it to analyze gas consumption patterns, identify function call frequencies using the 4byteTracer, or inspect the full call tree of every transaction in a block using the callTracer.Last modified on May 18, 2026