Gas and Transaction Fees
What a transaction costs on XPHERE, measured on Mainnet rather than estimated.
For where those fees go once paid — the burn, Union, miner, and Foundation split — see Tokenomics.
Gas price
XPHERE uses a bounded gas price. The network sets the price; a transaction pays it. You cannot bid above the ceiling to jump the queue, and a transaction offering less than the floor is rejected.
| Value | How to read it | |
|---|---|---|
| Floor | 25 gwei | xp_lowerBoundGasPrice — the price never drops below this |
| Current | 27.5 gwei | eth_gasPrice / xp_gasPrice — what to use right now |
| Ceiling | 750 gwei | xp_upperBoundGasPrice — the price never rises above this |
curl -s -X POST https://rpc.x-phere.com \
-H "Content-Type: application/json" \
--data '{"jsonrpc":"2.0","method":"eth_gasPrice","params":[],"id":1}'
Always read eth_gasPrice before sending rather than hardcoding a number. The values above
were read on 2026-08-09 and the current price moves within the bounds.
Blocks carry a baseFeePerGas, but transactions on Mainnet are sent with a plain gasPrice.
There is no priority fee to tune: xp_maxPriorityFeePerGas returns 0. Wallets and libraries
that default to EIP-1559 style maxFeePerGas should be configured to send legacy transactions.
What operations cost
Measured from real Mainnet transactions. Gas used is a property of the operation and does not change; the fee moves with the gas price.
| Operation | Gas used | Fee @ 25 gwei | Fee @ 27.5 gwei |
|---|---|---|---|
| Native XP transfer | 21,000 | 0.000525 XP | 0.000578 XP |
ERC-20 approve | 52,898 | 0.001322 XP | 0.001455 XP |
ERC-20 transfer | 58,550 | 0.001464 XP | 0.001610 XP |
| Contract deployment — small | 279,046 | 0.006976 XP | 0.007674 XP |
| Contract deployment — ERC-20 | 1,078,672 | 0.026967 XP | 0.029663 XP |
Deployment cost scales with bytecode size, so treat the two deployment rows as a range rather than a fixed price. An unoptimised contract with many external functions costs more than the ERC-20 figure above.
What this means in practice
Deploying an ERC-20 token and exercising it — deploy, approve, transfer — costs well under
0.05 XP in total. A wallet doing ordinary transfers spends fractions of a thousandth of an XP
per transaction.
Estimating before you send
eth_estimateGas runs the transaction against current state and returns the gas it would use.
curl -s -X POST https://rpc.x-phere.com \
-H "Content-Type: application/json" \
--data '{
"jsonrpc":"2.0",
"method":"eth_estimateGas",
"params":[{
"from":"0x0000000000000000000000000000000000000000",
"to":"0x0000000000000000000000000000000000000000",
"value":"0x1"
}],
"id":1
}'
# → {"jsonrpc":"2.0","id":1,"result":"0x5208"} // 21000
The estimate reflects state at the time of the call. A transaction whose cost depends on storage that another transaction changes first can use more gas than estimated, so leave headroom on the gas limit for anything beyond a plain transfer.
Unused gas is refunded. Setting a gas limit above what the transaction consumes costs nothing extra; setting it too low wastes the whole fee on a failed transaction.
Block gas limit
Blocks report a gas limit of 999,999,999,999, which is not a practical constraint — a single
block can hold far more than any current workload produces. Transaction size, not block capacity,
is what limits what you can do in one transaction.
Testnet
Testnet uses the same mechanics with XPT instead of XP. Fund an address from the Faucet — 10 XPT per address per 24 hours, which covers thousands of transfers or several hundred contract deployments.
Develop against Testnet. There is no reason to spend Mainnet XP proving that a deployment script works.
See Also
- Tokenomics — Transaction Fees and Burn — where fees go
- Network Information — chain IDs and endpoints
- XPHERE-specific RPC —
xp_gasPriceand the bound methods - Smart Contracts — deploying and verifying