What is an ERC-721 token (an NFT)?
ERC-721 is the standard for non-fungible tokens, or NFTs, where every token is unique.1 Each one has its own ID number inside its contract, and the contract tracks the owner of each ID separately.1
One of a kind
ERC-721 describes itself as a standard for non-fungible tokens, "also known as deeds".1 It was created in January 2018, and its official page shows the status Final.1
Its authors built on ERC-20, but ERC-20 could not track NFTs. Each ERC-20 token is identical, while each NFT is distinct.1 As the standard puts it, "no two kittens are alike", so each NFT's owner must be tracked separately.1
NFTs can stand for houses, unique artwork, collectible cards, and even loans or other duties.1 ethereum.org adds access keys, lottery tickets and numbered seats at concerts.2
The token ID
Every NFT has a unique ID number inside its contract. That number must not change for the life of the contract.1 The contract's address plus the ID together point to one specific asset on an Ethereum chain.1 Apps must not assume IDs follow a pattern, such as counting up from 0.1
Owners, approvals and operators
Two functions answer the basic questions. balanceOf counts how many NFTs an address owns. ownerOf names the owner of one ID.1
ERC-721 has no allowance. Each NFT is unique, so the amount is always none or one.1 Instead, there are two kinds of permission.1
- Approve one NFT. The owner names one approved address for a single token ID.1
- Approve an operator. The owner names an operator, who can manage all of that owner's NFTs in the contract.1
A transfer can be started by the owner, the approved address for that NFT, or an operator.1
Safe and unsafe transfers
ERC-721 has two ways to send an NFT.1 safeTransferFrom checks whether the receiver is a smart contract. If it is, the receiver must answer with a set reply, or the transfer fails.1 transferFrom skips that check. The standard warns that the caller must make sure the receiver can handle NFTs, or they may be lost for good.1
Metadata: where the details live
Metadata is information about a token, such as its name, description and image.1 In ERC-721 it is an optional extension.1 A function called tokenURI gives a link for each NFT. The link may point to a file that lists the name, description and image.1
The authors considered storing all of this on the blockchain, but judged it too expensive.1 The link may also change over time. For a house, the standard notes, details like its occupants can change.1
The standard lists CryptoKitties among example NFT projects as of February 2018. It notes that CryptoKitties matched an earlier version of the standard.1
Module 14 covers NFTs in depth: what you really own, where the image lives, and the risks.
- ERC-721: Non-Fungible Token Standard. Ethereum Improvement Proposals (William Entriken, Dieter Shirley, Jacob Evans, Nastassia Sachs), created 24 January 2018, status Final.
- ERC-721 Non-Fungible 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.