Júlio Santos

@julio_santos

Getting intimate with Ethereum tokens

Purpose, creation, distribution and usage of protocol and application tokens

tl;dr: This post attempts to shed some light on what Ethereum tokens are: what they’re for, as well as how they’re created, distributed, and used.
We’ll look into token economics, how a blockchain-based app works, and how this relates to value and ICOs.

As with any disruptive technology, Ethereum is still hard to grasp for a lot of people. It always takes some time for folks to become accustomed to think within a new paradigm. We’re still in those early days where we haven’t settled on the appropriate metaphors to use, and too few people have been exposed to it for a common consciousness to begin to form.

Aside from this maturity, or consciousness criticality, there’s another aspect of blockchains that makes them particularly hard to understand. Blockchains are, as Trent McConaghy brilliantly puts it, incentive machines. This is a new concept, and one that makes this technology much more than just dumb infrastructure — but also tougher to grasp.

Blockchain is the second major construct on top of the Internet. The first one was the Web, which we can define as a collection of protocols and standards (HTTP, HTML, URIs) from which a global information and communication space emerges. Its infrastructure has allowed us to build all sorts of applications on top, all the way from blogs to shops to social networks.

Blockchain introduces a tremendously powerful new feature — the ability to shape the behavior of its participants

There’s a great many ways in which one can use the Web, but it is ultimately limited in what it can do. Comparatively, Blockchain introduces a tremendously powerful new feature — the ability to shape the behavior of its participants. That’s what Trent means with incentive machines.

In this sense, a blockchain acts very much like a good old economic system — without centralized gatekeepers. This too is a collection of rules from which a set of behavior-shaping incentives emerge, and it’s not new. What’s fascinating, however, is that Blockchain allows us to experiment with new economic systems without having to take over a country. You can prototype a new economy, deploy it on a blockchain, have some folks sign up, and watch people vote with their feet as a proxy for the adequacy of your design.

Blockchain allows us to experiment with new economic systems without having to take over a country

Think about it — the great innovation of Bitcoin wasn’t that it used a blockchain. It didn’t even invent it. Bitcoin’s genius move, which inspired a whole generation of blockchain-based economic designs, was to invent a way to incentivize folks to do its bidding: guaranteeing the security and widespread availability of its network. It does this by rewarding miners (people who run nodes and group transactions into blocks) for their work with newly minted Bitcoin.

Ethereum does the same with Ether. In order to use the network in any way, you need to pay gas — and gas is paid in Ether.

Similar incentive mechanics can be extended upwards into arbitrarily complex constructs. Ethereum-based protocols and apps, like Gnosis, often deploy their own tokens in order to build their economy on top of Ethereum’s economy.

Let’s take a look under the hood to get a better grasp of all this. We’ll start by presenting the concept for Meetcoin, a hypothetical blockchain-based dating app[1]. We’ll study its incentive structure, and then move on to explain how its tokens are created, distributed, and used.

Meetcoin — blockchain-based dating

Meetcoin is our hypothetical new dating app that attempts to align the incentives of both stakeholders in the dating facilitation game: the platform, and its users.

In creating a dating economy, we’re concerned about encouraging the emergence of desirable behavioral patterns, through the deployment of the right incentive mechanisms.

In order to better bring home the point about the incentives, consider a dating app that’s supported by advertising. Since the app makes money from showing you ads, it makes more money the more ads you see. This app is then counterproductively incentivized to find matches for users as poorly as possible. This is because, once a user finds a match, they’re more likely to stop using the app, which means it can’t make more money by showing them more ads.

It doesn’t take much to conceive of a perfect dating platform. It just needs to do one thing really well: produce great matches for its users while demanding the least possible amount of effort. In support of this optimization goal, Meetcoin has 4 killer features that use incentive design to encourage the emergence of a great dating economy. Meetcoin’s operation revolves around its limited-issue token, Ṃeet, which is required to use the app.

Detailed user profiles

Upon joining the app, the user is asked to complete their profile.

More complete profiles allows Meetcoin to produce better matches, so Meetcoin incentivizes the user to complete every field by rewarding them with some Ṃeet, so that they don’t need to spend any money in order to start using the app.

Rich discovery tools

Meetcoin makes available a thorough set of searching and filtering tools, in order to make it as efficient as possible for users to quickly find the date they’re looking for.

