Token Standards Explained — ERC20, ERC721, BEP20 & More

Try Tangem secure wallet →

Table of contents


Why token standards matter in MetaMask

Token standards are the rules smart contract developers follow so wallets and dApps can interact predictably with tokens. MetaMask is an EVM-compatible hot wallet by design, so it understands many Ethereum-derived standards out of the box. But what happens when you cross chains (BSC, Polygon, Avalanche) or switch token types (fungible vs NFTs)? That’s where knowing standards like ERC-20, ERC-721, ERC-1155 and BEP-20 pays off.

Short answer: the wallet can hold the same private keys across multiple networks, but it only recognizes tokens that follow standards appropriate to the chain you’re connected to. Want specifics? Read on.

Quick glossary: common token standards

(Yes, there are other variants. These are the practical ones you’ll meet interacting with MetaMask and DeFi.)

How MetaMask handles ERC-20, ERC-721 and BEP-20

ERC-20: MetaMask detects many ERC-20 transfers automatically. You’ll often see a new token appear after a transfer, but sometimes you must add it manually by contract address. When I moved small ERC-20 amounts on an Ethereum testnet, the extension suggested adding the token after the incoming TX.

ERC-721 & ERC-1155: NFTs usually show up in the NFT viewer in the extension or mobile app after mint/transfer (metadata must be accessible). But some collections use atypical metadata endpoints and won’t render — then you can still hold and send them; they just don’t show thumbnails.

BEP-20: Is MetaMask a BEP20 wallet? Short answer: yes, when you add the BSC (BEP-20) network via custom RPC. The contract standard is similar to ERC-20, so the same add-token workflow applies. See add-bsc-smart-chain-to-metamask for network setup steps.

Keywords in practice: people search "erc20 metamask", "bep20 metamask" and "erc721 metamask" — these are valid queries because MetaMask interacts with all three when configured correctly.

Hands-on testing: my methodology so you can reproduce it

I try to keep tests repeatable. Here’s the quick recipe I ran on both the browser extension and Android app:

  1. Create or import a test account (small funds only). See create-metamask-wallet or import-wallets-overview.
  2. Add test networks: Goerli (Ethereum testnet), Mumbai (Polygon testnet), and BSC testnet using add-networks-custom-rpc.
  3. Deploy a basic ERC-20 and ERC-721 using Remix with OpenZeppelin templates on Goerli (or use faucet-deployed test tokens). Mint a few tokens and send to the MetaMask address.
  4. Observe detection in extension and mobile. If not detected, add the token manually by contract address. See add-custom-tokens-to-metamask.
  5. Test approvals: approve a small allowance to a benign test contract, then revoke using the UI or a revocation tool. Compare behavior across networks.

You can replicate these steps (with test funds) to see how detection and approval flows behave across networks and form factors.

Step-by-step: add a custom token and add BSC/Polygon networks

How to add a token quickly (high level):

Mobile differences? Slight UX changes, but the flow is the same. See add-tokens-mobile. And if you want Polygon or Avalanche tokens, add those networks with add-polygon-to-metamask or add-avalanche-avax-to-metamask.

If you prefer a guided walkthrough, check add-custom-tokens-to-metamask.

Troubleshooting: tokens not showing, wrong network, and approvals

Why didn’t my token show up?

What about token approvals? Be careful. Unlimited allowances are common and dangerous. Always review the spender address and use revocation flows after testing. See token-approvals-and-revoke.

If you accidentally send a token on the wrong chain, see wrong-network-recovery — sometimes recovery is possible (bridged or central swap), but often it’s permanent.

Security notes: approvals, bridges, and recovery

Comparison: token standards at a glance

Standard Typical use Chains/common with MetaMask MetaMask support notes
ERC-20 Fungible tokens (DeFi, stablecoins) Ethereum, EVM-compatible chains Auto-detected often; add by contract if needed
ERC-721 NFTs (unique items) Ethereum, EVM-compatible chains NFT viewer; metadata dependent
ERC-1155 Game items, batch transfers Ethereum, EVM-compatible chains Batch support reduces gas for multiple items
BEP-20 Fungible tokens on BSC BSC (add via custom RPC) Same add-token flow once BSC is added
SPL Solana tokens Solana (not EVM) Not natively supported (see solana guide)

![placeholder: screenshot of MetaMask add token screen]

Who this guide is for (and who should look elsewhere)

Who this is for:

Who should look elsewhere:

FAQ

Q: Is MetaMask an ERC-20 wallet? (is metamask erc20 wallet) A: Yes — MetaMask natively supports ERC-20 tokens when you’re connected to the appropriate Ethereum network.

Q: Is MetaMask a BEP-20 wallet? (is metamask bep20 wallet) A: Yes — after adding the BSC (BEP-20) network via custom RPC, MetaMask can hold BEP-20 tokens the same way it holds ERC-20 tokens.

Q: How do I revoke token approvals? A: Use the revoke UI or a trusted revocation tool. See token-approvals-and-revoke for step-by-step instructions.

Q: What happens if I lose my phone? A: If you have your seed phrase backed up, restore to a new install. If not, recovery is unlikely. See lost-phone-reset-recovery and backup-and-recovery-seed-phrase.

Conclusion and next steps

Understanding token standards is practical, not academic. If you use MetaMask across multiple chains, knowing which token standard lives on which chain saves gas, avoids lost transfers, and reduces scam exposure. In my experience, adding networks and testing with tiny amounts teaches faster than reading alone. Try the replicated test steps above on testnets, then move to mainnet with care.

Next steps: if you want guided instructions, check add-custom-tokens-to-metamask, learn how to manage approvals at token-approvals-and-revoke, or set up multi-network access with add-networks-custom-rpc.

If you have a specific token that won’t show up, ask with the contract address (not private keys) and I’ll walk you through checking it on the correct chain.

But always remember: test with tiny amounts first.

Try Tangem secure wallet →