Last updated:
Account abstraction is an approach to Ethereum in which smart contracts can act as user accounts, allowing wallet security and transaction behavior to be programmed rather than relying solely on externally owned accounts (EOAs). It is intended to make wallets more flexible and easier to use while enabling features such as recovery mechanisms, transaction limits, and alternative ways to pay fees.[1][2]
In the traditional EOA model, a user’s account is controlled by a private key, with a public key used to create addresses. The signer and the account are the same entity: anyone who controls the private key can authorize transactions, while losing it can make the account inaccessible. A seed phrase can reveal the private key, and phishing attempts to obtain seed phrases are a common scam.[1][2]
Smart accounts are smart contracts that hold assets and use programmable rules to authorize transactions. Account abstraction allows wallet logic to run on Ethereum, including logic that governs how transactions are approved, instead of requiring every action to be authorized directly through the traditional EOA model.[1]
Ethereum documentation describes two approaches to account abstraction. EIP-4337 adds a separate transaction system alongside the existing protocol, while EIP-7702 upgrades EOAs so that smart contracts can control them. EIP-7702 was scheduled for inclusion in Ethereum’s Pectra upgrade on May 7, 2025.[1]
EIP-4337, also referred to as ERC-4337, enables smart-contract wallet support without changing Ethereum’s core protocol or requiring a hard fork. It introduces UserOperations, which represent proposed wallet actions. Under the system described for ERC-4337, bundlers collect UserOperations from a separate mempool and submit them in bundles to the EntryPoint smart contract for verification and execution.[1][3]
The EIP-4337 EntryPoint contract was deployed on Ethereum Mainnet on March 1, 2023. Ethereum.org reports that the standard had facilitated the creation of more than 26 million smart wallets and the processing of more than 170 million UserOperations.[1]
Account abstraction allows wallet rules to be tailored to different security needs. A wallet can use backup keys, replace a compromised key, distribute control among trusted people, require multiple signatures for high-value transactions, or restrict transactions to trusted addresses. Smart-contract wallets can also support social recovery, in which recovery rights are delegated to trusted people or hardware devices, as well as daily spending limits.[1][3]
The model also supports changes to how transactions are paid for and executed. A paymaster can sponsor a user’s gas fees, and wallets can pay fees in tokens such as USDC or DAI rather than holding ETH for transaction costs.
Transactions can also be batched—for example, combining a token approval with the execution of a swap—or an application can sponsor gas. These options can simplify actions such as one-click swaps and reduce the need for users to maintain an ETH balance solely to pay fees.[1][3]
By separating wallet logic from the limitations of a single-key account, account abstraction provides developers with ways to build recovery, governance, and code-execution features into wallets.
Ethereum.org describes the approach as creating opportunities for wallet and decentralized-application developers, while Coinbase identifies easier recovery, signless transactions, and team wallets among the possibilities for programmable non-custodial wallets.[1][2]