Coins: 14,047
Exchanges: 1,073
Market Cap: $2.447T 4.6%
24h Vol: $90.221B
Gas: 6 GWEI
Go Ad-free
Guides
TABLE OF CONTENTS

What is Ethereum’s ERC-1155 Token Standard?

4.9 | by Joel Agbo

What Is the ERC-1155 Multi Token Standard?

The ERC-1155 multi token standard lets developers manage multiple fungible and non-fungible tokens and token standards under one contract. 


Key Takeaways

  • ERC token standards are defined features of tokens that run on the Ethereum blockchain.

  • ERC-20, ERC-721, and ERC-1155 are some of the most popular ERC token standards, along with ERC-777. ERC-20 and ERC-777 define the operation standard for fungible tokens while ERC-721 is popular amongst NFT creators and collectors.

  • ERC-1155 pieces together features of these other standards to develop a flexible token standard that can manage multiple tokens and token standards under one contract.


What is erc1155

Most transactions on the blockchain involve token transfers. Tokens are a representation of value on a decentralized network, and can confer varying rights, such as governance and other utilities on a decentralized network. Tokens can be either native to their blockchain (coins) or smart contract tokens.

Native tokens are inherent and their features are defined alongside the blockchain network on which they run. However, the features of smart contract tokens are defined by set guidelines and specifications to ensure they function correctly. Smart contract tokens on the Ethereum blockchain are subject to the ERC token standard. 

Now, let’s take a look at what ERC token standards are.

What Are ERC Token Standards?

ERC (Ethereum Request for Comment) token standards are smart contract standards for tokens running on the Ethereum blockchain. They define the core behavior of tokens issued on the network. Functionalities defined in ERC token standards include fungibility, spend behavior, and possible asset security algorithms. 

ERC standards let developers specify how their tokens communicate with the Ethereum network and with the users as well. Each standard has some predefined logic (like fungibility) for tokens leveraging them and gives developers the freedom to dictate other attributes before the contracts are deployed. ERC standards and their naming conventions are also often adapted by other blockchains, such as BNB Chain's BEP token standard, and Tron's TRC token standard

Some popular ERC standards are ERC-20, ERC-721, and ERC-1155.

ERC-20 Token Standards

The ERC-20 standard is used to create fungible tokens. This means each token created under the ERC-20 standard is equal to the other and can be used together and interchangeably. They share the same identity and can be sent in bulk. 

For instance, an ERC-20 token contract to mint a million tokens basically issues a million of the same token. Each token can be spent as wished and in the same way. Every token in the contract has equal value; the same metadata, and can be used for the same purpose. ERC-20 tokens can also be broken into pieces and sent in decimals, where creators can specify the decimal limits.

ERC-777 Token Standards

The ERC-777 standard is similar to ERC-20; the only difference is some improvements in token management, like burning and minting, and ERC-777 tokens cannot be split into decimals. ERC-777 introduces the receive hook, allowing contracts to react when they receive a token.

ERC-721 Token Standards

ERC-721 standards are popular amongst NFT creators and NFT collectors. ERC-721 tokens are non-fungible. Each token in a mint is unique and can be ‘decorated’ differently, where ERC-721 token creators define the attributes of each token, which are fixed. Despite being minted under the same contract, each token cannot be spent in place of the other and they cannot be split into pieces in their original form. NFT games also adopt the ERC-721 token standard for unique in-game items.

Now, let’s look at the ERC-1155 token standard, which is a fusion of ERC-20, ERC-721 and ERC-777.

What Is the ERC-1155 Standard?

One of the creators of the ERC-1155 standard was the Enjin team, who were looking to develop a ‘one fits all’ design for smart contract tokens. Its provisions are defined under the EIP-1155 authored by members of the Enjin, Horizon, and Turing teams. ERC-1155 is a hybrid smart contract standard.

ERC-1155 standard allows some flexibility for smart contract tokens and smart contract developers. It allows developers to issue different smart contract tokens and token types under the same contract, with the goal of striking out the need to write a new contract each time a developer wishes to create a new token. This design was drawn out with contemporary blockchain games and applications in view. In situations where gamefi developers wish to mint several non-fungible and fungible game items, writing new contracts for each type and item could be cumbersome. With ERC-1155, the developer can deploy as many tokens as required under the same contract.

