Enforcing NFT Royalties

As of late, creator fees have been a hot topic in the NFT space. Industry giant OpenSea has taken a staunch stance that it will enforce royalties on all NFT sales to the delight of artists and creators. Smaller marketplaces like LooksRare and X2Y2 have seen traders flock to their platforms to avoid paying royalties after announcing they will not enforce them.

While creator fees for large NFT projects like Azuki and RTFKT are only a supplement to existing streams of revenue, they provide a crucial lifeline for independent artists to continue creating original pieces and make a name for themselves. The decision to not enforce creator fees by certain platforms to appease the hungry crowd of NFT creates an interesting dilemma in the space. Neither marketplaces or creators can guarantee royalties outside of their platforms as traders can easily circumvent enforcement by moving to another marketplace.

Traders can escape paying royalties in 2 different ways:

  1. Move to a platform that uses a wrapper contract to bypass fee enforcement (Blur, SudoSwap, etc.)
  2. Complete a P2P transfer in which a user transfers their token to another user and that user sends an agreed upon amount back. (A number of issues with this method)

OpenSea tries to mitigate the first method using their Operator Filter Registry, but it requires significant overhead for creators to register and still does not provide an end all, be all solution. ERC-2981 makes an attempt at universally determining and enforcing royalties for every NFT sale, but fails to serve its purpose if the token is wrapped with another ERC721 contract. Takeaway from this that on Ethereum (or any other chain), creator fees cannot be universally enforced without removing the ability to wrap NFTs and prohibiting P2P transfers with null sale value.

Our team has proposed a potential solution to the issues of royalty enforcement. The proposed solution entails a variation on the ERC721 token standard that modifies the transferFrom function as well as an accompanying Escrow contract.

To do this, we need to address both of the aforementioned ways that traders can easily circumvent paying creator fees. In the first method, users can utilize wrapper contracts that pass ownership of their NFT to another ERC721 contract. Ownership of this derivative contract can then be transferred to the buyer using a ERC721 sale contract and pass through without paying royalties to the creator.

This process of wrapping or deriving a synthetic NFT can be prevented using a specific type of escrow contract. The escrow contract primarily serves the function of preventing the transfer of ownership of any ERC721 to another smart contract. The escrow contract requires a signed message from the potential buyer to complete the sale/transfer of ownership. Because it is impossible for a smart contract to sign a message on-chain, it cannot fulfill the requirements of the escrow contract for a sale, and thus cannot own an ERC721 transferred using the escrow contract. This architecture prevents any user, marketplace, or contract from making an ERC721 derivative.

In the second method, the user conducts an ERC721 trusted sale outside of a marketplace. This is largely made possible through the use of the transferFrom method of the ERC721 contract. To prevent circumvention of sales through the escrow contract, the transferFrom method must be modified. The variation ERC721 contract would be modified such that the marketplace escrow contract is the only entity with permissions to call transferFrom. This would negate P2P sales that bypass royalty payments and dictate that the only way to sell/move the NFT is through the escrow contract.

This proposed variation of the ERC721 standard and accompanying whitelisted escrow contract provide a way for marketplaces and independent artists to globally enforce royalties on every secondary sale. While the naming of this modified is arbitrary, it could live alongside the traditional ERC721 similar to the upgraded ERC721A.

A few sidenotes:

  • Modification of the transferFrom removes the ability to simply transfer your NFT between wallets. This may cause some friction among NFT traders, but as long as the user has the same value of the NFT in whatever token the sale is denominated in, they can simply move it through the contract.
  • This token standard is will likely apply best to smaller independent artists
16 Likes

Super thorough post. A few comments:

  • I agree that smaller artists will benefit from swap methods that ensure their royalty will be paid.
  • I’d be curious to see the distribution of NFT sales between independent artists, standardized collections, and celebrity boosted drops. My guess is that independent artist sales make up a tiny minority.
  • Are circumvented fees the main thing holding independent artists back from utilizing NFTs? If so, the Quai solution could be extremely powerful.
10 Likes

Incredible write-up, with interesting solutions proposed. I agree that artist royalties have become a hot topic. I believe that for Web3 and NFTs to retain their relevance in the digital world, artists must have a guaranteed mechanism for receiving royalties if they wish.

This new token standard addresses all methods of dodging the payment of royalties, but I believe it is worth considering the concept of ownership and the long-term sustainability of NFT collections that use this model. As such, I have a few thoughts, critics, and suggestions for the proposal, which I will call ā€œERC-721Rā€:

The escrow contract requires a signed message from the potential buyer to complete the sale/transfer of ownership. Because it is impossible for a smart contract to sign a message on-chain, it cannot fulfill the requirements of the escrow contract for a sale, and thus cannot own an ERC721 transferred using the escrow contract.

I am completely in favor of this. Having a single escrow contract that all ERC-721R sales must pass through is a remarkable simple and effective solution to the problem of using wrapped assets to avoid royalties. Despite this, I worry about the potential impacts this may have on fractionalized ownership of ERC-721R tokens.

