ERC-4337: The Complete Guide to Ethereum Account Abstraction in 2026

February 20, 2026

Academy

  • ERC-4337 enables smart contract wallets on Ethereum without protocol changes, powering 40M+ accounts and 100M+ transactions since 2023

  • Six core components work together: UserOperations, Bundlers, EntryPoint, Paymasters, Senders, and Aggregators

  • Enterprises can leverage ERC-4337 for gasless transactions, social recovery, and programmable security policies

  • The standard is production-ready across Ethereum and all major L2 networks including Arbitrum, Optimism, Base, and Polygon

If you've ever struggled with explaining seed phrases to users or watched potential customers abandon your dApp because they didn't have ETH for gas, ERC-4337 is the solution you've been waiting for.

ERC-4337 is the foundational Ethereum standard that brings account abstraction to life, transforming how users interact with blockchain applications. Since launching on Ethereum mainnet in March 2023, it has enabled over 40 million smart accounts and processed more than 100 million transactions, marking a tenfold increase from the previous year.

This guide breaks down everything you need to know about ERC-4337: from the core technical components to practical implementation strategies for enterprise applications.

ERC-4337 is an Ethereum standard that enables account abstraction without requiring changes to Ethereum's core protocol. In simple terms, it allows you to use smart contract wallets with programmable verification logic instead of traditional Externally Owned Accounts (EOAs).

Traditional Ethereum accounts (EOAs) have significant limitations:

  • They require private key signatures for every transaction

  • Users must hold ETH to pay gas fees

  • Lost keys mean permanently lost funds

  • No native support for multi-signature security

ERC-4337 solves these problems by introducing a higher-layer infrastructure that runs on top of Ethereum. This means you can start using it today on Ethereum or any EVM-compatible chain without waiting for protocol upgrades.

The standard preserves Ethereum's decentralization and censorship resistance while enabling features that were previously unavailable:

  • Gasless transactions: Applications can sponsor gas fees for users

  • Social recovery: Recover accounts without seed phrases

  • Batch operations: Execute multiple transactions atomically

  • Flexible authentication: Use biometrics, passkeys, or multi-sig instead of single private keys

  • Programmable security: Implement spending limits, time locks, and custom policies

Understanding ERC-4337 requires grasping six fundamental components that work together to enable smart contract wallets.

1. UserOperation: The Transaction Intent Object

A UserOperation is a pseudo-transaction object that represents what you want to accomplish on-chain. Unlike traditional transactions signed by a single private key, UserOperations are more flexible and powerful.

// UserOperation structure
{
  sender: "0x..."           // Smart account address
  nonce: 0                   // Replay protection
  initCode: "0x..."         // Account creation code (if new)
  callData: "0x..."         // What to execute
  callGasLimit: 100000      // Gas for execution
  verificationGasLimit: 50000
  preVerificationGas: 21000
  maxFeePerGas: 1000000000
  maxPriorityFeePerGas: 1000000000
  paymasterAndData: "0x..." // Optional: gas sponsorship
  signature: "0x..."        // Validation signature(s)
}

What makes UserOperations different?

Aspect

Traditional TX

UserOperation

Mempool

Main Ethereum mempool

Separate alt-mempool

Authentication

ECDSA signature only

Programmable (multi-sig, passkeys, etc.)

Gas Payment

Sender pays in ETH

Flexible (sponsor, ERC-20 tokens)

Execution

Single call

Batch operations possible

2. Bundler: The Transaction Aggregator

A Bundler is the infrastructure layer that bridges UserOperations to the Ethereum network. Bundlers monitor the alternative mempool, collect multiple UserOperations, and submit them to the blockchain in a single transaction.

Bundlers are critical because all Ethereum transactions ultimately need to originate from an EOA. In the ERC-4337 ecosystem, bundlers are the only participants that need EOAs as users don't need to maintain one.

