What is ERC-20?
ERC-20 is the technical standard for creating fungible tokens on Ethereum. Because thousands of tokens such as USDT, USDC, LINK and UNI follow it, wallets and exchanges can support them all in the same way.
On this page 6
ERC-20 is the technical standard for creating fungible tokens on Ethereum. “Fungible” means every unit is interchangeable with every other unit, just as one $10 bill is as good as any other. Thousands of tokens, including USDT, USDC, LINK and UNI, follow the standard, which is why wallets, exchanges and DeFi apps can support all of them in the same way.
Where did the ERC-20 standard come from?
ERC stands for “Ethereum Request for Comments,” and 20 is the proposal’s number. Fabian Vogelsteller proposed the standard in November 2015, and it was later formalized as EIP-20. Before that, each token was written with its own conventions, and wallets had to build a custom integration for every one. ERC-20 became the backbone of the 2017 ICO boom, letting hundreds of projects launch tokens quickly.
How does an ERC-20 token work?
An ERC-20 token is really a smart contract on Ethereum that keeps its own ledger of which address holds how many tokens. The standard requires every token to expose a core set of functions:
- totalSupply: the total number of tokens.
- balanceOf: the token balance of a given address.
- transfer: send tokens to another address.
- approve and allowance: let a contract spend up to a set amount of your tokens, and check that limit.
- transferFrom: lets an approved contract move tokens out of your address.
Optional fields include the token’s name, symbol and number of decimals. Most tokens use 18 decimals, while USDT and USDC on Ethereum use 6.
The standard only defines the technical interface. It says nothing about supply, economics or value, so two ERC-20 tokens can carry very different risks. Our guide on reading tokenomics explains what to look at.
ERC-20 vs. BEP-20 vs. TRC-20
BEP-20 on BNB Chain and TRC-20 on TRON are closely modeled on ERC-20. The difference is the network: USDT exists as an ERC-20 contract on Ethereum and as a separate TRC-20 contract on TRON. When you withdraw from an exchange, the network you choose must match the network the receiving address supports. Picking the wrong one can mean lost funds or a long recovery process. Our guide on choosing the right network covers this in detail.
Token approvals and fake tokens
Before swapping an ERC-20 token on a DEX, you usually sign an “approve” transaction that lets the DEX contract spend your tokens. Unlimited approvals are convenient, but if that contract is ever compromised, your entire balance of the token is exposed. Revoking approvals you no longer need takes a separate on-chain transaction; simply disconnecting your wallet isn’t enough.
Anyone can create an ERC-20 token with any name and symbol. Identify tokens by their contract address, verified through official sources, rather than by ticker. Some contracts also include powers to pause transfers, blacklist addresses or mint new tokens.
Signature requests are another risk. Some tokens support a “permit” feature that grants an approval with a signature alone, without a separate transaction. Scammers exploit this by asking for a free-looking signature that actually hands over access to your tokens. Never sign a request you don’t fully understand.
Frequently asked questions
Why do I need ETH to send an ERC-20 token?
Every transaction on Ethereum pays its fee in ETH. If your wallet holds USDT but no ETH, you won’t be able to send it.
Is an ERC-20 address the same as an Ethereum address?
Yes. ERC-20 tokens live at the same “0x” Ethereum address that holds your ETH.
What happens if I send tokens to the token contract’s own address?
Most ERC-20 contracts have no function to send back tokens they receive, so the tokens are usually locked there for good.