# Choosing a Smart Account

> Learn about different smart account implementations to use with Wallet APIs

> For the complete documentation index, see [llms.txt](/docs/llms.txt).

## Why smart wallets?

Smart wallets are the key to unlocking the best online user experience -- enabling features that have never been possible with traditional EOAs (externally-owned-accounts) like session keys, granular permissions, different authentication methods like email and passkeys, and much more.

Wallet APIs offers a clean SDK to provide your users with top-tier smart wallet features. The most powerful, most natively-supported account is Modular Account v2.

Modular Account v2 is the most fully-featured and efficient smart account available, allowing for limitless modular expansion. The account is secured by extensive [audits](https://github.com/alchemyplatform/modular-account/tree/develop/audits) as well as a [bug bounty on Cantina.](https://cantina.xyz/bounties/246de4d3-e138-4340-bdfc-fc4c95951491)

Modular Account v2 strives to be maximally gas-efficient, being the **only** account where runtime deployment breaks the **sub-100k gas barrier**, which is cheaper than *one Uniswap swap*. For more details and benchmarks, check out the [Modular Account v2 overview](/docs/wallets/smart-contracts/modular-account-v2/overview).

## Modular Account v2

Modular Account v2 is a zero-compromise account designed from the ground up for maximal security, modularity, and gas-efficiency. It abides by [ERC-6900](https://eips.ethereum.org/EIPS/eip-6900), meaning if you have a use case, there's probably a module for it -- and if there isn't, the straightforward module interface ensures building new innovative features is straightforward.

By default, MAv2 includes a fallback validation. This allows a zero-customization setup where the account's owner (which, technically, could be another account!) has full control over the account. The fallback validation signer, or the account's owner, can be swapped or the entire validation can be disabled entirely in favor of one or more other validations.

Validations are themselves modules that define an authorization scheme with granularly managed control over the account. You could use a [WebAuthn validation](https://github.com/alchemyplatform/modular-account/blob/develop/src/modules/validation/WebAuthnValidationModule.sol) to support passkeys or biometrics for example.

Modular Account v2 also supports [EIP-7702](https://github.com/ethereum/EIPs/blob/master/EIPS/eip-7702.md) out of the box, allowing EOAs to turn into maximally expandable smart accounts.

## Light Account

While Modular Account v2 is the recommended choice, Wallet APIs also supports other audited and gas-optimized smart account implementations.

[Light Account](/docs/wallets/smart-contracts/other-accounts/light-account) is a minimalist smart account optimized for **low gas costs**. It is based on **Ethereum Foundation's SimpleAccount** but adds key improvements like:

* Ownership transfers
* ERC-1271 signature validation

While **Light Account is fully audited**, it does **not** support **advanced modular features like modules or session keys**.

## Bring your own smart account

If you have your own smart account, you can integrate it with Wallet APIs.\
See our guide on [using a custom smart account](/docs/wallets/third-party/smart-contracts).