What is ERC-1155?

An Ethereum token standard that holds many token types in one contract and can transfer several of them in a single call.

Not yet verifiedHow we verify

3 min read

In this entry

An Ethereum token standard that holds many token types in one contract and can transfer several of them in a single call.

It was designed for cases where a project issues both fungible and non-fungible items, such as game inventories, and it cuts gas by batching transfers that would otherwise be separate transactions (source: EIP-1155). A single ERC-1155 identifier can have a supply of one, behaving like an erc 721 token, or a supply of thousands, behaving like an erc 20 balance. Support is narrower than either older standard, so check that a wallet or exchange handles it before sending.

The trap is assuming that because a token has an address and a picture, any wallet will show it. Tools written only for the two older standards will not read an ERC-1155 balance at all, so the asset appears to be missing when it is sitting exactly where you sent it.

How it works

Where ERC-20 gives one contract one token and ERC-721 gives one contract a set of unique items, ERC-1155 gives one contract many identifiers, each with its own supply. Ownership is recorded as a balance of a given identifier held by a given address, so the same interface covers both cases (source: EIP-1155).

Three properties follow from that design:

  • Batching. A single call can move several identifiers and quantities at once, so equipping ten items in a game is one transaction rather than ten.
  • A shared contract. Deploying a new item type does not mean deploying a new contract, which cuts the cost of issuing many assets.
  • Safe transfer callbacks. A transfer to a contract requires that contract to acknowledge it, which is intended to stop tokens being sent somewhere that cannot handle them.

Approvals work at the operator level rather than per amount. Granting an operator permission gives it authority over every identifier in that contract held by your address, which is a broader grant than a typical ERC-20 allowance.

Metadata follows a URI template with a substitutable identifier, so one stored string describes an entire collection. As with ERC-721, that metadata usually lives off chain, at an HTTP address or on ipfs.

Example

Illustrative comparison. Moving five different game items under ERC-721 means five transfers. At an illustrative 50,000 gas each, that is 250,000 gas. Under ERC-1155 the same five move in one batched call, which shares the transaction's fixed overhead across all five and lands well below that total. The saving is real but modest on a cheap chain, and only worth planning around when the chain's fee is high.

Why it matters when you buy

If you are buying a collectible or a game asset, the standard determines which marketplaces list it, which wallets display it, and whether a custodial venue will accept it as a deposit at all. Most centralized exchanges list neither ERC-721 nor ERC-1155 assets, so buying means using a marketplace and holding in self custody. See the exchange pages for what listed venues actually support.

erc 721 — the unique-item standard, erc 20 — the fungible standard, nft — the asset class involved, token approval — the permission model, ipfs — where metadata often lives, eip — the proposal format.

Questions

Can I send an ERC-1155 token to an exchange?

Usually not. Most exchanges accept only fungible tokens on standards they explicitly list, and a deposit of an unsupported standard is frequently unrecoverable. Check the exchange's supported-asset documentation first.

Why does my wallet not show my ERC-1155 items?

Wallet support for this standard is patchier than for the older two. Try a wallet or block explorer that states ERC-1155 support and look the contract up directly before concluding anything is lost.

Is ERC-1155 the same as an NFT standard?

It covers non-fungible items but is not limited to them. The same contract can hold identifiers with a supply of one and identifiers with a supply of millions, which is the point of the design.