For the complete documentation index, see llms.txt. This page is also available as Markdown.

eth_estimateGas - Scroll

Example code for the eth_estimateGas JSON-RPC method. Complete guide on how to use eth_estimateGas JSON-RPC in GetBlock Web3 documentation.

This method returns an estimate of the gas required to execute a transaction, without submitting it. On GIWA Sepolia the estimate covers L2 execution gas; the OP Stack L1 data fee is separate.

Parameters

Parameter
Type
Required
Description

transaction

object

Yes

Transaction call object

blockParameter

string

No

Block number in hex, or "latest", "pending"

Transaction Object

Field
Type
Required
Description

from

string

No

20-byte sender address

to

string

No

20-byte recipient/contract address (omit for deployment)

value

string

No

Value to send in wei (hex)

data

string

No

Encoded function call or deployment bytecode

Request

curl --location --request POST 'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/' \
--header 'Content-Type: application/json' \
--data-raw '{
    "jsonrpc": "2.0",
    "method": "eth_estimateGas",
    "params": [{ "from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "to": "0x4200000000000000000000000000000000000006", "value": "0xde0b6b3a7640000" }],
    "id": "getblock.io"
}'
example.js
const axios = require('axios');

const response = await axios.post('https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/', {
    jsonrpc: '2.0',
    method: 'eth_estimateGas',
    params: [{ from: '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045', to: '0x4200000000000000000000000000000000000006', value: '0xde0b6b3a7640000' }],
    id: 'getblock.io'
}, {
    headers: { 'Content-Type': 'application/json' }
});

console.log(response.data.result);
example.py
import requests

response = requests.post(
    'https://shared.eu-central-1.getblock.io/<ACCESS-TOKEN>/',
    headers={'Content-Type': 'application/json'},
    json={
        'jsonrpc': '2.0',
        'method': 'eth_estimateGas',
        'params': [{ 'from': '0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045', 'to': '0x4200000000000000000000000000000000000006', 'value': '0xde0b6b3a7640000' }],
        'id': 'getblock.io'
    }
)

print(response.json())

Response

Response Parameters

Parameter
Type
Description

jsonrpc

string

JSON-RPC protocol version ("2.0")

id

string

Request identifier matching the request

result

string

Hex-encoded estimated L2 gas units

Use Cases

  • Gas Limits: Set a safe gas limit before signing a transaction

  • Fee Preview: Multiply the estimate by gas price to preview execution cost

  • Revert Detection: Catch a would-fail transaction before broadcast

  • Deployment Sizing: Estimate gas for contract creation calldata

Error Handling

Error Code
Message
Description

-32602

Invalid params

Malformed transaction object

3

Execution reverted

The transaction would revert during estimation

-32000

Execution error

Insufficient funds or gas required exceeds allowance

Web3 Integration

Last updated

Was this helpful?