ERC-721 vs ERC-1155: What's Actually Different?

ERC-721 and ERC-1155 are both NFT standards, but they solve different problems. ERC-721 handles unique tokens one at a time. ERC-1155 handles multiple token types — fungible and non-fungible — in a single contract with batch operations.
Lewis Jackson
CEO and Founder

When people talk about NFTs, they almost always mean ERC-721. It's the standard that launched the NFT market — CryptoPunks retroactively adopted it, Bored Ape Yacht Club was built on it, and most NFT tooling still defaults to it.

But ERC-1155 exists for a reason. It's not a replacement — it's a different tool, built to solve problems ERC-721 can't handle efficiently. The distinction matters if you're thinking about what NFT infrastructure actually looks like underneath the market noise.

The short version: ERC-721 handles one-token-per-type, one-transfer-at-a-time. ERC-1155 handles many token types in a single contract, with batch operations, and supports both fungible and non-fungible tokens simultaneously. Which one is "better" depends entirely on what you're building.

The Mechanism

ERC-721 was the first NFT standard, finalized in January 2018. The core design decision is that each token has a unique tokenId, and that ID maps to exactly one owner. The primary functions: ownerOf(tokenId) returns who owns a given token, transferFrom(from, to, tokenId) moves it.

One contract equals one collection. Within that collection, each token ID is distinct and non-fungible — there's no concept of "quantity" per token. If you want 10,000 unique NFTs, you need one contract with 10,000 unique IDs, each mapped to one address.

ERC-1155 came later, finalized in June 2019. It was proposed by Witek Radomski at Enjin and came out of the gaming context — specifically, the problem of managing large inventories of game items on-chain cheaply. The design shift: instead of tokenId → owner, ERC-1155 uses (id, address) → balance. Every address can hold any quantity of any token ID within the same contract.

The functions look different too. balanceOf(account, id) returns how much of a given token type an address holds — not just whether they own it. And critically: safeBatchTransferFrom(from, to, ids, amounts, data) moves multiple token types in a single transaction.

Here's the part worth pausing on: in ERC-1155, an ID with a max supply of 1 behaves identically to an ERC-721 NFT. An ID with a max supply of 1,000,000 behaves like a fungible token. The same contract can handle both in the same transaction. This is what people mean by "semi-fungibility" — not a third category of token, but a design where the supply parameter determines fungibility at the ID level.

A concrete example: a blockchain game could deploy one ERC-1155 contract with ID 1 representing a unique legendary sword (supply: 1), ID 2 representing common health potions (supply: 500,000), and ID 3 representing a limited-edition skin (supply: 100). All three managed together. An ERC-721 implementation would need separate contracts for the fungible items, or a workaround.

Where Constraints Live

ERC-721's constraint is mostly gas and contract architecture. Each transfer is a single transaction. If you want to move 50 different items to someone — say, a game transferring an item set to a new player — that's 50 separate transactions. At times of high Ethereum network congestion, this gets expensive fast.

The architectural constraint is also worth understanding: because each NFT collection is a separate contract, contracts don't share any state or logic by default. Composability across contracts requires additional infrastructure.

ERC-1155 addresses the gas problem directly. Batch transfers move multiple token types in one call, with roughly constant overhead per additional item. The tradeoff is contract complexity — more parameters, more surface area, and historically, indexing and marketplace support that lagged behind ERC-721.

One thing that sometimes confuses people: EIP-2981, the royalty standard, isn't tied to either ERC-721 or ERC-1155 specifically. It's an interface contracts can implement independently. Royalty enforcement — and the ongoing debate about whether it should be on-chain at all — applies equally to both standards.

What's Changing

ERC-6551 (token bound accounts) is probably the most structurally interesting development adjacent to ERC-721. Finalized in September 2023, it allows ERC-721 tokens themselves to own assets — each NFT gets a smart contract wallet derived from its contract address and token ID. A BAYC ape can own ETH, other NFTs, or ERC-20 tokens directly. This adds composability on top of ERC-721 without changing the underlying standard.

ERC-6551 doesn't displace ERC-1155 — they solve different problems — but it does expand what's practical to build with ERC-721 NFTs as primary objects.

On the ERC-1155 side: L2 deployments are making batch operations even more efficient. The gas efficiency argument was strongest on Ethereum mainnet. On rollups like Arbitrum, Base, and Optimism, the cost gap between ERC-721 single transfers and ERC-1155 batch operations narrows, though doesn't disappear entirely. For games and high-throughput applications, ERC-1155 on L2 is currently the practical default.