ERC-1155 tokens can bear features of any of the fungible and non-fungible token standards. Developers can mint both fungible and non-fungible tokens under the ERC-1155 contract. The ERC-1155 standard also supports semi-fungible tokens (SFTs). SFTs can be interconverted between the fungible and non-fungible standards, where SFTs can be traded as fungible tokens while maintaining unique properties.  

Resource-Efficient Token Management

The Ethereum blockchain manages tons of smart contracts, some of which are related to the same project. This could be multi-token projects (like projects operating separate governance and utility tokens), gamefi projects issuing fungible and non-fungible tokens, and other similar cases. By design, ERC-1155 saves resources for the network by packaging these tokens under the same contract, removing the need to write a new contract for each token.

ERC-1155 enables batch transfer as well. This means that users can send multiple tokens under the same contract at once. Since the same contract is called for the transaction, the gas fee paid is less, relative to sending each token separately. The batch balance feature can also save ample time in cases where users wish to obtain the records of balances for each token under the same contract.

Utility of the ERC-1155 Token Standard

Some of the use cases already in place for the ERC-1155 token standard include:

Open Edition NFTs

Open edition NFTs have no set limits on the number of art pieces (or digital signatures for multimedia) that can be minted by the collectors. Collectors that participate in the minting event can mint as many NFTs as they can afford.

In most cases, the only set limit is the minting period. Throughout the duration of the NFT minting event (say 24 hours from the start of minting), any number of NFTs can be minted. When this set time elapses; the minting event ends and the number of NFTs minted by the collectors becomes the total supply for the collection. The rarity of the collection and its art depends on the number of collectors who participated in the event and the amount of art they minted.

Open edition NFT projects leveraging the ERC-1155 standard can map the artworks minted by the collectors to one contract. ERC-1155 smart contract standard also allows the batch transfer of NFTs and gives the creator the freedom of adding a fungible token to their NFT project under the same contract.

Dynamic NFTs

Through ERC-1155, NFT creators can upgrade or revamp their NFTs after the initial mint. One application of this is dynamic NFTs, which retain their unique identifiers, while their metadata and appearance change according to smart contracts in response to outside data. Smart contracts handles the metadata-changing process, and they are designed to obtain information from oracles and run an automatic change in response to external data.

Music NFTs

Musicians can use the ERC-1155 token standards to distribute their original songs, where multiple copies of the music NFT can be minted and held by multiple people. Musicians can set the number of music NFTs that can be minted, or they can combine the mechanics of open edition NFTs, where collectors can mint as many copies as they wish during a certain period. 

Gaming

NFTs are prevalent in decentralized games; in-game items like weapons and skins can be represented as NFTs with each gamer retaining full custody of their items. The ERC-721 smart contract token standard was first used in the CryptoKitties games and has since this time dominated the NFT space, but they could be limited in functionality due to their rigidity. Likewise, the utility of ERC-20 tokens in games are limited largely to functioning as in-game currency. With only these two token standards, this meant ERC-20 contracts for in-game currency and many ERC-721 contracts for each piece of gaming equipment. 

With ERC-1155, developers can create fungible tokens and multiple ERC-721 tokens under one contract. Not only does this save developers’ resources, it also allows efficient use of fungible and non-fungible tokens within the same smart contract. Gamers can also trade their NFTs in batches, as ERC-1155 supports the batched transfer of assets. 

ERC-1155 vs. ERC-20

The ERC-20 smart contract standard was one of the earliest smart contract token standards on the Ethereum blockchain and arguably the most popular ERC standard. Majority of existing and new projects adopt this standard for issuing and distributing tokens. ERC-20 tokens are fungible, a similar feature it shares with the ERC-777 standard.

In comparison, ERC-1155 supports the creation and management of fungible and non-fungible tokens. However, as mentioned above, the ERC-20 standard is designed for fungible tokens only. Each ERC-20 token lives in a separate contract as the standard doesn’t support multiple contracts. Batched transfers are also not possible with the ERC-20 standard; only tokens with the same ID can be transferred at a time. Meanwhile, ERC-1155 supports the batched transfer of assets, saving cost and time relative to the number of unique assets transferred per batch.

ERC-20 token transactions are final. There are no algorithms to run authentications on transfers and once the transfer request is executed, the action cannot be reversed. This is a bit different for the ERC-1155 standard tokens, thanks to the transfer safety rules. The ERC-1155 safe transfer rule delineates conditions in which a token transfer reverts. The smart contract verifies that the transaction is in agreement with each of the rules to avoid exploitations.

