Home / Wiki / E / ERC-1155

ERC-1155

Cryptocurrency and Digital AssetsUpdated 05 Nov 2026

ERC-1155 is a token standard on Ethereum that lets a single smart contract manage any number of token types at the same time. Each type has an ID; a type can be fungible, with many identical units, or non-fungible, with a supply of one. Because the standard supports batch operations, a user can receive or send dozens of different items in one transaction.

The standard was proposed as Ethereum Improvement Proposal (EIP) 1155 in June 2018 by a group led by Witek Radomski, then chief technology officer of the gaming company Enjin, and is marked "Final". It combines features of the ERC-20 standard for interchangeable tokens and the ERC-721 standard for unique non-fungible tokens (NFTs), and is widely used for games, editions of digital art and collections that mix currencies with one-off items.

01

ERC-1155 in plain terms

Picture a games arcade that hands out tickets, tokens and prizes. Under the older approach, each kind of item needed its own counter and its own clerk: one for tickets, one for coins, one for every individual prize. ERC-1155 puts everything behind one counter with one ledger, which notes "Alice: 500 tickets, 20 coins, the one golden trophy".

Because one clerk handles it all, Alice can swap a whole basket of items in one visit instead of queuing at several counters. On a blockchain, each visit costs a fee, so fewer visits means lower costs.

02

How the standard works

An ERC-1155 contract stores balances as a table of (owner, token ID) pairs. Whether a token is "non-fungible" depends only on how many units exist: an ID minted once is unique, while an ID minted a million times behaves like a currency. The main functions are:

  • safeTransferFrom moves an amount of one token ID between addresses.
  • safeBatchTransferFrom moves amounts of several token IDs in one call.
  • balanceOf and balanceOfBatch return balances for one or many owner and ID pairs.
  • setApprovalForAll lets an operator, such as a marketplace, move all of an owner's tokens in the contract.

Unlike ERC-721, the transfer checks are mandatory: a contract receiving tokens must confirm it can handle them, or the transfer reverts. Metadata comes from a single URI template containing {id}, which software replaces with the token ID, so one link pattern can describe thousands of items stored, for example, on the InterPlanetary File System (IPFS). There is no per-token ownerOf function, because a type may have many holders.

03

Batch transfers and gas savings

Deploying a new contract for every item type and moving each item separately is expensive. With ERC-1155 a game studio deploys one contract, mints hundreds of item types in a single call and transfers a player's whole inventory together, cutting the gas used per item. The saving depends on the gas limit each operation needs and on the gas price at the time; on busy networks it can decide whether a game's economy is affordable at all.

A typical comparison is moving ten different items. Under ERC-721 that means ten transfers, each paying the base cost of a transaction. Under ERC-1155 it is one batch transaction, paying that base cost once and a smaller amount for each extra item, so the total gas fee is lower.

04

Uses

  • Games. In-game currencies, consumables and rare equipment can live in one contract, a common pattern in NFT gaming and metaverse projects. Enjin built its own platform tools around the standard.
  • Editions and collectibles. An artist can release one work in an edition of 100 identical copies under a single ID, cheaper than 100 separate ERC-721 tokens. Large marketplaces have used ERC-1155 for "shared" minting contracts.
  • Tickets, passes and rewards. Event tickets, loyalty points and memberships fit well, since a type can start as fungible stock and later carry individual details. Projects often distribute them as an airdrop to many wallets in one go.
  • Tokenised assets. Issuers experimenting with tokenization can represent several share classes or lots of a commodity in one contract.

As with other token standards, contracts are mostly written in Solidity using audited libraries, and the same code runs on Polygon and other Ethereum-compatible blockchains.

05

Limitations

ERC-1155's flexibility can make it harder to see what a token is. A crypto wallet or block explorer cannot tell from the standard alone whether an ID is a one-of-one artwork or one unit of a large supply, so collectors must check the total minted. Support in wallets and marketplaces arrived later than for ERC-721, and some tools still handle it less fully.

The standard also shares the security issues of other NFT contracts. A single setApprovalForAll signature covers every token in the contract, which phishing sites exploit, and contracts with admin keys can let the issuer change metadata or mint more of a supposedly scarce item. Legal rights to the underlying content, as with any NFT, depend on the issuer's licence, not on the token standard.

Last updated 05 Nov 2026