MetaMask is the most widely-installed Ethereum wallet, with 30M+ monthly active users. Understanding what it does (and doesn't do) matters because most crypto users' first-ever transaction happens here.
What it is
A browser extension + mobile app that stores private keys locally (encrypted with user password) and provides a UI + RPC bridge for interacting with EVM chains.
Under the hood
- Keys stored in browser local storage, encrypted with scrypt-derived key from user password.
- Default RPC uses Infura (owned by Consensys, MetaMask's parent).
- Every wallet call goes through Infura by default: they see your IP and address queries.
- Users can (and should) point to custom RPC for privacy.
Snaps
Third-party extensions that add functionality: Cosmos support (via Cosmos Snap), Bitcoin support (via Bitcoin Snap), transaction insights (Blockaid, Wallet Guard). Snaps are sandboxed but still run privileged.
Built-in swap
MetaMask Swap is an aggregator (routes across DEXs). Takes 0.875% fee on top of DEX fees. Users often overpay vs going direct to 1inch or Uniswap.
Blockaid integration
Since 2023, MetaMask uses Blockaid to warn on suspicious transactions (drainer contracts, malicious signatures). Effective against known-bad but not perfect against novel attacks.
Weaknesses
- Default Infura RPC leaks privacy.
- Swap fee not competitive.
- Signature decoding decent but Rabby is better.
- Slow to add new chains (needs manual RPC).
What's worth doing
- Change default RPC to Flashbots Protect or your own node.
- Turn on Blockaid warnings.
- Use Rabby for high-value transactions, keep MetaMask for daily.
- Install a hardware wallet (Ledger, Trezor) as controller of your MetaMask address for any meaningful balance.
Koinlytics