ERC-20 is a relatively simple smart contract standard that defines (fungible) asset issuance and transfer without additional utilities. ERC-1155 improves on the fungible token creation and management system of the ERC-20 standard and adds extra utilities while trimming the complexities of building on the blockchain.

 

ERC-20 standard

ERC-1155 standard

Asset type support

Supports fungible tokens only.

Supports fungible, non-fungible, and semi-fungible tokens.

Batch transfer

Only tokens with the same ID can be transferred at once.

Multiple tokens and token types under the same contract can be transferred at once.

Transfer security

No transfer safety rules and transactions cannot be reverted.

Transfers must conform to the transfer safety rules and can be reverted.

Atomic swap

Not inherently possible for ERC-20 tokens.

Can be developed for ERC-1155 tokens as there is no need to approve individual tokens separately.

 

ERC-1155 vs. ERC-721

The ERC-721 standard lets you create unique, non-fungible tokens on the Ethereum blockchain. These tokens cannot be used interchangeably with each other, each token has its own defined characteristics, and can only be sent one at a time. The ERC-1155 standard is also used to create non-fungible tokens but differs from ERC-721 in certain ways.

While ERC-721 only supports the creation of non-fungible tokens, the ERC-1155 standard supports NFTs and fungible tokens. It combines the abilities of ERC-20 and ERC-721 in this case. In addition to offering support for both token types, they can be minted and managed under the same contract. The developer can create tokens to define items in their game and also a native fungible token for the game’s ecosystem. Players can find both token types in the same contract. The ERC-721 standard doesn’t have this feature at the time of writing. Therefore, for every token, the developer needs to write a new contract and users have to manage their assets separately.

In addition, the ERC-1155 standard does not store additional metadata and links smart contracts to multiple URIs, this makes for more flexibility and reduces the cost of development. For the ERC-721 standard, the metadata must be stored in the smart contract, which could consume more resources and reduce flexibility. ERC-721 standard’s support for static metadata alone also means that it could be unable to support developments in the NFT space like dynamic NFTs.

ERC-1155 standard’s batch transfer feature also means that these multiple tokens in the contract can be sent at a time (in a single transfer) and a single fee is paid for the transaction. While batch transfers might attract higher fees, they could still save a significant amount in gas fees and time compared to performing the transactions one after the other. However, batch transactions aren't available for ERC-721 tokens, requiring each token is sent separately, one at a time.

The transfer safety rule in the ERC-1155 standard offers an extra layer of verification for transfer, protecting users from accidental or erroneous transfers. It also allows reversion in case. This feature as already explained is unique to the ERC-1155 standard and absent in ERC-721 and ERC-20 standard. ERC-1155 could score a significant point over the ERC-721 standard in terms of safety, thanks to this feature.

ERC-1155 standard removes the need to approve individual tokens separately and makes it possible to develop atomic swaps for ERC-1155 tokens. This is not possible with the ERC-721 standard and ERC-721 tokens.

 

ERC-1155 standard

ERC-721 standard

Flexibility

ERC-1155 metadata can be modified through smart contracts that obtain information from oracles and run an automatic change to the NFT based on this data. 

ERC-721 smart contracts only support static metadata stored in the contract.

Asset type support

Supports fungible tokens, non-fungible tokens, and semi-fungible tokens, under the same contract.

Supports fungible tokens. Separate smart contracts must be written for each token.

Batch transfer

Different tokens in the same smart contract can be sent in the same batch.

Not available for ERC-721 tokens. Each token must be transferred separately.

Asset Transfer Safety

The transfer safety rule validates each transfer to prevent exploitations. Transactions can be reverted in case of exploits.

Not available for ERC-721 tokens.

 

Final Thoughts

The ERC-1155 standard offers a number of token-level improvements for tokens running on the Ethereum blockchain or any other network that employs similar technologies. We have discussed how this works and how it compares to other standards. While the flexible features enjoy the limelight, the additional security features could benefit the everyday blockchain enthusiast even more. A handful of projects are already utilizing the technologies it presents, predominantly NFT projects. Also, as the crypto space develops, projects in other sectors could explore even more applications for the ERC-1155 token standard. 

As always, note that this article is only for educational purposes and no information here should be taken as financial advice. 

 