How Bundlers work:

  1. Monitor the alt-mempool for pending UserOperations

  2. Validate operations (simulate to check they'll succeed)

  3. Bundle multiple operations into one transaction

  4. Submit to the EntryPoint contract

  5. Get compensated from gas fees

3. EntryPoint: The Trust Anchor

The EntryPoint is a singleton smart contract deployed at the same address across all EVM networks. It serves as the central verification and execution hub for all ERC-4337 operations.

EntryPoint responsibilities:

  • Verification: Calls each smart account's validateUserOp function to check signatures and permissions

  • Gas checks: Ensures accounts have sufficient funds before execution

  • Execution: Processes the callData specified in each UserOperation

  • Payment: Handles gas reimbursement to bundlers

The EntryPoint contract is the trust anchor of the entire system. It's been extensively audited and is immutable once deployed.

4. Paymaster: Flexible Gas Policies

A Paymaster is a smart contract that handles gas payment policies, enabling innovative user experiences:

  • Sponsored transactions: Applications pay gas on behalf of users

  • Token payments: Users pay gas in USDC, USDT, or any ERC-20

  • Conditional sponsorship: Free transactions for NFT holders, first-time users, etc.

  • Subscription models: Prepaid gas packages

// Paymaster validation example
function validatePaymasterUserOp(
    UserOperation calldata userOp,
    bytes32 userOpHash,
    uint256 maxCost
) external returns (bytes memory context, uint256 validationData) {
    // Custom logic: verify user eligibility for sponsorship
    // Return success if sponsor will pay
}

5. Smart Contract Account (Sender)

The Sender is the smart contract wallet itself i.e. your user's account. Unlike EOAs, smart accounts can implement arbitrary verification and execution logic, making them ideal for self-custody solutions:

  • Multi-signature requirements

  • Time-based spending limits

  • Whitelisted destinations

  • Session keys for specific applications

  • Social recovery mechanisms

6. Aggregator: Signature Optimization

An Aggregator is an optional component that combines multiple signatures into a single aggregated signature. This is particularly useful for:

  • Reducing calldata costs on L2s

  • Enabling BLS signature aggregation

  • Optimizing batch operations

Understanding the differences helps you decide when to use ERC-4337:

Feature

EOA Wallet

ERC-4337 Smart Account

Account Type

Controlled by private key

Smart contract with logic

Gas Payment

Must hold ETH

Sponsor or pay in any token

Recovery

Seed phrase only

Social recovery, guardians

Security

Single signature

Multi-sig, biometrics, policies

Batching

One tx at a time

Atomic multi-operations

Upgradeability

Fixed

Can upgrade logic

Key Rotation

Create new account

Rotate keys, same address

Ready to build with ERC-4337? Here's a practical implementation roadmap.

Step 1: Choose Your Smart Account Implementation

Several battle-tested implementations are available:

  • Simple Account: Minimal reference implementation from ERC-4337

  • Modular Accounts (ERC-6900): Extensible with plugins

  • Kernel: Lightweight, gas-efficient from ZeroDev

  • Safe (4337 Module): Enterprise-grade from Safe ecosystem

Step 2: Connect to Bundler Infrastructure

You'll need access to a bundler to submit UserOperations. Options include:

  • Run your own bundler (open-source implementations available)

  • Use a bundler-as-a-service provider

  • Many Wallet-as-a-Service providers offer bundler APIs

Step 3: Implement UserOperation Creation

// Example: Creating a UserOperation
async function createUserOp(smartAccount, target, calldata) {
  const userOp = {
    sender: smartAccount.address,
    nonce: await smartAccount.getNonce(),
    initCode: "0x", // Empty if account exists
    callData: smartAccount.encodeExecute(target, 0, calldata),
    callGasLimit: 100000,
    verificationGasLimit: 100000,
    preVerificationGas: 50000,
    maxFeePerGas: await getGasPrice(),
    maxPriorityFeePerGas: await getPriorityFee(),
    paymasterAndData: "0x", // Add paymaster if sponsored
    signature: "0x" // Placeholder
  };
  
  // Sign the UserOperation
  userOp.signature = await smartAccount.signUserOp(userOp);
  
  return userOp;
}

Step 4: Set Up Paymaster (Optional)

For gasless transactions, integrate a Paymaster:

// Example: Adding paymaster data
const paymasterData = await paymaster.getPaymasterData(userOp);
userOp.paymasterAndData = paymasterData;

Paymasters are game-changers for user experience. Here's how to implement common patterns. For enterprise applications, consider using a dedicated gas fee management solution to streamline operations.

Sponsored Transactions

Applications deposit ETH to a paymaster contract and define sponsorship rules:

// Verifying Paymaster: Sponsor if user has valid API key
function validatePaymasterUserOp(...) {
    bytes32 apiKeyHash = keccak256(userOp.paymasterAndData[20:52]);
    require(validApiKeys[apiKeyHash], "Invalid API key");
    // Sponsor the transaction
}

ERC-20 Gas Payments

Allow users to pay gas in stablecoins:

// Token Paymaster: Accept USDC for gas
function validatePaymasterUserOp(...) {
    uint256 tokenAmount = calculateTokenCost(maxCost);
    IERC20(USDC).transferFrom(userOp.sender, address(this), tokenAmount);
    // Paymaster covers ETH gas
}

Building secure ERC-4337 implementations requires attention to several areas. Following wallet security best practices is essential for protecting user assets.

Smart Account Security

  • Audit your validateUserOp logic: This is the security boundary

  • Implement proper access controls: Who can execute what?

  • Use established patterns: Don't reinvent signature verification

  • Consider upgrade mechanisms: Timelock for logic changes

Bundler Trust Model

  • Bundlers see UserOperations before execution

  • Use private mempools for MEV-sensitive operations

  • Consider reputation systems for bundler selection

Paymaster Risks

  • Paymasters can become griefing vectors if not carefully designed

  • Implement rate limiting and user verification

  • Monitor for abuse patterns

EntryPoint Trust

  • The EntryPoint is a singleton—verify you're using the canonical deployment

  • Current version: EntryPoint v0.7 (check for updates)

ERC-4337 is fully supported across the Ethereum L2 ecosystem:

Network

Status

Notes

Ethereum Mainnet

Live

Full support since March 2023

Arbitrum

Live

Native bundler support

Optimism

Live

Strong adoption

Base

Live

Leading in transaction volume

Polygon

Live

zkEVM also supported

zkSync

Live

Native AA (different implementation)

Cross-Chain Considerations

  • Same address, different chains: Deploy accounts at consistent addresses

  • Chain-specific Paymasters: Gas tokens differ per network

  • Bundler availability: Verify bundler support before deployment

ERC-4337 unlocks powerful enterprise applications:

1. Institutional Custody

  • Multi-signature security: Require multiple approvers for large transactions

  • Role-based access: Different permissions for traders vs. administrators

  • Spending limits: Daily/weekly transaction caps

  • Whitelisting: Only allow transfers to approved addresses

2. Treasury Management

  • Batch operations: Execute multiple DeFi positions atomically

  • Automated policies: Time-locked releases, scheduled payments

  • Audit trails: Rich transaction metadata for compliance

3. User Onboarding

  • Gasless first experience: Sponsor new user transactions

  • Progressive security: Start simple, add multi-sig later

  • Social recovery: Enterprise-grade backup mechanisms

4. Gaming and Consumer Apps

  • Session keys: Authorize games to act on user's behalf (limited scope)

  • Batch minting: Multiple NFT operations in one transaction

  • Invisible blockchain: Users never see gas or signing prompts

The account abstraction ecosystem continues to evolve. EIP-7702, introduced with Ethereum's Pectra upgrade in May 2025, complements ERC-4337 by allowing existing EOAs to temporarily execute smart contract code.

Key differences:

Aspect

ERC-4337

EIP-7702

Account Type

New smart contract wallet

Existing EOA with temporary code

Deployment

Requires contract deployment

Uses existing address

Persistence

Permanent smart account

Per-transaction delegation

Infrastructure

Needs bundlers

Direct transaction submission

The two standards are complementary—EIP-7702 wallets can leverage existing ERC-4337 infrastructure including bundlers and paymasters.

ERC-4337 is production-ready and battle-tested. Here's your action plan:

  1. Explore the ecosystem: Review existing smart account implementations

  2. Test on testnets: Deploy accounts on Sepolia or Goerli

  3. Choose infrastructure: Select bundler and paymaster providers

  4. Start simple: Begin with basic account, add features incrementally

  5. Security first: Audit custom logic before mainnet deployment

For enterprise implementations requiring institutional-grade security, MPC technology can be combined with ERC-4337 smart accounts to provide the best of both worlds: programmable account features with distributed key management.

ERC-4337 represents a fundamental shift in how we think about blockchain accounts. By enabling smart contract wallets without protocol changes, it delivers the user experience improvements that blockchain needs for mainstream adoption.

Whether you're building a consumer application that needs gasless onboarding or an enterprise platform requiring sophisticated access controls, ERC-4337 provides the foundation. With over 40 million accounts deployed and growing, the ecosystem is mature and ready for production use.

The question isn't whether to adopt account abstraction, it's how quickly institutions can integrate it to stay competitive.

What is ERC-4337 in simple terms?

ERC-4337 is an Ethereum standard that lets users use smart contract wallets instead of traditional accounts. This enables features like gasless transactions, social recovery, and programmable security without changing Ethereum's core protocol.

How does ERC-4337 differ from traditional Ethereum accounts?

Traditional accounts (EOAs) require private keys and ETH for every transaction. ERC-4337 smart accounts can use any authentication method, batch transactions, have someone else pay gas, and recover access without seed phrases.

What are UserOperations in ERC-4337?

UserOperations are transaction intent objects that describe what you want to do. Unlike regular transactions, they're sent to a separate mempool, can include custom authentication, and support gas sponsorship through Paymasters.

How do Paymasters enable gasless transactions?

Paymasters are smart contracts that pay gas fees on behalf of users. Applications deposit ETH to a Paymaster and define rules for when to sponsor transactions, enabling completely gasless user experiences.

Is ERC-4337 compatible with all EVM chains?

Yes, ERC-4337 works on Ethereum and any EVM-compatible chain without requiring protocol changes. It's live on all major L2s including Arbitrum, Optimism, Base, and Polygon.

What are the security considerations for ERC-4337?

Key security areas include auditing your validateUserOp logic, implementing proper access controls, using established signature verification patterns, and carefully designing Paymaster policies to prevent abuse.

Can existing EOA users migrate to ERC-4337?

With EIP-7702 (Pectra upgrade, May 2025), EOA users can access smart account features without creating new accounts. For full ERC-4337 benefits, deploying a new smart account is recommended.

What's the difference between ERC-4337 and ERC-6900?

ERC-4337 is the core account abstraction standard. ERC-6900 is a complementary standard for modular smart accounts, defining how plugins and extensions can be added to ERC-4337 accounts.

查看更多

查看收件箱获得最新区块链洞察