MetaMask shows popular tokens automatically on supported networks. But not every token is listed by default. If you received a transfer, are interacting with a DeFi contract, or want to track a bridged token, you may need to add it manually by contract address. Adding a custom token is mostly a UI step. It does not create or move tokens on chain. It simply tells your hot wallet how to display balances and symbols (and decimals).
I've added custom tokens while testing bridges and swaps; the process takes under a minute when you have the right contract address. And yes, mistakes happen — so verify the contract before you paste it.
| Token type | Typical networks | MetaMask support | How you add it |
|---|---|---|---|
| ERC-20 (fungible) | Ethereum, EVM-compatible L2s | Native support | Paste contract address (auto-fill symbol/decimals) |
| BEP-20 (BSC) | BNB Smart Chain | Native once BSC RPC is added | Paste BEP-20 contract on BSC network |
| Wrapped tokens (e.g., wADA on Ethereum) | EVM chains | Supported as ERC-20s | Add by contract for that chain |
| Native non‑EVM tokens (e.g., ADA, SOL) | Cardano, Solana | Not supported natively | Use bridge tokens or a chain-native wallet |
Three pieces of data matter: the token contract address, the token symbol, and the decimals. MetaMask will auto-fill symbol and decimals for verified contracts. If auto-fill fails you can enter them manually. Always confirm:
How do you verify the contract? Check the block explorer for the network. For Ethereum use Etherscan (see using-etherscan-with-metamask). For BSC use BscScan or the equivalent. And do not fetch addresses from random forum posts.
Step-by-step (typical flow):
Tip: If a token has many decimals (e.g., 18) and your balance looks truncated, check the decimals field on the explorer and correct it manually.
For extension setup help see: install-metamask-chrome-extension.
Mobile steps (in-app):
Mobile UI is optimized for quick adds. In my experience the auto-detect works reliably on common networks, but you may need to type decimals on lesser-known tokens.
If you use WalletConnect or an injected provider from a mobile dApp, the dApp sometimes suggests the token; confirm the contract before accepting.
See general mobile setup: metamask-mobile-ios-android.
Want to add BUSD or USDT? Important: both exist on multiple chains (Ethereum ERC-20, BSC BEP-20, Tron TRC-20 for USDT). So first pick the network.
Do not copy an address for the wrong network. That mistake is common and leads to an empty balance display even if you hold tokens on another chain.
MetaMask is a software wallet for EVM-compatible chains. It cannot track native Cardano ADA or Solana SOL. You can, however, add a wrapped representation of ADA that exists as an ERC-20 or BEP-20 token; those have contract addresses and can be added if you understand they're bridge representations. But if you hold native ADA, use a Cardano-native wallet. That answers the question "add ada contract metamask"—you can add wrapped tokens, not native ADA.
Common causes and fixes:
If you accidentally imported a scam token, you can hide it in MetaMask and then go to token-allowances-and-revoke to check approvals for related contracts.
If you need a protocol guide for safe interaction, see security-checklist and using-etherscan-with-metamask.
Q: Is it safe to add a custom token?
A: Adding a token is safe — it only changes what your wallet displays. The risk is interacting with malicious contracts afterward. Always verify first.
Q: How do I remove or hide a token?
A: Open the token in MetaMask and use the hide/remove option. Hiding only affects the UI, not the ledger.
Q: What happens if I paste the wrong contract address?
A: You may see no balance or the wrong token. Double-check on the explorer and remove the incorrect token. But interacting with a wrong contract can be dangerous — avoid approvals unless verified.
Add custom tokens if you actively trade, bridge, or track bridged assets across EVM-compatible chains. I believe active DeFi users and testers benefit most. But if you only hold native coins on non‑EVM chains (Cardano, Solana), consider a chain-native wallet instead.
Adding a custom token to MetaMask is a short, repeatable process once you know the contract address and the right network. Double-check every address, verify on a block explorer, and avoid approving unknown contracts. But if you want step-by-step visual guides for installation or mobile setup, visit the install and mobile setup pages: install-metamask-chrome-extension and metamask-mobile-ios-android.
If you're working with bridges or L2s, check bridges-cross-chain-security and add-polygon-to-metamask for network-specific tips.