Skip to main content

eth_estimateGas

Estimates the gas necessary to execute a transaction on MegaETH.

Why MegaETH? Build on the first real-time blockchain with sub-millisecond latency and 100,000+ TPS with sub-millisecond transaction streaming with 100,000+ sustained TPS and full EVM compatibility.

Use Cases#

The eth_estimateGas method is essential for:

  • Transaction preparation - Set appropriate gas limits
  • Cost estimation - Calculate transaction costs before sending
  • Error detection - Identify reverts before spending gas
  • DeFi operations - Estimate costs for high-frequency trading, real-time gaming, instant payments, and latency-sensitive applications

Gas Limit Restriction#

Gas Limit on MegaETH

On MegaETH, eth_estimateGas requests are subject to a maximum gas limit of 10,000,000. Complex transactions exceeding this limit should be optimized or restructured.

For transactions requiring more than 10M gas:

// Split complex operations into multiple transactions
const operation1 = await contract.step1();
await operation1.wait();

const operation2 = await contract.step2();
await operation2.wait();

Parameters#

ParameterTypeRequiredDescription
fromDATANoSender address
toDATANoRecipient address
gasQUANTITYNoGas limit
gasPriceQUANTITYNoGas price
valueQUANTITYNoValue in wei
dataDATANoTransaction data

Request#

{
"jsonrpc": "2.0",
"method": "eth_estimateGas",
"params": [{
"from": "0x0E0f4Dd25ae8AB20E1583D9E8EDFf319A88e1d3f",
"to": "0x0E0f4Dd25ae8AB20E1583D9E8EDFf319A88e1d3f",
"value": "0x1"
}],
"id": 1
}

Returns#

TypeDescription
QUANTITYEstimated gas amount in hexadecimal

Response#

{
"jsonrpc": "2.0",
"id": 1,
"result": "0x5208"
}

Note: 0x5208 = 21000 gas (standard ETH transfer)

Code Examples#

curl -X POST https://api-megaeth-mainnet.n.dwellir.com/YOUR_API_KEY \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "eth_estimateGas",
"params": [{
"from": "0x0E0f4Dd25ae8AB20E1583D9E8EDFf319A88e1d3f",
"to": "0x0E0f4Dd25ae8AB20E1583D9E8EDFf319A88e1d3f",
"value": "0x1"
}],
"id": 1
}'

Error Handling#

Error CodeMessageDescription
-32000Execution revertedTransaction would fail
-32602Invalid paramsInvalid transaction parameters

Tip: If estimation fails, the transaction would likely revert if sent.