Deciphr Academy
Track 3 · Module 12 · Lesson 4 of 7 · 7 min read

What is the ERC-1155 multi-token standard?

Short answer

ERC-1155 lets one contract manage many token types at once, both fungible and non-fungible.1 It can send several types in a single transfer, which costs less than sending each one separately.1

ERC-1155 contractID 1: gemsID 2: shieldsID 3: trophy, supply 1Receivergets all threeone batch transferamounts [200, 1, 1]Many token types, one contract, one transfer
Fig. 4. One ERC-1155 contract holds several token IDs. One batch transfer can move amounts of several IDs at once.

Why another standard?

ERC-20 and ERC-721 need a separate contract for each token type or collection.1 The ERC-1155 authors said this puts a lot of repeated code on Ethereum.1 Blockchain games might need thousands of token types, so the authors wanted a new standard. They add that ERC-1155 is not only for games.1

ERC-1155 is called the Multi Token Standard. It was created in June 2018, and its official page shows the status Final.1

Each ID is a token type

In ERC-1155, each token ID stands for its own type of token. Each type can have its own supply and metadata.1 One contract can mix fungible tokens, non-fungible tokens and other set-ups, such as semi-fungible tokens.1

Compare this with ERC-721. There, a token ID is one single NFT, and the whole collection shares one contract.1 In ERC-1155, a type with a supply of just one is in effect an NFT.2

Batches

safeBatchTransferFrom sends several token IDs and amounts in one call.1 This costs less gas than sending each type in its own transaction.1

ethereum.org gives an example. Send IDs [3, 6, 13] with amounts [100, 200, 5]. That moves 100 of ID 3, 200 of ID 6 and 5 of ID 13.2

balanceOfBatch works the same way for reading. It gets many balances in a single call.1 ERC-1155 has no plain transfer function, only transferFrom-style functions. To send your own tokens, you name yourself as the sender.2

Approval is all or nothing

setApprovalForAll lets an operator manage all of your tokens in the contract.1 You cannot set how many tokens it covers, or which types.2 Limiting approval needs something extra, such as another interface or a separate contract.1

Safer transfers to contracts

The standard transfer functions must fail if the receiving contract lacks the standard's receiving functions.1 ethereum.org says this means no more tokens stuck in a contract.2

One link for many tokens

A metadata link can contain the text {id}. Apps swap in each token's ID, so one link can serve many tokens.1 ERC-1155 also leaves out the symbol function. Its authors felt symbols are not very useful outside trading, and different tokens can clash.1

Our viewERC-1155 suits anything that needs lots of item types, such as games or tickets. The trade-off is approval: one switch covers every token you hold in that contract.
Sources
  1. ERC-1155: Multi Token Standard. Ethereum Improvement Proposals (Witek Radomski, Andrew Cooke, Philippe Castonguay, James Therien, Eric Binet, Ronan Sandford), created 17 June 2018, status Final.
  2. ERC-1155 Multi-Token Standard. ethereum.org developer docs, page updated 3 April 2026.

General education built from the publicly available sources listed above. Not financial, legal, tax or investment advice. Naming a company, project or regulator is not an endorsement either way. Last checked 2026-10-22. Terms and disclaimer.