The ERC-721 token standard kicked off the NFT craze. It was the first of its kind, and consequently, the most popular standard for creating these unique tokens. NFTs have a long history, but along with the ERC-721 token standard, they only truly came to the forefront with the CryptoKitties project.
Dapper Labs, the company behind CryptoKitties, introduced ERC-721 via an Ethereum Improvement Proposal (EIP) in 2017. CryptoKitties are a set of collectible, randomly generated kittens that can be individually traded, similar to Tamagotchis or Pokemon. Each CryptoKitty is 100% unique - they can’t be replicated, and they have a transaction history letting the public know exactly who has owned the kitty over its entire lifespan.
A limited edition CryptoKitty partnering with Operation Jairo to fund sea turtle conservation.
In addition to being completely, unique, here are some of the additional feature specifications of ERC-721:
- It allows you to transfer NFTs between accounts, allowing NFTs to be traded for other currencies.
- It allows you to identify the total supply of a set of NFTs on the network.
- It allows you to query for the owners of a specific asset.
The ERC-1155 token standard was developed by the team behind the Enjin project, which focuses on blockchain-based solutions for games. Enjin introduced the token standard in 2019, and it is a middle ground between the ERC-20 standard and the ERC-721 standard.
Enjin identified a number of challenges associated with the comparatively limited ERC-721 standard — in particular, the inability to conduct batch transfers.
With ERC-721 standard, if one were to transfer multiple NFTs, each NFT would require a single transaction — because each NFT is represented by a single smart contract. This results in exorbitantly high transaction costs when minting or trading individual NFTs. The ERC-1155 allows batch transfers — multiple assets on a single smart contract — that result in all tokens being transferred at once with, leading to a less congested network and consequently lower gas costs. For example, when a user wants to sell a thousand items in a game to another user, he or she can use the batch token transfer of ERC-1155 to send them all in one go 💸.
The ERC-1155 token standard could see much more prominent use than the ERC-721 token standard in the near future, thanks to its additional features. Both allow you to be able to mint new NFTs, but there are some key differences:
- ERC-1155 permits the creation of both semi-fungible tokens and non-fungible tokens, whereas ERC-721 permits only the latter.
- In ERC-1155, smart contracts are linked to multiple URIs and do not store additional metadata (such as file names). In comparison, ERC-721 only supports static metadata stored directly on the smart contract for each token ID, increasing deployment costs and limiting flexibility.
- ERC-1155’s smart contracts support an infinite number of tokens, whereas ERC-721 needs a new smart contract for each type of token.
- ERC-1155 also allows batch transfers of tokens, which can reduce transaction costs and times. With ERC-721, if you want to send multiple tokens, they happen individually.
Your Guide to ERC-1155: Comparing ERC-721 to ERC-1155
The arrival of new applications on Ethereum has led to development teams designing new kinds of token standards. In its early years, the ERC-20 token standard, which defines how a traditional token such as DAI or UNI functions, dominated the market.