There's also ongoing work around metadata standards — ERC-4906 (token metadata update events) standardizes how ERC-721 tokens signal that their metadata has changed. Interestingly, this kind of tooling tends to land on ERC-721 first because that's where most of the NFT product development has concentrated.

What Would Confirm the Direction

ERC-6551 ecosystem maturity: wallets and marketplaces supporting token bound accounts natively, with non-trivial usage of NFTs actually holding other assets. Gaming platforms standardizing on ERC-1155 for item inventories with auditable, stable implementations. Both would confirm that the ecosystem is building around both standards for their appropriate use cases rather than converging on one.

What Would Break or Invalidate It

A hybrid standard gaining dominant adoption — ERC-404 and DN-404 experimented with this in early 2024, trying to make tokens simultaneously fungible and non-fungible — could reshape the landscape. Neither gained significant traction, but the design space is still being explored. If cross-chain abstraction matures to the point where the underlying token standard is hidden from users and developers entirely, the ERC-721 vs ERC-1155 distinction becomes less operationally relevant, even if the standards persist on-chain.

A serious security exploit in a widely-deployed ERC-1155 implementation would be the sharpest invalidation for that standard — batch operations mean a vulnerability could affect many token types simultaneously.

Timing

Now: ERC-721 is the default for art, collectibles, and PFP projects. ERC-1155 is the default for games, multi-item systems, and any use case requiring batch transfers or mixed fungibility. Both are mature on Ethereum mainnet and major L2s.

Next: ERC-6551 token bound account adoption is the active development to watch on the ERC-721 side. L2 gaming infrastructure is the active development on the ERC-1155 side.

Later: Cross-chain NFT portability and account abstraction are longer-horizon questions that would eventually affect both standards. Nothing suggests either standard is at risk of being deprecated — the installed base is too large.

Boundary Statement

This covers the mechanism and structural differences. It doesn't address the tax treatment of NFTs in any jurisdiction, nor does it constitute guidance on which standard to use for any particular project — that's an engineering decision that depends on factors specific to the use case.

The choice between ERC-721 and ERC-1155 is an architectural fit question. Understanding the mechanism tells you what each is designed for. Whether a specific project needs one or the other depends on the token design, not the standard's market status.

Related Posts

See All
Crypto Research
New XRP-Focused Research Defining the “Velocity Threshold” for Global Settlement and Liquidity
A lot of people looking at my recent research have asked the same question: “Surely Ripple already understands all of this. So what does that mean for XRP?” That question is completely valid — and it turns out it’s the right question to ask. This research breaks down why XRP is unlikely to be the internal settlement asset of CBDC shared ledgers or unified bank platforms, and why that doesn’t mean XRP is irrelevant. Instead, it explains where XRP realistically fits in the system banks are actually building: at the seams, where different rulebooks, platforms, and networks still need to connect. Using liquidity math, system design, and real-world settlement mechanics, this piece explains: why most value settles inside venues, not through bridges why XRP’s role is narrower but more precise than most narratives suggest how velocity (refresh interval) determines whether XRP creates scarcity or just throughput and why Ripple’s strategy makes more sense once you stop assuming XRP must be “the core of everything” This isn’t a bullish or bearish take — it’s a structural one. If you want to understand XRP beyond hype and price targets, this is the question you need to grapple with.
Read Now
Crypto Research
The Jackson Liquidity Framework - Announcement
Lewis Jackson Ventures announces the release of the Jackson Liquidity Framework — the first quantitative, regulator-aligned model for liquidity sizing in AMM-based settlement systems, CBDC corridors, and tokenised financial infrastructures. Developed using advanced stochastic simulations and grounded in Basel III and PFMI principles, the framework provides a missing methodology for determining how much liquidity prefunded AMM pools actually require under real-world flow conditions.
Read Now
Crypto Research
Banks, Stablecoins, and Tokenized Assets
In Episode 011 of The Macro, crypto analyst Lewis Jackson unpacks a pivotal week in global finance — one marked by record growth in tokenized assets, expanding stablecoin adoption across emerging markets, and major institutions deepening their blockchain commitments. This research brief summarises Jackson’s key findings, from tokenized deposits to institutional RWA chains and AI-driven compliance, and explains how these developments signal a maturing, multi-rail settlement architecture spanning Ethereum, XRPL, stablecoin networks, and new interoperability layers.Taken together, this episode marks a structural shift toward programmable finance, instant settlement, and tokenized real-world assets at global scale.
Read Now

Related Posts

See All
No items found.
Lewsletter

Weekly notes on what I’m seeing

A personal letter I send straight to your inbox —reflections on crypto, wealth, time and life.
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.