NFT Guide for Businesses: Fee Structure for Secondary Distribution

Kenta Suhara
BlockBaseLab
Published in
4 min readMay 24, 2021

Some of you may have heard that “NFT is great because it allows creators to receive commissions for secondary distribution!”

What kind of mechanism is actually used to achieve this?

Let me jump to the conclusion. It is important to note that the commission structure for secondary distribution is not unified as a standard, but is left to the discretion and implementation of each market.

I will use OpenSea and Rarible as examples to explain.

How to set up

OpenSea

Connect with the wallet that you issued the NFT and go to the collection page.

Go to Manage → Edit → sign → commission. Enter the commission percentage in the “Percentage fee” field and the address where you want to receive the commission in the “Your payout wallet address” field.

Rarible

When you create a new NFT, you can set it by entering a percentage where it says “Royalty” in the image.

If you are listing an existing NFT on another platform or your own, you will not be able to set the royalty later. This is because Rarible uses contracts to set the fees. So if you create your own NFT that has the same function as Rarible’s contract, you can set it (Chocofactory can set it!)

How does it work?

In the case of OpenSea, the distribution of royalty at the time of secondary distribution is done off-chain. In the OpenSea contract, there is a “protocolFee” which is the fee for distribution when the token is transferred.

https://etherscan.io/address/0x7be8076f4ea4a4ad08075c2508e481d6c946d12b#code

The combination of OpenSea’s transaction fee of 2.5% and the set royalty percentage is sent to the OpenSea wallet as protocolFee.

https://etherscan.io/tx/0x1f47cab49bc83cba81a3d83874d2d9188cefd242c75abbd1402607470cf9eff2

In the case of this transaction, 5% of the 9 ETH has been sent to the OpenSea wallet. We can assume that the royalty set by the creators is 2.5%.

Then, it seems that the Royalty is aggregated off-chain and sent to the creators in bulk once a month.

https://docs.opensea.io/docs/10-setting-fees-on-secondary-sales#section-receiving-your-revenue

Rarible

In the case of Rarible, royalty distribution is done on the contract.The NFT created from the GUI on Rarible has a royalty registry that holds royalty.

In the market contract, when a trade is executed and the token is transferred, the royalty stored in the royaltyRegistry is retrieved and transferred.

https://github.com/rariblecom/protocol-contracts/blob/master/exchange-v2/contracts/RaribleTransferManager.sol#L121

If you deploy your own NFT with the logic and InterFace of the royalties/contracts repository described above, and set the royalty from etherscan after deployment, you will receive a commission even when your NFT is distributed secondarily by Rarible.

This feature is already implemented in Chocofactory. https://docs.chocomint.app/operation-guide/chcomint-factory/japanese-1#no

Summary

In this article, we have looked at OpenSea and Rarible and their royalty system for secondary distribution.

As I mentioned at the beginning, it is important to note that there is no unified standard, and it is left to the discretion and implementation of each market.

In addition, if a relative transaction like “send NFTs for free and receive the money transfer in ETH or cash elsewhere” is made, it is not possible to obtain the fee for secondary distribution.

Creators and businesses selling NFTs may want to consider the commission from secondary distribution as an extra and avoid expecting it as a pillar of revenue (in the first place, NFTs are not traded very often). Make sure you’re getting your fair share of revenue from primary sales!

BlockBase is open for development and business consultations. Please feel free to contact us.

We are also building a blockchain learning community. If you want to deepen your technical understanding of blockchain, please feel free to join us!

discord: https://discord.gg/UMcFBDfPa8

--

--