Docs
Docs
Home
Getting Started
Agent Tooling
CLI
Supported Chains
Acala
Aptos
Arbitrum
Arc
Asset Hub
Astar
Avalanche
Base
Berachain
Bifrost
Binance Smart Chain
Bittensor
Blast
Boba Network
Bridge Hub
Celo
Centrifuge
Chiliz
Cronos
Enjin
Ethereum
Etherlink
Flow EVM Gateway
Gnosis
Hydration
Hyperliquid
Immutable
Ink
IoTeX
Kusama
Linea
LISK
Manta Atlantic
Manta Pacific
Mantle
MegaETH
Monad
Movement
Neuroweb
opBNB
Optimism
Plasma
Polkadot
Polygon
Pulsechain
Robinhood
Ronin
Scroll
Sonic
Starknet
Taiko
Tempo
Sui
TRON
Unichain
Viction
World Chain
XDC Network
XX Network
Zetachain
zkSync Era
Zora
Supported ChainsPlasmaJSON-RPC APITransaction Methods

eth_gasPrice - Plasma RPC Method

Get current gas price on Plasma. Essential for transaction cost estimation for stablecoin transfers, payment apps, and wallets that need 1 second confirmation.

Plasma RPC endpoint: endpoint URLs, plans and pricing.

Returns the current gas price on Plasma in wei.

Why Plasma? Build on an EVM Layer 1 for stablecoin payments with PlasmaBFT consensus and Reth execution with 1 second blocks, XPL gas, full EVM JSON-RPC, and debug plus txpool on Dwellir.

When to Use This Method

The eth_gasPrice method serves these key scenarios for payment app developers, wallet teams, and teams shipping Solidity contracts for dollar transfers:

  • Set gas price for legacy transactions - Use the returned wei value as the gasPrice field in legacy (pre-EIP-1559) transactions on Plasma
  • Monitor network congestion - Track gas price fluctuations to determine the best time to submit transactions for lower fees
  • Estimate transaction costs - Multiply gas price by estimated gas units to calculate the total cost before sending any transaction
  • Build gas price oracles - Feed real-time gas price data into fee estimation UIs, automated trading bots, and wallet applications

Common Use Cases

1. Calculate Total Transaction Cost

Multiply the current gas price by the estimated gas for a transaction to determine the total cost in the native currency of Plasma. This lets users see the expected fee before confirming any transaction.

JavaScript
import { JsonRpcProvider, formatUnits } from 'ethers';

const provider = new JsonRpcProvider('https://api-plasma-mainnet.n.dwellir.com/YOUR_API_KEY');

async function calculateTransactionCost(gasLimit) {
  const gasPrice = await provider.send('eth_gasPrice', []);
  const costWei = BigInt(gasPrice) * BigInt(gasLimit);
  const costEth = formatUnits(costWei, 'ether');
  console.log(`Gas price: ${formatUnits(gasPrice, 'gwei')} Gwei`);
  console.log(`Estimated cost: ${costEth} ETH`);
  return costEth;
}

await calculateTransactionCost(21000);

2. Build Dynamic Gas Price Strategy

Adjust gas prices dynamically based on current network conditions. During peak congestion on Plasma, multiply the base gas price by 1.2-1.5x for faster inclusion; during quiet periods, use the raw gas price for the most economical confirmation.

JavaScript
import { JsonRpcProvider, formatUnits } from 'ethers';

const provider = new JsonRpcProvider('https://api-plasma-mainnet.n.dwellir.com/YOUR_API_KEY');

async function getDynamicGasPrice(strategy = 'medium') {
  const baseGasPrice = BigInt(await provider.send('eth_gasPrice', []));
  const multipliers = { low: 1.0, medium: 1.2, high: 1.5 };

  const adjustedPrice = baseGasPrice * BigInt(Math.floor(multipliers[strategy] * 100)) / 100n;

  console.log(`Base gas price: ${formatUnits(baseGasPrice, 'gwei')} Gwei`);
  console.log(`Strategy (${strategy}): ${formatUnits(adjustedPrice, 'gwei')} Gwei`);
  return adjustedPrice;
}

await getDynamicGasPrice('medium');

3. Compare Gas Prices Across Chains

If your application supports multiple chains, compare gas prices to route transactions to the most cost-effective network. This is particularly useful for cross-chain bridges and multi-chain DeFi aggregators.

JavaScript
const chains = {
  ethereum: 'https://eth.dwellir.com',
  polygon: 'https://polygon.dwellir.com',
  arbitrum: 'https://arb.dwellir.com'
};

async function compareGasPrices() {
  const results = {};
  for (const [name, rpcUrl] of Object.entries(chains)) {
    const provider = new JsonRpcProvider(rpcUrl);
    const gasPrice = await provider.send('eth_gasPrice', []);
    results[name] = {
      wei: BigInt(gasPrice).toString(),
      gwei: Number(BigInt(gasPrice)) / 1e9
    };
  }

  const sorted = Object.entries(results).sort((a, b) => a[1].gwei - b[1].gwei);
  console.log('Cheapest chain:', sorted[0][0], '-', sorted[0][1].gwei, 'Gwei');
  return results;
}

compareGasPrices();

Best Practices

  • Legacy gas price is a single number: for EIP-1559 transactions, prefer using eth_feeHistory combined with eth_maxPriorityFeePerGas instead
  • The return value is in wei: divide by 1e9 to convert to gwei, which is the standard unit for gas price display
  • Consider current network conditions on Plasma: multiply by 1.2-1.5x for faster block inclusion during congestion
  • Most modern chains use EIP-1559 exclusively: check if Plasma supports dynamic fee transactions before relying on legacy gas price
JSON-RPC request
{
  "jsonrpc": "2.0",
  "method": "eth_gasPrice",
  "params": [],
  "id": 1
}

Code Examples

Error Handling

Error CodeMessageDescription
-32603Internal errorNode error

Related Methods

  • eth_maxPriorityFeePerGas - Get priority fee (EIP-1559)
  • eth_feeHistory - Get historical fee data
  • eth_estimateGas - Estimate gas needed

eth_estimateGas

Estimate gas required for transactions on Plasma. Essential for optimizing transaction costs for stablecoin transfers, payment apps, and wallets that need 1 second confirmation.

eth_maxPriorityFeePerGas

Get the suggested priority fee (tip) per gas for EIP-1559 transactions on Plasma. Essential for gas estimation, fee optimization, and time-sensitive transaction pricing.

On this page

When to Use This MethodCommon Use Cases1. Calculate Total Transaction Cost2. Build Dynamic Gas Price Strategy3. Compare Gas Prices Across ChainsBest PracticesCode ExamplesError HandlingRelated Methods