Calculate EIP-2981 royalties, model revenue projections, and compare marketplace implementations.
Single Sale
Royalty Amount:
0.0500 ETH
$150.00 USD
Royalty (Wei):50,000,000,000,000,000
Seller Receives:
0.9500 ETH
$2850.00 USD
Bulk Revenue Model
Total Royalty Earnings
2.50 ETH
$7500.00 USD
EIP-2981 Implementation
royaltyInfo(1 ETH) returns:
receiver: 0x...
amount: 50,000,000,000,000,000 wei
amount: 50,000,000,000,000,000 wei
Marketplace Comparison
OpenSea
2.5% platform fee
Optional (creator earnings)
Artist gets: 0.0500 ETH
Seller pays: 0.0250 ETH fee
Seller receives: 0.9250 ETH
Seller pays: 0.0250 ETH fee
Seller receives: 0.9250 ETH
Blur
0% platform fee
Optional (0% default)
Artist gets: 0.0500 ETH
Seller pays: 0.0000 ETH fee
Seller receives: 0.9500 ETH
Seller pays: 0.0000 ETH fee
Seller receives: 0.9500 ETH
Magic Eden
0% platform fee
Mandatory on some chains
Artist gets: 0.0500 ETH
Seller pays: 0.0000 ETH fee
Seller receives: 0.9500 ETH
Seller pays: 0.0000 ETH fee
Seller receives: 0.9500 ETH
Foundation
5% platform fee
Mandatory
Artist gets: 0.0500 ETH
Seller pays: 0.0500 ETH fee
Seller receives: 0.9000 ETH
Seller pays: 0.0500 ETH fee
Seller receives: 0.9000 ETH
Solidity Code
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
import "@openzeppelin/contracts/token/common/ERC2981.sol";
contract MyNFT is ERC2981 {
constructor() {
// Set 5% royalty to 0x...
_setDefaultRoyalty(0x..., 500);
}
function supportsInterface(bytes4 interfaceId)
public view virtual override
returns (bool)
{
return interfaceId == type(IERC2981).interfaceId
|| super.supportsInterface(interfaceId);
}
}About EIP-2981
EIP-2981 is a standard for NFT royalty payments. Contracts implement a royaltyInfo() function that returns the receiver address and royalty amount for a given sale.
Marketplaces query this function and may honor it — but it's not enforced on-chain. Since 2023, many marketplaces have made royalties optional.