Introducing Curation Markets: Trade Popularity of Memes & Information (with code)!

Curation Markets is a model that allows groups to more effectively coordinate & earn from value they co-create around shared goals.

Each topic/meme/idea/goal has an associated token of value that is used to curate information inside it.

Using Ethereum as a programmable, distributed, shared ledger, these groups can mint a token of value according to agreed upon rules without a centralized 3rd party being involved. In other words, a specific entity is not involved in the creation process of the tokens of value.

It is a new type of organisational model & way for people to coordinate, unfettered, around shared goals.

In essence, we allow the creation of global, joint-stock “memes”. Another phrase to describe this model is “meme markets”.

We will be able to mint tokens for things like sub-reddits, hashtags, people, memes and new organisations.


The core, functional components of curation markets involve:

  • A token that can be minted at any time (continuous) according to a price set by the smart contract.
  • This price gets more expensive as more tokens are in circulation.
  • The amount paid for the token is kept in a communal deposit.
  • At any point in time, a token can be withdrawn (“burned”) from the active supply, and a proportional part of the communal deposit can be taken with.
  • The tokens are used to bond it to curators per sub-topic, who then curate information with their proportional backing.

For example:

Assume that Truffle (an open source development framework for Ethereum) has an associated curation market.

Its users can mint and coordinate around a token that is used to curate new features (in the sub-topic #truffle.features).

A simple, curation signal would be as follows:
 “In the topic, #truffle.features, curator 0x42b… has backed with their tokens, to include ‘Solidity Testing’ in the new version.

Their backing amounts to 80%. There are 100 #truffle tokens overall backed to curators in the #truffle.features topic, and curator 0x42b has 80 tokens backed in the sub-topic.”

These signals can be interpreted by applications to display this information in different ways (like how Reddit interprets upvotes and ranks it accordingly with their own algorithms).

More examples will be given later.


Optionally, curation markets allow the ability to have an associated beneficiary who benefits from the minting process. This can be useful if a specific 3rd party, for example, is wanted to develop software for the associated topic.

For example, if Ethereum had this model, when tokens are minted, a proportion is also given to Ethereum Foundation. They can then use these tokens to curate information in the Ethereum community, but also then sell these tokens to get a proportion of the communal deposit, and thus it ends up as a funding model.

In some circumstances, the beneficiary can disappear over time (receiving less and less) as the curation market around the topic becomes bigger and is able to support itself.

There are many variations here that is possible and needs to be explored. Beneficiaries however do add additional regulatory issues, considering that this specific entity could be seen as being responsible for creating unregistered securities.

Initial Auction:

In some circumstances, an initial token launch could be desired in order to raise funds, but also to avoid the race that could occur when a new, popular topic is released. Instead, it acts like a large initial batch auction, that could also include the ability to raise an initial fund for a beneficiary.


In April, the Curation Market paper was released. Amazing feedback has been given since and a modified version has been uploaded that includes a lot more detail on how curation markets function and can function.

The whitepaper can be found here:

Given this kernel/protocol, anything that is bolstered by more effective curation (and requirement for coordination) can be created. Here’s some example use cases.

Example usages:

Topic Filtering/Curation (eg, each sub-reddit or hashtag has a token):

Topic-based communities can coordinate around sharing information important to them. If effective curation occurs, it attracts new participants and thus a topic-based community that curates well, can collectively earn from doing so.

Monetizing Open Source Projects:

Curation Markets allows open source projects to earn from the work they collectively create. Curation is important in order to make decisions together. Any open source project can have an associated curation market attached it, helping it to make sure what pull requests should be merged and what features to consider.

Personal Attention Markets:

Our attention is increasingly the most important, and scarcest resource we have. We can earn from it. A person, as a beneficiary, can have an associated curation market attached to them. In order to curate the attention of individuals, participants who want to get your attention, needs to buy your curation market token and use it back/curate information it wants you to see.

Decentralized Bands:

The Cypherfunks was a project I started in 2014 around attempting to form a band anyone can be a part of, that co-creates music together. An altcoin represented the communal interested within the band.

With curation markets, this model can work more efficiently. A band or artist collective can work together to create a certain kind of music. The band, as an amorphous collective aims to make the best music, and uses their token curate it.

If it is copyleft (for example), it just remains as is: free to listen and re-use. If this band has a beneficiary or a foundation, it can opt to sell the music and collect royalties to its communal deposit (hopefully using something like Ujo to do so ;) ).

Collectively curating decentralized, virtual worlds:

