Ethereum Transactions

What is an Ethereum Transaction?

A transaction is a signed message that changes state on the blockchain: transferring ETH, calling a contract, or deploying a contract. Only the holder of the account’s private key can create a valid signature for that account.

Signing: You learned how signing works in Distributed Ledgers and can practice building and signing a transfer in the Transaction Signing page. The same idea applies on Ethereum: sign the transaction payload with your private key.

Transaction Flow

After you sign a transaction, it is broadcast to the network. The diagram below shows how it moves from senders to beneficiaries:

Transaction flow: senders sign transactions → proposed transactions (mem-pool) → validators select transactions into a block → broadcast → verification → block published → beneficiaries notified

Transaction flow: Senders sign transactions → proposed transactions (mem-pool) → validators select transactions into a block → broadcast to the network → verification → block published to the blockchain → beneficiaries notified.

Mem-pool (memory pool): Signed transactions that have been broadcast but not yet included in a block sit in a waiting area called the mem-pool. Each node maintains its own view of pending transactions. Validators (or miners in proof-of-work) take transactions from the mem-pool and choose which ones to include in the next block. They typically prefer transactions that offer higher fees, so users can pay more to get included faster.

Transaction Fields

A typical ETH transfer includes:

  • From – sender address (derived from your public key)
  • To – recipient address
  • Value – amount of ETH
  • Nonce – per-account counter (prevents replay)
  • Gas price / max fee – fee paid to the network
  • Gas limit – max computation allowed

After signing, the transaction is broadcast to the network. Ethereum’s consensus (see Consensus Mechanisms) determines how it gets included in a block.

Gas Fees: Base Fee and Priority Fee (Tips)

On Ethereum, every transaction pays gas fees to use the network. After the London upgrade (EIP-1559), fees are split into two parts:

  • Base fee: A minimum fee per unit of gas that is set by the protocol based on network demand. This fee is burned (destroyed), so it is removed from circulation rather than paid to any party.
  • Priority fee (tip): An extra amount per unit of gas that you add on top of the base fee. The priority fee is paid to the validator (block proposer) who includes your transaction in a block. Offering a higher tip makes your transaction more attractive to validators and can lead to faster inclusion.

Your total fee per unit of gas is typically max fee per gas (the most you are willing to pay), and the protocol charges you the base fee + priority fee, up to that maximum. Any unused portion of the max fee is refunded.

You can think of gas used as a meter for blockchain resources consumed by execution — similar to paying for CPU time, disk/state updates, and bandwidth. More resource-heavy transactions consume more gas.

Common operations that consume gas include:

  • Computation: Arithmetic, branching, and EVM opcode execution.
  • Storage reads/writes: Reading state costs gas, but writing/updating storage is much more expensive.
  • Contract calls: Calling other contracts adds execution overhead.
  • Calldata size: Larger input data generally increases gas used.
  • Contract deployment: Usually expensive because bytecode is stored on-chain.
What usually costs more gas? Storage writes, complex contract logic, multiple internal calls, and large data payloads.

Gas is also a safety mechanism. Since every opcode costs gas and each transaction has a gas limit, execution must stop when the limit is reached. This helps prevent denial-of-service behavior like infinite loops from running forever and consuming all node resources.

Gas Price vs Gas Used (Etherscan Example)

Gas price and gas used are different: gas price is the rate you pay per gas unit, while gas used is the amount of gas units actually consumed by execution.

Etherscan transaction view showing gas price, gas used, and transaction fee

Etherscan view: Gas Price, Gas Limit & Usage by Txn, and Transaction Fee are shown as separate fields.

  • Gas Price: On Ethereum (EIP-1559 style), the effective price is: base fee + priority fee (tip).
  • Gas Used: Actual units consumed by transaction execution (always less than or equal to gas limit).
  • Transaction Fee: gas price × gas used.
Quick example: If gas price is 30 Gwei and gas used is 21,000, then fee = 30 × 21,000 = 630,000 Gwei = 0.00063 ETH.

Block Rewards vs Priority Fees

Block rewards are new ETH created by the protocol when a new block is produced. On Ethereum (since the Merge), block rewards go to the validator that proposes the block (the block proposer). This reward is separate from transaction fees: it is issued by the protocol as an incentive to secure the network.

Priority fees (tips) are the part of transaction fees that users explicitly add to reward the block proposer. So the validator who includes a block receives both (1) the block reward from the protocol and (2) the priority fees from the transactions in that block. The base fee from those transactions is not paid to the validator; it is burned.

Summary: Base fee → burned. Priority fee (tip) → paid to the block proposer. Block reward → new ETH paid by the protocol to the block proposer. So validators earn from block rewards plus priority fees, while the base fee is removed from supply.