StableNet uses EIP-1559-style fees with two key differences: the base fee goes to validators instead of being burned, and the priority fee is set by governance rather than the market.
Fee components
Every transaction pays two components:
For standard (non-authorized) accounts, the
maxPriorityFeePerGas you specify in a transaction is overridden by the governance-enforced gas tip. You must include a value at or above the minimum — transactions below the threshold are rejected at the mempool level.
Base fee adjustment
StableNet uses a dual-threshold system instead of Ethereum’s ±12.5% adjustment:
The base fee does not decrease below a protocol minimum, and increases are capped to prevent sudden spikes.
Unlike Ethereum, the base fee is distributed to validators — not burned. This preserves the stablecoin’s 1:1 fiat backing (burning only happens at point of fiat redemption).
Setting fees in your transaction
For EIP-1559 transactions (type0x02), set both fields:
cast send and forge script, pass --priority-gas-price 27600000000000.
The governance-enforced minimum priority fee is set by the GovValidator contract. Transactions with
maxPriorityFeePerGas below this value are rejected before block inclusion.Fee delegation (type 0x16)
StableNet adds a fee-delegated transaction type (0x16) where a separate account — the fee payer — covers gas costs. The sender’s account only needs to hold the transfer value.
Unused gas is refunded to the fee payer, not the sender.
Gas estimation
Useeth_estimateGas to get the gas limit for a transaction before sending. The RPC endpoint returns the gas in units; multiply by the effective gas price to get the total fee in WKRC.
Developer benefits
- Predictable fees — base fee moves ±2% per block rather than ±12.5%
- KRW-denominated costs — fee estimates are stable in fiat terms
- Fee delegation — sponsor gas for users without changing contract logic
Related
- Fee Delegation Tutorial — implement type 0x16 transactions
- RPC API Reference —
eth_gasPrice,eth_feeHistory,eth_estimateGas

