Article contributed by Avran Wong. Follow them on Medium here.
Before we dive into the topic, let us get some definitions out of the way:
Intellectual property can be anything ranging from music to artwork and basically represents an intangible creative property.
A Royalty agreement benefits both the licensor (the owner) and the licensee (third party). It gives a third party a way to use an asset that doesn’t belong to them, and at the same time, the owner benefits from a stream of income beyond the initial sales. This is great for any creator as it is a guarantee that they will be compensated for any use of their work
So, what’s the problem?
In industries like music or media, there is no straightforward way to distribute royalties. Artists and streaming platforms usually have to jump through a bunch of middlemen and administrative processes to get the payment to the artist. Of course, this not only incurs fees usually at the expense of the artist but also takes a painfully long time.
For a million streams on Spotify, an artist would only make around $4,000. I don’t know about you but having over 2 thousand people listening to your song every day for a year sounds like it should be worth more than a couple thousand dollars.
So NFTs! NFTs, right?
At its core, non-fungible tokens (NFTs) are tokens on the blockchain that can be used to represent ownership of unique items. This is useful for items such as art, collectibles and even real estate. The cornerstone of an NFT is its ability to pay out royalties every time your NFT creation is sold on a secondary marketplace like OpenSea or Rarible. Since the blockchain is faster and immutable, it quickly expedites the process and removes a bunch of middlemen. This reduces the fees since there are lesser parties involved and payments are “automatically”. However, these smart contracts are not as advanced as you think.
If we just do a simple google search “Are NFT royalties smart contract ensured?” You’ll get a bunch of results claiming that its smart contract ensured and no intermediaries are needed.
This may not be entirely true. The current smart contract standards are unable to communicate with each other when it comes to royalty-triggering events cross-marketplace.
Transaction Logs on Etherscan
Looking at a random sale of a CryptoPunk on OpenSea, it turns out that a “sale transaction” emits a transfer event. This is the same event that occurs whenever a user transfers a token. Since the smart contract cannot tell the difference between a peer-to-peer transaction and a sale on a marketplace, the transferring of royalties cannot be done automatically as not all transfers result in a sale. This becomes more complex as different marketplace handles sales differently
Article on nft.wtf
As such, NFT royalty payments are actually enforced by the marketplace and the methods vary between marketplaces. This is why we’ve seen issues with OpenSea withholding royalty payments to artists, it’s simply because they can.
Of course, no marketplace would logically withhold royalties for no reason since it does nothing for their reputation. But if marketplaces hypothetically wanted to keep all royalties for themselves, they theoretically could. Ironically, marketplaces have become just like the middlemen that we were trying to remove in the first place. This poses a systemic risk as marketplaces are the ones controlling the payouts of royalties, not your smart contract. Code is not law in this case.
Current solutions
In my head, there are two main issues with the current smart contract standards:
- There is no standardized event that differentiates a secondary sale from a transfer
- There is no standardized format to obtain royalty information such as owner, royalty rates etc
Moving forward, there needs to be more standardization of smart contracts to support cross marketplace communication as well as ways to detect a royalty emitting event.
EIP-2981
ERC2981 is one such standard that aims to solve this issue. This standard enables all marketplaces to retrieve royalty payment information for a given NFT.
Functional Requirements for ERC2981
However, adoption of this standard will take time as marketplaces are not incentivized to change their current structures. Furthermore, if we look at the functional requirements, it is only a standardized way to present royalty information, not enforce it. Although the payments for the royalty are still enforced by the marketplace, this is at least a step in the right direction to providing a standardized implementation across marketplaces.
Thoughts
Are we really changing anything?
With all the hype and praise that NFTs get, you would really expect something like this to be automated. After all, the ethos of blockchain values the importance of building permissionless and automated systems. What’s the point of using smart contracts to remove middlemen just to reintroduce them again down the line?
Of course, one can view this from a positive perspective as well. It is at least an improvement from the current systems. But is that what we’re really looking for? Overall NFTs, smart contracts and blockchains have huge potential to truly optimise industries that have just become too convoluted. Even though the features are not here yet, it’s not impossible to have this fixed with some effort. But if we’re not careful, we might just be rebuilding the same flawed systems over again.
Hopefully, this article has been useful in shaping your mindset in the world of Crypto. In a speculative industry like Crypto, it’s easy to assume that things are more advanced than they actually are. Being early means that a lot of features are just talks of their potential and are simply not ready yet. If you like the content do consider following me on my journey and sharing this around 🙂