Skip to main content

trace_replayTransaction RPC Method

Replays a transaction, returning the traces (Supported on Erigon).

Updated on
Jan 21, 2026
This RPC method is included in the Free Trial with limited usage. Upgrade your plan to get full access and higher limits. Learn more onĀ our pricing page.

Parameters

hash
string
REQUIRED

The hash of a transaction

array
array
REQUIRED

The type of trace, one or more of:

vmTrace
string

To get a full trace of the virtual machine's state during the execution of the given of given transaction, including for any subcalls

trace
string

To get the basic trace of the given transaction

stateDiff
string

To get information on altered Ethereum state due to execution of the given transaction

Returns

array

The block traces, which have the following fields (please note that all return types are hexadecimal representations of their data type unless otherwise stated):

output

The data which is returned as an output encoded in hexadecimal format

stateDiff

It returns the information on altered Ethereum state due to execution of the given transaction

trace

It is used to retrieve the basic trace of the given information

type

The value of the method such as call or create

action

The action to be performed on the receiver id

from

The address of the sender

callType

The type of method such as call, delegatecall

gas

The gas provided by the sender, encoded as hexadecimal

input

The data sent along with the transaction

to

The address of the receiver

value

The integer of the value sent with this transaction, encoded as hexadecimal

result

The integer of the gas price used encoded as hexadecimal

gasUsed

The total used gas by all transactions in this block encoded as hexadecimal

output

The value returned by the contract call, and it only contains the actual value sent by the RETURN method. If the RETURN method was not executed, the output is empty bytes

subtraces

The traces of contract calls made by the transaction

traceAddress

The list of addresses where the call was executed, the address of the parents, and the order of the current sub call

vmTrace

It is used to get a full trace of the virtual machine's state during the execution of the given transaction, including for any sub-calls

Request
Response
1
{
2
"jsonrpc": "2.0",
3
"id": 1,
4
"result": {
5
"output": "0x",
6
"stateDiff": null,
7
"trace": [
8
{
9
"action": {
10
"from": "0x9cc573c775c61d7a783f125d9ff5c3df60a2e718",
11
"callType": "call",
12
"gas": "0x0",
13
"input": "0x",
14
"to": "0x885885521990b53fd00556c143ea056dd2f62a12",
15
"value": "0x8cc0c47d9477f90"
16
},
17
"result": {
18
"gasUsed": "0x0",
19
"output": "0x"
20
},
21
"subtraces": 0,
22
"traceAddress": [],
23
"type": "call"
24
}
25
],
26
"vmTrace": null,
27
"transactionHash": "0x3277c743c14e482243862c03a70e83ccb52e25cb9e54378b20a8303f15cb985d"
28
}
29
}
1
{
2
"jsonrpc": "2.0",
3
"id": 1,
4
"result": {
5
"output": "0x",
6
"stateDiff": null,
7
"trace": [
8
{
9
"action": {
10
"from": "0x9cc573c775c61d7a783f125d9ff5c3df60a2e718",
11
"callType": "call",
12
"gas": "0x0",
13
"input": "0x",
14
"to": "0x885885521990b53fd00556c143ea056dd2f62a12",
15
"value": "0x8cc0c47d9477f90"
16
},
17
"result": {
18
"gasUsed": "0x0",
19
"output": "0x"
20
},
21
"subtraces": 0,
22
"traceAddress": [],
23
"type": "call"
24
}
25
],
26
"vmTrace": null,
27
"transactionHash": "0x3277c743c14e482243862c03a70e83ccb52e25cb9e54378b20a8303f15cb985d"
28
}
29
}
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free