What Are Token Standards? An Overview
Fungible or non-fungible? Token standards are the set of rules that run crypto tokens on the blockchain. From ERC-20 to ERC-721, learn what they are.
Key Takeaways:
- Many blockchain smart contracts currently use Ethereum, and the most common token standards are ERC-20, ERC-721, ERC-777, and ERC-1155.
- Ethereum Request for Comment (ERC) is essentially a set of technical documents containing guidelines on developing a smart contract.
- The ERC-20 token standard is a blueprint for creating fungible tokens on the Ethereum network.
- In contrast with ERC-20, which is a fungible token standard, ERC-721 is a token standard for non-fungible tokens (NFTs).
- ERC-777 aims to address the limitations of ERC-20. This token standard makes it more efficient for smart contracts to send and receive tokens through a mechanism known as ‘Hooks’.
- The ERC-1155 token standard focuses on incorporating the best aspects of its predecessors for creating fungibility-independent and gas-efficient token contracts.
What Are Token Standards?
Token standards are the set of rules, conditions, and functions that dictate how a crypto token works. Before delving into token standards, it is helpful to understand the mechanisms of a smart contract standard. Fundamentally, smart contract standards are rules that a smart contract must comply with in order to function as intended on the underlying blockchain network.
These standards are application-level specifications, such as token standards, name registries, and library-package formats. With this set of smart contract standards and clearly defined parameters, anyone with sufficient knowledge may create their own ERC token. In short, these standards enable smart contracts to perform their basic functions.
Token standards are a subset of smart contract standards. For blockchains that support smart contracts, token standards represent a guide for the creation, issuance, and deployment of new tokens on them.
Most blockchain smart contracts currently use Ethereum, and the most common token standards are ERC-20, ERC-721, ERC-777, and ERC-1155.
Common Token Standards on Ethereum
Ethereum Request for Comment (ERC) is essentially a set of technical documents containing guidelines on developing a smart contract. They define a specific set of functions for each token type and facilitate the interaction between applications and smart contracts.
Anyone can create an ERC token. However, it requires going through the process of an Ethereum Improvement Proposal (EIP), which is a document with the proposed features and processes for the Ethereum blockchain network.
Once a developer submits their proposal, it is assessed and scrutinised by Ethereum’s core developers. If the community deems it an important addition to the blockchain ecosystem, the proposal is accepted, finalised, and implemented.
As soon as this process is complete, the initial document becomes an ERC standard that other developers can use to create their own tokens.
Below is a summary of the most common ERC token standards:
ERC-20 Token Standard
The ERC-20 token standard is a blueprint for creating fungible tokens on the Ethereum network.
Fungible means that each token (or a fraction of a token) is equivalent to, and indistinguishable from, another token. For example, fiat currency is fungible. Alice’s US$1 is equal to Bob’s US$1, and both of them can swap their US dollar because it has the same value. Similarly, 1 ETH has the same value as any other ETH.
Like other digital assets, ERC-20 tokens are most commonly developed by organisations and tech-focused companies. These tokens allow the entity to customise their utility, such as granting voting rights or rewarding mechanisms.
Despite the versatility of the token standard, each ERC-20 token has a standardised core functionality. In other words, all tokens created using ERC-20 are interoperable with each other and compatible services like MyEtherWallet or MetaMask.
From a technical standpoint, there are six primary functions an ERC-20 token must implement:
- TotalSupply — Used to derive the total token supply of a specific ERC-20 token.
- BalanceOf — Used to derive the token balance in an Ethereum wallet.
- Transfer — Allows the user to transfer the ownership of a token to another.
- TransferFrom — Works similarly to the Transfer function, with the added advantage of allowing contracts to transfer tokens on a user’s behalf.
- Approve — Used to set a limit on the number of tokens a smart contract can withdraw.
- Allowance — Grants external addresses the access and permit to spend the tokens from a certain balance.
On top of the compulsory functions above, there are other optional functions that can improve the usability of an ERC-20 token, including Token Name, Ticker Symbol (e.g., ETH), and Divisibility (how many decimal places the token can support).
Putting the functions above together forms an ERC-20 contract. This contract then becomes the foundation of different cryptocurrencies, be it a stablecoin, a security token, or a utility token. Some examples of ERC-20 tokens are Chainlink (LINK), Dai (DAI), and Basic Attention Token (BAT).
ERC-721 Token Standard
In contrast with ERC-20, a fungible token standard, ERC-721 is a token standard for non-fungible tokens (NFTs), which are a special type of cryptographic token not mutually interchangeable by their individual specification. This means that one token cannot be exchanged for another because of its unique specifications. Therefore, NFTs are utilised to represent digital collectibles, game items, digital art, event tickets, domain names, and ownership records for physical assets.
An example of a project built on the ERC-721 standard is ‘CryptoKitties’, a game developed in 2017 on the Ethereum blockchain that allows users to buy, sell, and breed digital cats. Currently, the markets to buy or sell NFT digital artworks include OpenSea and Rarible.
Check out Crypto.com’s NFT Gallery for our top collections from leading creators and brands.
ERC-777 Token Standard
ERC-777 aims to address the limitations of ERC-20. This token standard makes it more efficient for smart contracts to send and receive tokens through a mechanism known as ‘Hooks’, a function that combines what would have been two messages — sending tokens and notifying a contract — into one. Furthermore, the ERC-777 standard also introduces the additional function to reject transactions from a blacklisted address.
Another feature of the ERC-777 token standard is that it remains backwards compatible with ERC-20, rather than rendering it obsolete. In other words, tokens built on the ERC-20 standard can freely interact with tokens built on ERC-777 because both of these standards use the same underlying functions.
ERC-1155 Token Standard
The ERC-1155 token standard focuses on incorporating the best aspects of its predecessors for creating fungibility-independent and gas-efficient token contracts. In layman’s terms, it is a standard for contracts that manages multiple token types, as described by its developer, Enjin: “a single smart contract that can govern an infinite number of tokens.”
The team at Enjin developed this token standard to address the shortcomings associated with ERC-721, specifically the lack of flexibility for batch transfers. To illustrate, in order to send multiple NFTs on ERC-721, a user is required to perform multiple transactions. As a result, the number of transactions floods the network, potentially incurring high transaction costs.
ERC-1155 directly addresses this by supporting batch transfers, which allow for the bundling of multiple assets in one smart contract. This significantly reduces the potential for a transfer to cause network congestion while lowering transaction costs.
Token Standards for Other Blockchains
The types of smart contract protocols currently in use vary widely — essentially, everyone has their own rulebook. Apart from Ethereum, there are several other blockchain projects that focus on the creation of smart contracts. In this section, we introduce some popular projects with their corresponding token standards.
Token Standards for EOS
The EOSIO blockchain platform implements the core features of blockchain technology, including consensus, fee schedules, account creation and modification, token economics, block producer registration, voting, and multisig.
Blockchain software company Block.one developed and maintains the EOSIO open-source platform, which includes the system contracts needed for the EOSIO-based blockchain. These include eosio.bios, eosio.system, eosio.msig, eosio.token, and eosio.wrap.
EOS uses the eosio.token smart contract, which defines the structure and actions that allow users to create, issue, and manage tokens on the EOSIO blockchain. The core token on the EOSIO mainnet, EOS, is also issued under the account eosio.token using this smart contract.
Token Standards for NEO
NEO is another project that focuses on building the infrastructure to support smart contracts. NEO Enhancement Proposals (NEPs) define the standards for the Neo platform, including core protocol specifications, client APIs, and contract standards.
Token standards on Neo include:
- NEP-5 — Provides systems with a generalised interaction mechanism for tokenised smart contracts.
- NEP-11 — The standard for creating NFT contracts.
- NEP-17 — The token standard that specifies a general interaction mechanism for tokenising smart contracts.
Token Standards for Tezos
Tezos Interoperability Proposal (TZIP) is the design document that allows the Tezos community to define a feature, create interoperability standards, or update its processes or environment. It complements Tezos’s formal on-chain governance process. Typically, a TZIP document contains the technical specifications, parameters of how updated features can be implemented, and an explanation for improvement to the overall network.
Token standards on Tezos include:
- TZIP-7 — Implements token transfer operations and approvals for spending tokens from other accounts. This resembles an ERC-20 in the Tezos network.
- TZIP-12 — Created as a multi-asset interface to prevent Tezos developers from being dependent on standards specific to token types. Specifically, TZIP-12 proposes a unified token contract interface, which supports a wider range of token types, such as fungible and non-fungible tokens like ERC-1155.
Further Reading
For a better understanding of the applications of these token standards, read What Are NFTs? Non-Fungible Tokens Explained and Crypto Tokens vs Coins — What’s the Difference?
Due Diligence and Do Your Own Research
All examples listed in this article are for informational purposes only. You should not construe any such information or other material as legal, tax, investment, financial, or other advice. Nothing contained herein shall constitute a solicitation, recommendation, endorsement, or offer by Crypto.com to invest, buy, or sell any digital assets. Returns on the buying and selling of digital assets may be subject to tax, including capital gains tax and/or income tax, in your jurisdiction or the jurisdictions in which you are a resident for tax purposes.
Past performance is not a guarantee or predictor of future performance. The value of digital assets can increase or decrease, and you could lose all or a substantial amount of your purchase price. When assessing a digital asset, it’s essential for you to do your own research and due diligence to make the best possible judgement, as any purchases shall be your sole responsibility.
Share with Friends
Ready to start your crypto journey?
Get your step-by-step guide to setting up
an account with Crypto.com
By clicking the Submit button you acknowledge having read the Privacy Notice of Crypto.com where we explain how we use and protect your personal data.