Skip to content
AdvancedLook up a term

What is ERC-6551 (token bound accounts)?

Author
CRYPTO PORT Editorial
Published
Updated
Reading time
6 min

In short

ERC-6551 gives every existing ERC-721 token its own smart contract account. The NFT itself can then hold other tokens, and transferring the NFT moves its contents with it. Crucially, it works without modifying the original NFT contract.

Key points

  • Attaches a contract account to each individual NFT
  • Lets the NFT itself hold other tokens and NFTs
  • Works on existing ERC-721s without changing them
  • Account addresses are deterministic and knowable in advance

Definition

A standard that deterministically assigns a smart contract account to each ERC-721 token through a shared registry, with control of that account held by the NFT's owner.

The mechanism centres on a registry contract. Given the NFT's contract address, token ID and chain ID, it derives an account address via CREATE2. Because the derivation is fixed, the address is known before the account is deployed, and assets can be sent there in advance.

Only the NFT's current owner can operate the resulting account. Anything sent to it belongs to whoever next buys the NFT. That is what makes nesting possible — a character NFT that holds its equipment, for example.

The thing to watch is exactly that: transferring the NFT transfers its contents. Before any trade, check what the token's account holds. And because this works through a registry rather than the NFT contract, marketplaces and wallets that have not added support will show nothing of the contents.

Watch out for

  • · Selling the NFT hands over everything in its account as well
  • · Before buying, verify the account's contents yourself rather than trusting a description
  • · Unsupported tools show nothing of the contents, so it is easy to miss what is there

Related coins

Read next

Crypto quizzes

Answer a few questions and get your result instantly.

Start