If ERC-721R tokens are unable to be transferred to a contract, the only viable method of shared/fractionalized ownership that I can conceive would be a multi-sig wallet, which would severely limit the usability of such a fractionalized system.

To prevent circumvention of sales through the escrow contract, the transferFrom method must be modified. The variation ERC721 contract would be modified such that the marketplace escrow contract is the only entity with permissions to call transferFrom .

This is where the proposal becomes very interesting. The ability to send an asset to another actor on-demand is, in my opinion, a core tenant of ownership. I believe there is a strong argument to be made that eliminating the ability of a user to execute transferFrom also eliminates a major piece of their claim of ownership over the asset.

This may be refuted as a necessitation to maintain royalties across all transactions. I would respond to such a claim by stating that private, P2P sales of assets between wallets requires trust. Making a P2P private sale is exceptionally risky, and I believe the incentive for avoiding ERC-721R creator fees is outweighed by the inherent risk of trust present in every private sale.

This proposed variation of the ERC721 standard and accompanying whitelisted escrow contract provide a way for marketplaces and independent artists to globally enforce royalties on every secondary sale.

I propose this question: should a user be able to gift another user an ERC-721R NFT they own?

If so, then this proposal fails to adequately maintain the core functionality and use-cases of NFTs, and makes too core of a sacrifice in its attempt to enforce royalties across all platforms.

My proposed solution would be as follows:

In the second method, the user conducts an ERC721 trusted sale outside of a marketplace. This is largely made possible through the use of the transferFrom method of the ERC721 contract. To prevent circumvention of sales through the escrow contract, the transferFrom method must be modified. The variation ERC721 contract would be modified such that the marketplace escrow contract is the only entity with permissions to call transferFrom . This would negate P2P sales that bypass royalty payments and dictate that the only way to sell/move the NFT is through the escrow contract.

Remove the above. Replace with:

In the second method, the user conducts an ERC-721R P2P sale outside of a marketplace or escrow. This is made possible through the use of the ā€˜transferFrom’ method of the ERC-721 contract. Under the ERC-721R contract standard, users are still able to call ā€˜transferFrom’.

Benefits of the proposed changes:

  • Holders retain full claim of ownership over asset
  • Gifting NFTs and transfers to other wallets doesn’t incur additional royalty cost
  • Royalties are only paid when a user purchases an NFT from the escrow contract
  • The escrow contract is the only place to buy and sell NFTs

Downsides of the proposed changes:

  • This reintroduces the method of dodging royalties via a TRUSTED peer-to-peer transfer. I do not believe it is the protocol’s responsibility to attempt to prevent or intervene in trusted transfers.

I argue the above is not a significant threat to the overall effectiveness of the ERC-721R royalty enforcement, as the escrow contract remains the only TRUSTLESS way to transfer tokens between users.

In summary: I believe that this proposal could be extremely powerful for Quai and very beneficial to both small artists and the larger goal of NFT adoption. However, I urge the community to ask themselves the true meaning of ownership, and to consider the balance/benefit of these restrictions against the loss of perceived (or real) ownership.

8 Likes

Thanks for the response!

I’d be curious to see the distribution of NFT sales between independent artists, standardized collections, and celebrity boosted drops. My guess is that independent artist sales make up a tiny minority.

I 100% agree with this as larger projects make up a large majority of NFT volume. Big collections have much more reach whereas independent artists generally have a smaller more intimate community.

Are circumvented fees the main thing holding independent artists back from utilizing NFTs? If so, the Quai solution could be extremely powerful.

I believe that fee circumvention is at least part of the reason majority of artists flock to marketplaces like Foundation. While art focused marketplaces like this don’t provide a foolproof solution, I think they offer a smaller and more dedicated community that cares more about the art than the price. These tighter-knit communities (that generally don’t try to escape royalties) are what allow smaller independent artists to truly utilize the NFT space to their advantage. The ERC721R might allow these artists to frequent other marketplaces like the traditional OpenSea, Magic Eden, etc. and bring their communities alongside them without fear of getting caught up in royalty drama.

This being said, I am definitely not an independent artist and have a minor grasp on if this is really is a huge issue in their circles. I’d love for our graphic designer to come chime in here, he can likely provide first hand context to this discussion.

3 Likes

Great suggestion
I don’t like the proposal because of this, p2p could also be wallet- wallet transfer of the same person.
I believe royalties shouldn’t be enforced though, it should be creator choice
Screenshot_20221207-225644_1

3 Likes

I’m still quite up in the air on some of the key tenets of this proposal, so thanks for providing criticism and suggestions. Your criticism on the transferFrom removal from the contract is highly relevant and I’d love to discuss further.

On the topic of fractionalization, I’d like to clarify that multi-sig wallets do not exist natively within the EVM as they do for Bitcoin. Ethereum based multi-sig wallets are entirely smart contract based, and thus the proposed ERC712R could not be transferred into any multi-sig. This has obvious tradeoffs for wallet security that I won’t go into here.

If ERC-721R tokens are unable to be transferred to a contract, the only viable method of shared/fractionalized ownership that I can conceive would be a multi-sig wallet, which would severely limit the usability of such a fractionalized system.

