Chapter 2 of 8 UTxO vs Account
0%

UTxO vs
Account Model

Bitcoin pioneered UTxO. Ethereum chose accounts. Both work, but they make fundamentally different trade-offs.

UTxO Model

Like Cash

You have a €20 note and a €10 note in your wallet. To pay €25, you hand over both notes and get a €5 note back. The original notes are gone.

Your “balance” is the sum of individual outputs you control. Each transaction destroys old outputs and creates new ones.

  • ◆ Inherently parallel, no shared mutable state
  • ◆ Deterministic, outcome known before submission
  • ◆ Privacy-friendly. Outputs can use different addresses
  • ◆ Resource use known before submission; on Cardano even the fee is deterministic
  • ◆ Used by: Bitcoin, Cardano, Ergo, Nervos
Property UTxO Account
State modelImmutable outputsMutable balances
ParallelismHigher potential (independent UTxOs)Serialised per account
DeterminismFully deterministicDepends on global state
Failed transactionsPhase-1 failures rejected for free; phase-2 script failures forfeit collateral on-chainCan fail on-chain, fees consumed
Privacy (in practice)Many wallets rotate addressesSame address typically reused
Contract patternsState machines / CEMDirect state mutation
Formal verificationEasier (local reasoning)Harder (global effects)

Same Transfer, Two Models

See how the same 20 ₳ transfer from Alice to Bob plays out in each paradigm.

Alice sends 20 ₳ to Bob, same transfer, two paradigms
UTxO Model
Alice's Wallet
30 ₳20 ₳
Account Model
Alice
50 ₳
Bob
10 ₳

Where the Model Hits Reality

The choice between accounts and outputs isn’t only architectural. It shapes how wallets can be drained.

eUTxO

Nothing to Approve

No standing permission exists. A validator script doesn’t hold balances; it gates a specific UTxO, only for the transaction at hand.

Each UTxO is consumed once, in full. There is no ‘approve’ equivalent, because there are no balances to grant access to. Spending from an ordinary key-controlled wallet address always needs your signature on that exact transaction. Two limits remain: funds you lock at a script follow that script’s rules from then on, without asking you again, and signing a malicious transaction still loses exactly what that transaction spends.

  • ◆ No token allowances handed to contracts
  • ◆ Wallet spends need a signature per transaction
  • ◆ Script-locked funds follow the script’s rules

Subscription vs. Cash

An ‘approve’ is the crypto version of a standing direct debit: convenient until you forget who can still pull from your account. eUTxO is closer to paying with cash. Every transfer is an act, not a permission.

Mastery Check

Three quick questions

Optional. Score 3/3 to earn mastery badges. Your first attempt counts for the Polymath badge. Questions and answer order are randomised on every attempt.