Since users are incentivized to provide detailed profiles, Meetcoin can leverage this data to produce automatic recommendations of matches, saving time in searching and filtering.

Once a user finds another user they like, they can send them a message. Every message costs a certain amount of Ṃeet to send, which disincentives spam and incentivizes targeted messages.

Limited inbox and priority access

Users can specify the maximum number of messages they’re open to receiving per day. If their daily inbox is full, new messages queue up until the next day. It’s possible, however, for senders to skip the queue by paying additional Ṃeet.

For example, say that my inbox limit is set to 3. I already have 3 messages there from Alice, Bob and Charlie. If Dave sends me a message, I’d only see it tomorrow. Knowing this, Dave can pay extra Ṃeet in order to skip the other users in my inbox queue. This incentivizes better matches, by having users demonstrate their conviction with the match quality by paying more (they’re putting their money where their mouth is).

Once I choose to reply to a message, there’s an open communication channel and no more Ṃeet is required to proceed.

Here’s how the Ṃeet flow happens here:

  • If I ignore a message, the Ṃeet paid to send the message is refunded to the sender.
  • If I open a message but don’t choose to reply to it, I get to keep all of the Ṃeet paid to send the message.
  • If I open a message and reply to it, Meetcoin takes a a small percentage of the Ṃeet paid to send the message as a fee.

Notice how this aligns incentives well. Meetcoin, the app, only gets rewarded if it actually produces a match (a match being represented here as a reply to a message).

Date feedback

Users can be rewarded with additional Ṃeet if they both report having gone on a date, and provide feedback about how the date went. This allows Meetcoin to further calibrate its AI, which is why it’s rewarding users for it.

Incentive structure

Meetcoin’s token economy generates a set of incentives that can be summarized as follows:

  • Users are incentivized to provide detailed information about themselves and the dates they go on. This feeds into efficient search and recommendation systems, allowing for matches to be generated more efficiently.
  • Users are incentivized to only send messages when they’re relatively sure they’ll get a reply. Otherwise they’re spending Ṃeet for no reason.
  • Meetcoin in incentivized to produce the best possible matches, because it’s only rewarded when a match is made.

This by itself should help make the “blockchain is an incentive machine” statement clearer now. We’ve shown how a set of properly assigned incentives can nudge the users to behave in a way that is beneficial to the network and everyone in it.

But we’re not done. You see, Ṃeet tokens are finite. Their scarcity is enforced by the underlying blockchain. As more users hear about the virtues of Meetcoin, they’ll want to join the app, and they’ll need to buy tokens to be able to use it. Since tokens are finite, someone will have to sell them for you to buy them. This puts upward pressure on the Ṃeet token price, driving its value on the open market further up, which rewards early adopters and investors who got or bought Ṃeet when it was cheaper.

A cold-start rocket

This is more than a welcome side-effect. This feature of blockchain-based social networks helps with solving the cold-start problem: it’s hard to attract people to an empty network. Given that many “free” networks exist (where users pay by granting the operating entity rights to their data, and being shown ads), it’s hard to create and populate new networks.

blockchain-backed scarcity allows for the deployment of a token economy which helps solve the cold-start problem

Enter blockchain. Since it’s possible to create a token economy, suddenly networks can be better than free — they can reward people for usage. This means it’ll be easier for developers to experiment with new networks, since they now have a tool that gives them a chance against existing ones.

I can’t stress this enough: blockchain-backed scarcity allows for the deployment of a token economy which helps solve the cold-start problem.

For Meetcoin in particular, this is great news. Since more attractive[2] users are more likely to make money from the app, they have an incentive to join. This is expected to incentivize online dating users to try Meetcoin in particular, since it’s now seeded with all these attractive folks.

Meetcoin’s ICO

This token economy, and its path to growth, is the justification for Meetcoin’s ICO. There’s many ways to conduct a token distribution, but Meetcoin decided to magically create 100M tokens and sell 20M of them, at a pronounced discount, during their ICO.

Tokens bought during the ICO will be significantly cheaper than what they’ll be worth when the network is running, and cheaper even than when the network is popular.

Put simply, that is why investors participate in ICOs.

Ṃeet tokens under the hood

Now that we have a grasp of Meetcoin’s token economy, let’s look into the tokens themselves.