While this is an understandable concern, I don’t see a huge issue with the inability to fractionalize royalty based NFTs. From what I see, there are not a significant number of fractionalization use cases that also should/would implement global royalty collection. A fair example of this would be fractionalized song ownership for which a single NFT is split between owners through the use of a multi-sig or other contract. There are 2 scenarios I see here:

  1. The song writer wants to collect global royalties. Here I would suggest minting a collection of ERC721Rs that each count as a share of the song and also collect royalties when sold.
  2. The song writer does not care about royalties. In this case, the writer should mint either a collection of ERC721 with each as a share or mint a single ERC721 and fractionalize it using a secondary contract wrapper.

Fractionalization can be done in many different ways and competent developers should be able to easily work around the limitations of both the ERC721 and its escrow based counterpart to achieve the result they desire.

Now to address the removal of transferFrom aspect of the proposal. I was rather on the fence about including this piece as it has funky implications on true ownership of tokens and user agency. I think you wrote it best here:

The ability to send an asset to another actor on-demand is, in my opinion, a core tenant of ownership

The idea that a user has total and complete ownership of their assets on-chain is a key tenet of what cryptocurrencies like Bitcoin and Ethereum set out to accomplish at their inception. While we’ve seen many protocols stray far from this idea, token standards and other core pieces of the smart contract ecosystem have not.

I understand that the restriction of P2P transfers by a token standard goes directly against the aforementioned ethos. The removal of this function primarily served to create a full rounded solution such that no user could escape royalties in any way.

P2P sales of assets between wallets requires trust. Making a P2P private sale is exceptionally risky, and I believe the incentive for avoiding ERC-721R creator fees is outweighed by the inherent risk of trust present in every private sale.

After talking with a few friends about this and re-reading the quote above, I realized that removal of user agency to simply transfer their token may be overkill to some extent. Because of the way blockchains and bartering in general is designed, the trusted transfer mechanism you described happens significantly less often than a traditional marketplace sale.

Trusted sales highly incentivize users not to engage in them as they run a huge risk of losing both their NFT and the profit they hoped to make selling it. Because of this, royalty losses to this method of circumvention could be considered a non-factor within the scope of the greater NFT market.

This would allow users to continue to transfer NFTs to cold wallets, gift, and trade in almost the exact same fashion as traditional NFTs. Keeps the status quo for the general trading audience and also covers creators qualms with royalty enforcement.

I’m open for further discussion on this but generally agree with your statements on the transferFrom removal. Would be interested to hear more from @wizeguyy and @DrK on this topic.

2 Likes

We’re having further discussion on the P2P aspect of this proposal. Still up in the air.

I believe royalties shouldn’t be enforced though, it should be creator choice

The point of this proposal is for the creator to chose whether they want royalties enforced or not. If they don’t they can use a traditional ERC721. If they do, they can utilize the ERC721R. Big thing here is that everyone has the choice!

4 Likes

This is not practical. NFT collectors will simply avoid Quai network if they cannot freely transfer NFTs between accounts. You cannot charge fees for transferring to own accounts or to friends. Don’t think that is even legal.

3 Likes

Would the proposed solution where P2P transfers remain enabled but contract interaction can still only take place through the escrow contract seem reasonable to you? This would enforce royalties on all the public (contract-based) buying/selling of a token created under this standard, but wouldn’t limit someone from sending to their own wallet, sending to a friend, or conducting a private sale.

2 Likes

Great write up and concept… flexibility has always been the key …and what majority stick by

Great question, but NFT space need big changes and something new. This bear market is good filter for all. Last time 95 percent of new projects are cash grab. I like deGods and some projects on eth , and I think magic eden is good marketplace, maybe we can colaborate with them?

1 Like

Definitely. The risk that trusted transactions inherently have is likely enough of a deterrent to prevent a large number of traders using it as their sole method of sale. Based on marketplaces today, I’d guess a maximum of 5% of sales happen in this manner.

It’ll reduce any UX friction and likely address a lot of creators issues.

4 Likes

I have a simple opinion on this topic without exaggerating the importance of royalties. The first solution is viable and valuable to everyone, letting creators make money on the secondary sales of their work in an open market. Therefore finding a way where royalties are enforced In the open market that’s a giant step toward artist and creators valuation. So, the solution I look forward to its implementation of such.

On the second solution, basically goes against the idea of decentralization and complete ownership and again on privacy. If artists are not satisfied with the royalties of open market enforcement then they should charge the price of their work at the time of listing. As Max iterate, P2P is a business of trust and not been able to transfer assets because creators had to make money on the sales is totally beat the idea and core principle of blockchain.

The blockchain has given artist the privilege that the current property right doesn’t give them, and I purchase something, I thought the whole idea behind NFT was to own something that’s uniquely yours and completely. The artist sold the pieces to which he print enough and I am not creating a copy cat of the work but transferring one of the original works for another value.

Basically royalties in open market should be in force, but on p2p that’s violation of the technology that gives artist their life of work.

3 Likes