Written by Pablo Gómez
Founder & CEO at Metlabs · Reviewed on October 11, 2026
The standard centers on a single function: royaltyInfo(tokenId, salePrice), which returns the receiver address and the amount due. At the point of sale, the marketplace calls it with the price and learns whom and how much to pay. ERC-2981 does not enforce the payment on-chain. The specification states this plainly: payment is voluntary, because transfer mechanisms such as transferFrom do not always imply a sale. The standard normalizes how to retrieve the information, not how to force the payment. It is compatible with ERC-721 and ERC-1155, though it does not require that compatibility.
The EIP-2981 specification, Final in status, was created on 15 September 2020 and finalized in July 2021, authored by Zach Burks, James Morgan, Blaine Malone and James Seibel. It requires ERC-165 and its interface identifier is 0x2a55205a. It matters because each marketplace used to handle royalties in proprietary, incompatible ways; ERC-2981 unifies that signal across platforms.
The citable nuance of ERC-2981 is its voluntary nature, the structural reason behind the later debate over how to apply royalties off-chain. It is a layer mounted on ERC-721 or ERC-1155. It is useful for grasping a principle that carries over to real-world asset tokenization and compliance: a rule written into a smart contract does not guarantee its economic execution when it depends on an external actor. The good practice is to design the operating model around that limit from the start.
Also known as
- ERC2981
- NFT Royalty Standard