Note that there are many ways to create, distribute and use tokens. Indeed, the examples below will be overly simplistic and do not represent an endorsement. Consider it an illustration for the sake of clarity.

How tokens are created and distributed

Meetcoin generated their token supply by creating a smart contract and deploying it on the Ethereum network. It was a very simple smart contract, that essentially does 3 things:

  1. It states “hi, I’m a smart contract, and I own 100M Ṃeet tokens”. By deploying this contract, Meetcoin magically wills 100M Ṃeet tokens into existence, and declares 20M of those to be up for sale. That’s it. Really.
  2. It allows Ethereum users to buy any number of those 20M tokens for a price of 0.01 Ether each. Assuming there are enough tokens left, anyone can send, say, 1 Ether to the contract, and the contract will now state “the address 0x123abc now owns 100 Ṃeet tokens”. That’s it. Really.
  3. It allows the owners of the contract to withdraw the Ether that has been deployed into it, so they can fund Meetcoin operations. That’s it. Really.

How tokens show up in a wallet

Meetcoin could choose to release their own wallet software, with which users could check their balance, make transfers, etc. However, they decided to go with the ERC20 standard. Many Ethereum wallets already support this standard, which makes it straightforward for their users to work with the Ṃeet token as they please.

How tokens are traded

After their sale, tokens are usually not good for much. After all, Meetcoin is still in the concept phase, and the ICO proceeds will be used to develop what’s left of it.

As it often happens with token sales, Meetcoin will use some of the ICO proceeds to pay one or more blockchain exchanges (such as Bitfinex or Kraken) to list their Ṃeet token. This makes it easier for users to trade the Ṃeet token, and for people who didn’t manage to participate in the ICO to buy Ṃeet tokens afterwards.

Having the token specification follow a standard like ERC20 facilitates the listing on exchanges, since it amounts to less integration work on the part of the exchanges.

How tokens are used

Since Meetcoin is blockchain-based, the bulk of its implementation relies on one or a network of smart contracts, instead of a traditional application server. These smart contracts encode the application logic and token economy.

Interacting with these smart contracts is directly is still quite the nerdy process, so Meetcoin offers their users the possibility of ceding control of their token wallet to Meetcoin so that they can use a good old regular web interface to the application instead. Power users still have the choice to remain in control of their tokens.

Meetcoin thus builds a web front-end for their app, and allows the users who choose to do so to log in with a regular username/password combination. For these users, their Ṃeet token balance will be displayed in-app as a regular in-game currency balance would, and the Meetcoin app will handle all the token transfers behind the scenes.

For example, let’s say Alice sends a message to Bob. Here’s a breakdown of the potential logic happening behind the scenes:

  1. Meetcoin takes 1 Ṃeet token from Alice and puts it in escrow. It then delivers Alice’s message to Bob.
  2. After a week, Meetcoin checks on what happened to the message.
  3. If Bob didn’t open the message, Meetcoin will refund the 1 Ṃeet token to Alice.
  4. If Bob opened the message but didn’t reply, Meetcoin will transfer this 1 Ṃeet token to Bob.
  5. If Bob opened the message and replied, Meetcoin will transfer 0.9 Ṃeet tokens to Bob, and 0.1 to itself.

This all happens through broadcasting transactions onto the Ethereum network. These transactions invoke functions on the smart contracts which encode Meetcoin’s functionality.

Note that these transactions, since they work with the Ethereum network, need to pay for gas in Ether. The simplest way to handle this is by requiring the user to keep an Ether balance, but there’s other ways that could make it simpler for users. For example, Meetcoin could automatically trade some of the user’s Ṃeet tokens, behind the scenes, for however much Ether is necessary to issue the transaction.

Beyond the basics

I hope that this simple example helps shed some light on token economics.

Token economies can indeed be a lot more complex and purposeful. Check out the Ocean Protocol and their whitepapers for one of the best examples out there.

I’ll leave you with a few additional resources for further exploring:

Thinking of doing an ICO? Talk to us.

[1] This dating app concept is very much inspired by Luna, an application that I chose for the simplicity of its cryptoeconomic model. I hold none of their tokens, and my choice to riff off them doesn’t constitute an endorsement.

[2] Attractive here refers to their ability to command attention on a dating platform, and doesn’t carry any judgement on my part.

More by Júlio Santos

Topics of interest

More Related Stories