What is ERC-20? The Ethereum token standard explained
ERC-20 is the technical standard that most tokens on the Ethereum blockchain follow. It defines a common set of rules, such as how to check a balance and how to transfer tokens, so that every wallet, exchange and app can handle thousands of different tokens in the same way. Stablecoins such as USDC, and tokens such as LINK and UNI, are ERC-20 tokens.
What is ERC-20?
ERC-20 is a token standard for creating fungible tokens on Ethereum. “Fungible” means every unit is the same as every other unit, like euros: one USDC is worth exactly the same as any other USDC. ERC stands for Ethereum Request for Comments, the process through which the Ethereum community proposes standards, and 20 was the proposal’s number. So in full, ERC-20 means Ethereum Request for Comments 20.
The standard was proposed in 2015 and later formalised as one of the Ethereum improvement proposals (EIP-20). It made standardized token creation possible: instead of every project writing its own rules, developers implement the same interface, and their tokens work everywhere from day one. That interoperability is a big reason the Ethereum ecosystem grew so fast.
An ERC-20 token is not a coin with its own blockchain. It is a smart contract on Ethereum that keeps a list of addresses and balances. When you “own” 100 tokens, the contract records that your address holds 100.
How ERC-20 tokens work
ERC-20 tokens work because every token contract offers the same core functions. Wallets and exchanges call these functions to read balances and move tokens.
| Function | What it does |
|---|---|
| totalSupply | Returns the total supply: the number of tokens in existence |
| balanceOf | Returns how many tokens an address holds (function balanceOf is a “public view returns” call that costs nothing to read) |
| transfer | Sends tokens from your address to another |
| approve | Lets a third party account, such as an exchange contract, spend up to a set amount of your tokens |
| allowance | Shows how much a third party is still allowed to spend |
| transferFrom | Lets that approved party move tokens on your behalf |
Most tokens also publish a name, a symbol and the number of decimal points, often 18, so wallets can show balances correctly. Every transfer creates an on-chain notification, called an event, that apps use to track activity. Many tokens add additional functionality on top, such as minting new tokens or pausing transfers, which is worth checking before you buy.
Because these are smart contracts on the Ethereum network, every transaction costs a gas fee paid in ETH, not in the token itself. Read more about smart contracts.
ERC-20 vs other token standards
Not all tokens are ERC-20. Ethereum has other standards for other jobs:
- ERC-721 is for non fungible tokens (NFTs), where each token is unique. See NFT.
- ERC-1155 handles fungible and non-fungible tokens in one contract, popular in games.
Other blockchains copied the idea. BNB Smart Chain uses BEP-20, which is almost identical, and Tron uses TRC-20. Networks that run Ethereum’s software, such as many layer 2 networks, use ERC-20 directly.
What ERC-20 tokens are used for in the Ethereum ecosystem
ERC-20 tokens can represent virtually anything that is interchangeable. The main uses are:
- Stablecoins such as USDC, and in the past Binance USD, which track the US dollar.
- Governance tokens that give holders a vote in decentralized applications, such as UNI for Uniswap.
- Utility tokens used to pay for a service, such as LINK for Chainlink’s data services.
- Wrapped assets. WETH is ETH wrapped as an ERC-20 token, so it works like other tokens in decentralized finance.
Because developers can launch their own tokens without building their own blockchain, creating fungible tokens is quick and cheap. That is why there are so many Ethereum tokens, and why many of them have little or no value.
What is the ERC-20 network and an ERC-20 address?
When an exchange says “ERC-20 network”, it means the Ethereum main network. An ERC-20 address is simply an Ethereum address: a string of 42 characters starting with 0x. The same address holds your ETH and all your ERC-20 tokens.
This matters when you withdraw. Many tokens, such as USDT and USDC, exist on several chains. If you send USDC on Ethereum to an address on a different network, or to a wallet that doesn’t support it, the tokens may be stuck or lost.
- Check the receiving side. Find out which network the receiving wallet or exchange supports for that token.
- Pick the same network. On the withdrawal page, choose “Ethereum (ERC-20)” only if the receiver supports it.
- Copy the address carefully. Paste it, then check the first and last characters.
- Send a test amount. Start small, confirm it arrives, then send the rest.
An example with euros
Say you hold €500 of USDC on a MiCA-licensed exchange and want to move it to your own wallet. On the Ethereum (ERC-20) network, the exchange charges a withdrawal fee that is often higher than on cheaper networks, because Ethereum gas is expensive. Once the USDC arrives, you need a little ETH in the same wallet to move it again. Without ETH, your €500 of USDC sits there until you add some. And because €500 is below €1,000, the travel rule’s extra ownership check for self-hosted wallets doesn’t apply, though the exchange still records the transfer.
Why ERC-20 matters to you
ERC-20 matters to you because a large share of the digital assets you can buy, including most stablecoins and decentralized finance tokens, are ERC-20 tokens. Knowing what the standard does helps you avoid the most common costly mistakes.
There is also an EU angle. Under MiCA, a stablecoin that tracks one currency counts as an e-money token, and its issuer must be authorised. Licensed EU platforms can only offer stablecoins that meet these rules, which is why some exchanges restrict certain stablecoins for EU users. ERC-20 tokens are taxed like any other crypto: in Germany, swapping one token for another usually counts as a sale, and in the Netherlands they count towards box 3 wealth.
ERC-20 risks and mistakes to avoid
The ERC-20 standard is simple, which is its strength and its weakness:
- Fake tokens. Anyone can create an ERC-20 token with the same name and symbol as a real one. Check the official contract address before you buy or receive.
- Unlimited approvals. Some apps ask to spend an unlimited amount of your tokens. A malicious or hacked contract can then drain them. Approve only what you need, and revoke old approvals.
- Sending to a contract. Tokens sent to a token’s own contract address are usually lost forever.
- Wrong network. Withdrawing on the wrong network is one of the most common ways people lose stablecoins.
- No gas. You can’t move ERC-20 tokens without ETH for fees.
The bottom line
ERC-20 is the common language that lets Ethereum tokens work in any wallet or exchange. It powers stablecoins, DeFi and thousands of projects, good and bad. Before you send or buy an ERC-20 token, check the network, the contract address and that you have ETH for gas. More background under Ethereum and stablecoin.
Related terms
Questions people ask
Is ERC-20 the same as ETH?
No. ETH is Ethereum's own coin, used to pay network fees. ERC-20 tokens are separate tokens that live on Ethereum, such as USDC or LINK. You need some ETH to send them.
Is USDT an ERC-20 token?
USDT exists on several blockchains, including Ethereum, where it is an ERC-20 token. The same applies to USDC. When you withdraw, choose the network carefully, because tokens on different chains are not interchangeable.
Is Solana an ERC-20 token?
No. Solana is its own blockchain with its own coin, SOL, and its own token standard. ERC-20 only applies to Ethereum and networks that copy Ethereum's design.
How to get an ERC-20 wallet address?
Any Ethereum wallet gives you an address starting with 0x that can receive ERC-20 tokens. On an exchange, open the deposit page, choose the token and select the Ethereum (ERC-20) network to see your address.
How to create an ERC-20 token?
Developers write a smart contract that follows the ERC-20 rules and deploy it to Ethereum, which takes little code and a network fee. Offering the token to the public in the EU usually requires a MiCA white paper.