Crypto glossary

Externally owned account (EOA)

Definition

An externally owned account (EOA) is an Ethereum account controlled by a private key rather than by code, and the only kind that can start a transaction.

Ethereum has two kinds of accounts. An externally owned account, or EOA, is the ordinary address a wallet like MetaMask creates: it is derived from a public key, holds no code and is controlled by whoever has the matching private key. A contract account, by contrast, holds code and only acts when something calls it. Historically, every transaction on Ethereum had to be signed by an EOA.

Most users still interact with Ethereum through EOAs, which is why the seed phrase is such a single point of failure: lose it and the account is gone; leak it and anyone can empty it. EOAs also cannot batch actions, pay gas in other tokens or set spending rules. The Pectra upgrade of May 2025 introduced EIP-7702, which lets an EOA delegate to contract code and behave like a smart account while keeping its address.

An EOA is not the same as a wallet app: one app can manage many EOAs, and the same EOA can be imported into several apps. With EIP-7702, signing a delegation to malicious code is as dangerous as handing over the key, a pattern phishing kits have already exploited.

Example

A user who creates a new address in MetaMask gets an EOA; when they later enable batched transactions, the wallet signs an EIP-7702 delegation so that same address can approve and swap in one step.

Related terms