Skip to main content
POST
starknet_simulateTransactions
Starknet OpenRPC specFor the latest version of the publicly maintained OpenRPC spec, see the Starknet specs GitHub repo.
Starknet API method that simulates the execution of a list of transactions on a given state. It provides a simulation of the execution of a list of transactions based on the network’s current state and the transactions’ parameters. A client or wallet can use this simulation to understand the potential outcome of these transactions if they were to be included in a block.
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

  • block_id — the hash of the requested block, or number (height) of the requested block, or a block tag, for the block referencing the state or call the transaction on.
  • transactions — the list of transactions to simulate. Each transaction runs on the state left by the previous ones. JSON-RPC API version 0.9 accepts only version 3 transactions ("version": "0x3").
  • simulation_flags — required; a list that can be empty or contain:
    • SKIP_VALIDATE — skip the account’s signature validation.
    • SKIP_FEE_CHARGE — skip charging the fee, so the account doesn’t need the balance to pay it.

Response

  • result — a list with one entry for each simulated transaction:
    • transaction_trace — the execution trace. It includes validate_invocation unless you pass SKIP_VALIDATE, and fee_transfer_invocation unless you pass SKIP_FEE_CHARGE. A transaction that reverts doesn’t return an error; its execute_invocation contains a revert_reason instead.
    • fee_estimation — the fee estimate for the transaction, in the same format as starknet_estimateFee.

Use case

A practical use case for starknet_simulateTransactions is to simulate the execution of a list of transactions that interact with contracts on StarkNet. This can be useful for testing and debugging purposes, as it allows developers to understand the potential outcome of these transactions without actually executing them on the network.

Body

application/json
id
integer
default:0
jsonrpc
string
default:2.0
method
string
default:starknet_simulateTransactions
params
(object | object[] | enum<string>[])[]

Response

200

Successful response

Last modified on November 13, 2026