CoinGecko's Content Editorial Guidelines
CoinGecko’s content aims to demystify the crypto industry. While certain posts you see may be sponsored, we strive to uphold the highest standards of editorial quality and integrity, and do not publish any content that has not been vetted by our editors.
Learn more
Tell us how much you like this article!
Vote count: 7
Joel Agbo
Joel Agbo

Joel is deeply interested in the technologies behind cryptocurrencies and blockchain networks. In his over 7 years of involvement in the space, he helps startups build a stronger internet presence through written content. Follow the author on Twitter @agboifesinachi

More Articles

coingecko
Continue in app
Track prices in real-time
Open App
Select Currency
Suggested Currencies
USD
US Dollar
IDR
Indonesian Rupiah
TWD
New Taiwan Dollar
EUR
Euro
KRW
South Korean Won
JPY
Japanese Yen
RUB
Russian Ruble
CNY
Chinese Yuan
Fiat Currencies
AED
United Arab Emirates Dirham
ARS
Argentine Peso
AUD
Australian Dollar
BDT
Bangladeshi Taka
BHD
Bahraini Dinar
BMD
Bermudian Dollar
BRL
Brazil Real
CAD
Canadian Dollar
CHF
Swiss Franc
CLP
Chilean Peso
CZK
Czech Koruna
DKK
Danish Krone
GBP
British Pound Sterling
GEL
Georgian Lari
HKD
Hong Kong Dollar
HUF
Hungarian Forint
ILS
Israeli New Shekel
INR
Indian Rupee
KWD
Kuwaiti Dinar
LKR
Sri Lankan Rupee
MMK
Burmese Kyat
MXN
Mexican Peso
MYR
Malaysian Ringgit
NGN
Nigerian Naira
NOK
Norwegian Krone
NZD
New Zealand Dollar
PHP
Philippine Peso
PKR
Pakistani Rupee
PLN
Polish Zloty
SAR
Saudi Riyal
SEK
Swedish Krona
SGD
Singapore Dollar
THB
Thai Baht
TRY
Turkish Lira
UAH
Ukrainian hryvnia
VEF
Venezuelan bolívar fuerte
VND
Vietnamese đồng
ZAR
South African Rand
XDR
IMF Special Drawing Rights
Cryptocurrencies
BTC
Bitcoin
ETH
Ether
LTC
Litecoin
BCH
Bitcoin Cash
BNB
Binance Coin
EOS
EOS
XRP
XRP
XLM
Lumens
LINK
Chainlink
DOT
Polkadot
YFI
Yearn.finance
Bitcoin Units
BITS
Bits
SATS
Satoshi
Commodities
XAG
Silver - Troy Ounce
XAU
Gold - Troy Ounce
Select Language
Popular Languages
EN
English
RU
Русский
DE
Deutsch
PL
język polski
ES
Español
VI
Tiếng việt
FR
Français
PT
Português
All Languages
AR
العربية
BG
български
CS
čeština
DA
dansk
EL
Ελληνικά
FI
suomen kieli
HE
עִבְרִית
HI
हिंदी
HR
hrvatski
HU
Magyar nyelv
ID
Bahasa Indonesia
IT
Italiano
JA
日本語
KO
한국어
LT
lietuvių kalba
NL
Nederlands
NO
norsk
RO
Limba română
SK
slovenský jazyk
SL
slovenski jezik
SV
Svenska
TH
ภาษาไทย
TR
Türkçe
UK
украї́нська мо́ва
ZH
简体中文
ZH-TW
繁體中文
Login to track your favorite coin easily 🚀
By continuing, you agree to CoinGecko Terms of Service and acknowledge you’ve read our Privacy Policy
or
Forgot your password?
Didn't receive confirmation instructions?
Resend confirmation instructions
IT'S FREE! Track your favorite coin easily with CoinGecko 🚀
By continuing, you agree to CoinGecko Terms of Service and acknowledge you’ve read our Privacy Policy
or
Password must contain at least 8 characters including 1 uppercase letter, 1 lowercase letter, 1 number, and 1 special character
Didn't receive confirmation instructions?
Resend confirmation instructions
Forgot your password?
You will receive an email with instructions on how to reset your password in a few minutes.
Resend confirmation instructions
You will receive an email with instructions for how to confirm your email address in a few minutes.
Get the CoinGecko app.
Scan this QR code to download the app now App QR Code Or check it out in the app stores