In a similar way, curation markets allow for the co-creation of any shared, creative artefact. An example of this is the co-creation of a decentralized virtual world. What its rules are, what its items are, what its canon is can all be co-created and curated by its users.

Topic-based AR filters:

We will soon find ourselves in a world where a few institutions could be in control of what we see in the world. Instead of relying on centralized institutions to do this, we could use curation market to collectively decide what is visible in each AR layer we want to opt into. For example, with something like #geocaching, curation markets can be used to disambiguate what exists at each geographical point/spot in the visible world.

Dank Meme Markets:

Perhaps the earliest examples of curation and meme markets are Dogecoin & Rare Pepes itself. Dogecoin, still around is a currency/token that represents the in-group of users around the Doge meme. Although Dogecoin took on a life of its own, the value of any internet meme could simply be related to its popularity.

The concept of jokingly trading the popularity of memes already exist. A community has sprung up that is already doing this.

r/memeeconomy already has > 201k subscribers.


An Art-Creating, Decentralized Bot:

In the same way that shared, creative artefacts can be curated, in this scenario, the goal becomes that of choosing a great creator. An example is as follows:

A community attempts to curate on what it regards to be good software that will create good art. Every month the most backed git commit hash is used for specific software along with a random blockhash from Ethereum to seed this software to generate a piece of art. This unique piece of digital art is then put up for auction and sold.

The goal of this community is to find software that creates the best art.

The Grand Curation Market & Registry:

I suspect that over time there will be different cost curves, different beneficiary models and other modifications to the generic model. Whilst it would be useful to have a global namespace to more easily find curation markets, committing to a specific model and namespace at this early stage might be premature.

If many curation markets flourish (perhaps multiple per topic), it will be useful to add a disambiguation layer for curation markets themselves. In other words, to curate curation markets: finding the best curation market per topic. There could also be the possibility for topic indexes. eg -> In #cryptocurrency it can point to several sister curation markets related to the bigger topic.

As these things go, anyone *can* create a grand curation market registry (ITS CURATION MARKETS ALL THE WAY DOWN), it will be socially useful to converge on a singular curation market registry. So, this is just a reminder that this is in the works, so that we converge on a singular grand market in the future.

As the smaller curation markets go through their own battle testing, we can learn what the grand curation market needs to eventually look like (cost curve? initial token launch? beneficiary? etc).

Code & Implementations:

With this post, I’m also releasing the alpha contract code for a generic, beneficiary-less curation market.

When deployed, it allows a token to be minted according the cost curve in the whitepaper. Tokens can then be used to back curators per sub-topic. Tokens can be withdrawn from the supply and a portion of the communal deposit be taken with.

This is totally alpha software and need to be battle-tested and audited, so DO NOT use this for building a curation market with substantial value, please.

Technical Details:

The base layer is an ERC20 Token (likely going to move to MiniMe token as the base).

The second component is an extension called ContinuousToken.sol. This is responsible for the minting, communal deposit handling & withdrawal of tokens from the supply. This can be reworked for other potential continuous token model projects.

New APIs:

function mint(uint256 _amountToMint) payable returns (bool)
function withdraw(uint256 _amountToWithdraw) returns (bool)

The third component is the CurationToken.sol that extends the ContinuousToken.sol to add bonding to curators per sub-topic.

New APIs:

function bond(address _curator, string _subtopic, uint256 _amount) returns (bool)
function withdrawBond(address _curator, string _subtopic, uint256 _amount) returns (bool)

The final part of the code is an example of implementing this for a simple Curation Market: Curator.sol. This allows curators to back any information with their bonds.

function back(address _token, string _subtopic, string _info)
function revoke(address _token, string _subtopic, string _info)

Alpha code is available here:

Going Forward:

I’m releasing this code to get this idea and project off the ground. There’s more to build still. Firstly, keep iterating on the economic design. I think some timelocks, and other functionality could help align incentives in certain ways. Additionally, experimentation with beneficiary models are important. UI/UX is pretty unknown. How to show this properly is not obvious. So, different experiments need to be done.

Next step, personally, is to get a thin (shitty) UI around a simple reddit clone done. That to me makes the most sense to try, first.

Please fork, please modify, and deploy this model for new and interesting use cases!


I still feel that this concept or something close to this could be very, very useful for making sure we can all participate in the new world of value creation we all participate in.

Pushing the needle every day. Please let me know what you think!

I’m the Engineer of Societies at ConsenSys and the Co-Founder of Ujo Music. Follow for more posts from us!