13 KiB
Gas and Token Requirements for Multichain Deployment
Last Updated: 2026-02-26 20:12:26 UTC Purpose: Complete breakdown of gas costs and native tokens required for deploying all remaining contracts across all chains
⚠️ Real-Time Updates: This document can be updated with real-time gas prices using:
./scripts/deployment/get-multichain-gas-prices.sh ./scripts/deployment/update-gas-estimates.shThe estimates below use current market conditions. Always check real-time prices before deployment.
📖 See: Real-Time Gas System for complete guide
📊 Deployment Status Summary
Ethereum Mainnet (Chain ID: 1)
- ✅ CCIPWETH9Bridge: Already deployed (
0x3304b747E565a97ec8AC220b0B6A1f6ffDB837e6) - ✅ CCIPWETH10Bridge: Already deployed (
0x8078A09637e47Fa5Ed34F626046Ea2094a5CDE5e) - ✅ WETH9: Already exists (canonical:
0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2) - ✅ WETH10: Already exists (canonical:
0xf4BB2e28688e89fCcE3c0580D37d36A7672E8A9f) - ⏳ CCIPLogger: NEEDS DEPLOYMENT
Other Chains (Cronos, BSC, Polygon, Gnosis)
- ⏳ WETH9: Needs deployment
- ⏳ WETH10: Needs deployment
- ⏳ CCIPWETH9Bridge: Needs deployment
- ⏳ CCIPWETH10Bridge: Needs deployment
- ⏳ CCIPLogger: Needs deployment
⛽ Gas Cost Estimates
Contract Gas Requirements
| Contract | Estimated Gas | Notes |
|---|---|---|
| WETH9 | ~450,000 | Simple token contract |
| WETH10 | ~750,000 | Enhanced WETH with flash loans |
| CCIPWETH9Bridge | ~1,800,000 | Complex bridge with CCIP integration |
| CCIPWETH10Bridge | ~1,800,000 | Complex bridge with CCIP integration |
| CCIPLogger | ~2,500,000 | CCIP receiver with OpenZeppelin dependencies |
Total Gas per Chain
| Chain | Contracts to Deploy | Total Gas | Buffer (20%) | Total with Buffer |
|---|---|---|---|---|
| Ethereum Mainnet | 1 (CCIPLogger only) | 2,500,000 | 500,000 | 3,000,000 |
| Cronos | 5 (all contracts) | 7,300,000 | 1,460,000 | 8,760,000 |
| BSC | 5 (all contracts) | 7,300,000 | 1,460,000 | 8,760,000 |
| Polygon | 5 (all contracts) | 7,300,000 | 1,460,000 | 8,760,000 |
| Gnosis | 5 (all contracts) | 7,300,000 | 1,460,000 | 8,760,000 |
💰 Native Token Requirements by Chain
Ethereum Mainnet (ETH)
Gas Price Sources:
- Primary: Etherscan Gas API v2 (via
ETHERSCAN_API_KEYin.env) - Fallback: RPC endpoint (via
ETH_MAINNET_RPC_URLin.env) - Default: 20 gwei (if APIs unavailable)
Current Real-Time Estimate (last run: 2026-01-31):
- Gas Price: 2.74 gwei (Etherscan API)
- Total Gas: 3,000,000 units
- Cost: 0.0082 ETH
- USD Cost: ~$20.59 (at $2,500/ETH)
Refresh: Run ./scripts/deployment/get-multichain-gas-prices.sh for latest.
Gas Price Scenarios (for reference):
- Low: 20 gwei → 0.06 ETH (~$150)
- Normal: 50 gwei → 0.15 ETH (~$375)
- High: 100 gwei → 0.30 ETH (~$750)
Recommended Balance: 0.20 ETH (covers normal + buffer)
Token: ETH (Ethereum)
Cronos (CRO)
Gas Price Sources:
- Primary: RPC endpoint (via
CRONOS_RPC_URLin.env) - Default: 1,000 gwei (1 gwei in ETH terms) if RPC unavailable
Current Real-Time Estimate (run ./scripts/deployment/get-multichain-gas-prices.sh for latest):
- Gas Price: [Fetched from RPC]
- Total Gas: 8,760,000 units
- Cost: [Calculated from real-time price] CRO
- USD Cost: [Calculated from real-time price]
Gas Price Scenarios (for reference):
- Low: 500 gwei → 4.38 CRO (~$0.35)
- Normal: 1,000 gwei → 8.76 CRO (~$0.70)
- High: 2,000 gwei → 17.52 CRO (~$1.40)
Recommended Balance: 15 CRO (covers normal + buffer)
Token: CRO (Cronos)
BSC / BNB Smart Chain (BNB)
Gas Price Assumptions:
- Low: 3 gwei
- Normal: 5 gwei
- High: 10 gwei
| Scenario | Gas Price | Total Gas | Cost (BNB) | Cost (USD @ $300/BNB) |
|---|---|---|---|---|
| Current | .05 gwei | 8,760,000 | .0004380000 BNB | $.1314000000 |
| Normal | 5 gwei | 8,760,000 | 0.044 BNB | $13.20 |
| High | 10 gwei | 8,760,000 | 0.088 BNB | $26.40 |
Recommended Balance: 0.06 BNB (covers normal + buffer)
Token: BNB (Binance Coin)
Polygon PoS (MATIC)
Gas Price Assumptions:
- Low: 30 gwei
- Normal: 50 gwei
- High: 100 gwei
| Scenario | Gas Price | Total Gas | Cost (MATIC) | Cost (USD @ $0.80/MATIC) |
|---|---|---|---|---|
| Current | 34.84 gwei | 8,760,000 | .3052138581 MATIC | $.2441710864 |
| Normal | 50 gwei | 8,760,000 | 0.44 MATIC | $0.35 |
| High | 100 gwei | 8,760,000 | 0.88 MATIC | $0.70 |
Recommended Balance: 1.0 MATIC (covers normal + buffer + verification)
Token: MATIC (Polygon)
Gnosis Chain (xDAI)
Gas Price Assumptions:
- Low: 1 gwei
- Normal: 2 gwei
- High: 5 gwei
| Scenario | Gas Price | Total Gas | Cost (xDAI) | Cost (USD @ $1.00/xDAI) |
|---|---|---|---|---|
| Current | 0 gwei | 8,760,000 | .0000235014 xDAI | $.0000235014 |
| Normal | 2 gwei | 8,760,000 | 0.0175 xDAI | $0.02 |
| High | 5 gwei | 8,760,000 | 0.0438 xDAI | $0.04 |
Recommended Balance: 0.05 xDAI (covers normal + buffer)
Token: xDAI (Gnosis Chain native token, pegged to USD)
📋 Complete Token Requirements Summary
Minimum Required Balances (Conservative)
| Chain | Native Token | Minimum Balance | Recommended Balance | USD Equivalent (@ current rates) |
|---|---|---|---|---|
| Ethereum Mainnet | ETH | 0.15 ETH | 0.20 ETH | $500 |
| Cronos | CRO | 8.76 CRO | 15 CRO | $1.20 |
| BSC | BNB | 0.044 BNB | 0.06 BNB | $18 |
| Polygon | MATIC | 0.44 MATIC | 1.0 MATIC | $0.80 |
| Gnosis | xDAI | 0.0175 xDAI | 0.05 xDAI | $0.05 |
Total USD Cost Estimate
At Normal Gas Prices:
- Ethereum Mainnet: $375
- Cronos: $0.70
- BSC: $13.20
- Polygon: $0.35
- Gnosis: $0.02
- Total: ~$389.27
With Recommended Buffers:
- Ethereum Mainnet: $500
- Cronos: $1.20
- BSC: $18
- Polygon: $0.80
- Gnosis: $0.05
- Total: ~$520.05
🔍 Contract-Specific Breakdown
Ethereum Mainnet Deployment
| Contract | Gas Units | Cost @ 50 gwei (ETH) | Cost @ 50 gwei (USD) |
|---|---|---|---|
| CCIPLogger | 2,500,000 | 0.125 ETH | $312.50 |
| Buffer (20%) | 500,000 | 0.025 ETH | $62.50 |
| TOTAL | 3,000,000 | 0.15 ETH | $375.00 |
Cronos / BSC / Polygon / Gnosis Deployment
| Contract | Gas Units | Notes |
|---|---|---|
| WETH9 | 450,000 | Simple token contract |
| WETH10 | 750,000 | Enhanced with flash loans |
| CCIPWETH9Bridge | 1,800,000 | Bridge contract |
| CCIPWETH10Bridge | 1,800,000 | Bridge contract |
| CCIPLogger | 2,500,000 | CCIP receiver |
| Subtotal | 7,300,000 | |
| Buffer (20%) | 1,460,000 | |
| TOTAL | 8,760,000 |
⚠️ Additional Considerations
Contract Verification Costs
Contract verification on explorers typically requires:
- Etherscan: Free (but may require API key)
- Cronoscan: Free
- BscScan: Free
- Polygonscan: Free
- Gnosisscan: Free
Note: Verification is free but may require additional transactions for constructor arguments encoding.
LINK Token Requirements (for CCIP Fees)
After deployment, bridges will need LINK tokens for CCIP cross-chain message fees:
| Chain | LINK Token Address | Recommended Balance |
|---|---|---|
| Ethereum Mainnet | 0x514910771AF9Ca656af840dff83E8264EcF986CA |
10 LINK |
| Cronos | TBD | 10 LINK |
| BSC | TBD | 10 LINK |
| Polygon | 0x53E0bca35eC356BD5ddDFebbD1Fc0fD03FaBad39 |
10 LINK |
| Gnosis | TBD | 10 LINK |
Total LINK Required: ~50 LINK (for initial operations and testing)
🚀 Pre-Deployment Checklist
Before deploying to each chain, verify:
- Ethereum Mainnet: Wallet has ≥ 0.20 ETH
- Cronos: Wallet has ≥ 15 CRO
- BSC: Wallet has ≥ 0.06 BNB
- Polygon: Wallet has ≥ 1.0 MATIC
- Gnosis: Wallet has ≥ 0.05 xDAI
- All RPC endpoints are accessible
- All explorer API keys are configured
- CCIP router addresses are correct for each chain
- LINK token addresses are correct for each chain
📝 Environment Variables for Gas Configuration
Add these to your .env file:
# Gas Configuration (optional - Foundry auto-detects)
# Ethereum Mainnet
ETH_MAINNET_GAS_PRICE=50000000000 # 50 gwei
ETH_MAINNET_GAS_LIMIT=3000000
# Cronos
CRONOS_GAS_PRICE=1000000000 # 1000 gwei (1 gwei in ETH terms)
CRONOS_GAS_LIMIT=9000000
# BSC
BSC_GAS_PRICE=5000000000 # 5 gwei
BSC_GAS_LIMIT=9000000
# Polygon
POLYGON_GAS_PRICE=50000000000 # 50 gwei
POLYGON_GAS_LIMIT=9000000
# Gnosis
GNOSIS_GAS_PRICE=2000000000 # 2 gwei
GNOSIS_GAS_LIMIT=9000000
🔄 Real-Time Gas Price Checking
Automated Script (Recommended)
Use the provided script to fetch real-time gas prices for all chains:
# Fetch and display real-time gas prices for all chains
./scripts/deployment/get-multichain-gas-prices.sh
# Update documentation with real-time prices
./scripts/deployment/update-gas-estimates.sh
This script:
- Fetches gas prices from configured APIs in
.env - Calculates costs for all chains
- Updates documentation automatically
- Exports values for use in other scripts
Manual Checking
Before deployment, you can also check current gas prices manually:
# Ethereum Mainnet (via Etherscan API)
curl -s "https://api.etherscan.io/v2/api?chainid=1&module=gastracker&action=gasoracle&apikey=${ETHERSCAN_API_KEY}"
# Or via RPC
cast gas-price --rpc-url $ETH_MAINNET_RPC_URL
# Cronos
cast gas-price --rpc-url $CRONOS_RPC_URL
# BSC
cast gas-price --rpc-url $BSC_RPC_URL
# Polygon
cast gas-price --rpc-url $POLYGON_RPC_URL
# Gnosis
cast gas-price --rpc-url $GNOSIS_RPC_URL
Required Environment Variables
Ensure these are set in your .env file:
# Ethereum Mainnet
ETHERSCAN_API_KEY=your_api_key_here
ETH_MAINNET_RPC_URL=https://...
# Other chains
CRONOS_RPC_URL=https://...
BSC_RPC_URL=https://...
POLYGON_RPC_URL=https://...
GNOSIS_RPC_URL=https://...
📊 Cost Optimization Tips
- Deploy During Low Activity: Weekends and off-peak hours typically have lower gas
- Monitor Gas Prices: Use gas trackers before deploying
- Batch Deployments: Deploy multiple contracts in one transaction when possible
- Use Gas Tokens: Some chains support gas tokens (check per chain)
- Test on Testnets First: Verify everything works before mainnet deployment
🎯 Quick Reference: Minimum Balances
| Chain | Token | Minimum | Recommended |
|---|---|---|---|
| Mainnet | ETH | 0.15 ETH | 0.20 ETH |
| Cronos | CRO | 8.76 CRO | 15 CRO |
| BSC | BNB | 0.044 BNB | 0.06 BNB |
| Polygon | MATIC | 0.44 MATIC | 1.0 MATIC |
| Gnosis | xDAI | 0.0175 xDAI | 0.05 xDAI |
Last Updated: 2026-02-26 20:12:26 UTC Next Review: Before each deployment phase
📊 Real-Time Gas Price Updates
How to Update Estimates
-
Fetch Real-Time Prices:
./scripts/deployment/get-multichain-gas-prices.sh -
Update Documentation:
./scripts/deployment/update-gas-estimates.sh -
Verify Updates:
- Check
GAS_AND_TOKEN_REQUIREMENTS.mdfor updated costs - Check
TOKENS_AND_CHAINS_SUMMARY.mdfor updated balances - Check
DEPLOYMENT_QUICK_REFERENCE.mdfor quick reference
- Check
Gas Price Data Sources
The scripts use the following sources (in priority order):
-
Ethereum Mainnet:
- Etherscan Gas API v2 (via
ETHERSCAN_API_KEY) - RPC endpoint (via
ETH_MAINNET_RPC_URL) - Default: 20 gwei
- Etherscan Gas API v2 (via
-
Other Chains (Cronos, BSC, Polygon, Gnosis):
- RPC endpoint (via
*_RPC_URLin.env) - Default: Chain-specific defaults
- RPC endpoint (via
Output Format
The script outputs:
- Current gas prices in gwei for each chain
- Deployment costs in native tokens
- USD equivalents (using approximate exchange rates)
- Total estimated cost across all chains
- JSON file with all data for programmatic use
Exchange Rates (for USD calculations)
Current approximate rates used:
- ETH: $2,500
- CRO: $0.08
- BNB: $300
- MATIC: $0.80
- xDAI: $1.00
Note: These rates are approximate. For accurate USD costs, use real-time exchange rates.