Skip to content

UTXO vs Account Model

Compare how Bitcoin-style outputs and Ethereum-style account balances record the same payment, change and fee.

A UTXO ledger records unspent transaction outputs, each with an amount and a condition for spending it. An account ledger records balances as part of each account's state. The first model consumes existing outputs and creates new ones. The second updates account balances. For someone reconciling a payment or measuring on-chain flows, the difference determines which ledger entries count as value sent to the recipient. Bitcoin Developer Guide, Transactions · Ethereum.org, Accounts

One payment, two records

Suppose Mina starts with 10 coins, sends Ravi 3, and pays a fee of 0.1 coins. Ravi starts with zero. Both examples use the same fictional asset for the payment and the fee.

UTXO model. Mina starts with one unspent 10-coin output, identified here as old:0. A new transaction names it as the input and consumes it in full. It creates new:0, a 3-coin output Ravi can spend, and new:1, a 6.9-coin change output Mina can spend. The transaction fee is the difference between the input and the outputs, 10−(3+6.9)=0.110 - (3 + 6.9) = 0.1 coins. The old output drops out of the spendable set. Mina's remaining 6.9 coins are in a new output.
Account model. The ledger debits Mina's balance by 3+0.1=3.13 + 0.1 = 3.1 coins, leaving 6.9. It credits 3 to Ravi's balance. Mina keeps the remainder in her account, so the transaction needs no change output. The example shows only the sender and recipient and leaves the handling of the fee to the protocol.
Fictional payment in coins. The UTXO ledger replaces one 10-coin output with 3 for the recipient and 6.9 in change. The account ledger drops the sender from 10 to 6.9 and raises the recipient from 0 to 3. The fee is 0.1 in both.
Fictional payment in coins. The UTXO ledger replaces one 10-coin output with 3 for the recipient and 6.9 in change. The account ledger drops the sender from 10 to 6.9 and raises the recipient from 0 to 3. The fee is 0.1 in both.
The UTXO snapshot changes which outputs exist in the spendable set. The account snapshot changes the values on the balance records.

What Bitcoin and Ethereum check

For an ordinary Bitcoin payment, an input references a previous output by its transaction ID and output index. That pair is called an outpoint. The output must still be unspent, and the spender must satisfy its spending condition. A wallet can select several outputs to fund a payment, and it can send the change to a fresh address controlled by the sender. The fee is implicit in the difference between total input and output value. Bitcoin Developer Guide, Introduction and Transaction Fees and Change
For a plain Ethereum transfer of native ether between externally owned accounts without delegated code, the sender signs the transaction and must have sufficient ETH. The transaction's nonce must match the sender's current account nonce. Applying the transfer increments that nonce, so the same signed transaction cannot execute again on the resulting state. The sender pays the transfer amount plus the execution fee, which is gas used times the effective price per unit of gas. The recipient gets the transfer amount. These are Ethereum's validation and fee rules. The fictional account example simply takes the fee as given. Ethereum.org, Transactions · Ethereum.org, Gas and Fees

What a transaction tells the analyst

Counting both new outputs in the example gives 9.9 coins of output volume, even though Ravi receives only 3. To estimate transfers between entities, the analyst has to distinguish payments from change. A fresh address can belong to the sender, and an account address can be controlled by a custodian for many customers. In either model, identifying the ledger entries comes before attributing them to an entity. Glassnode, Change Volume
The ledger design also affects realized cap and MVRV. In Coin Metrics' UTXO methodology, the 6.9-coin change output is dated by its own creation even though Mina still controls the funds. For account-based assets, the provider uses an account activity rule to date the balance. A change in either series can reflect ledger activity without a trade. Coin Metrics, Realized Market Cap

Sources

Last updated
  • bitcoin
  • ethereum
  • on chain analysis
  • utxo
  • account model
← Back to the glossaryBack to top ↑