district0x Network Fundraiser Recap

A look-back at the district0x Network Contribution Period v0.1

The district0x Network Contribution period v0.1 wrapped up with a bang at 3 p.m. UTC on August 1st. After staying live for two weeks, many were eager to receive and transfer their tokens. Within 5 hours, we were able to complete distribution of all tokens to contributors and enable transfers. After another 12 hours, we were able to complete all distributions to participants in the community advisor program. District proposal rewards remain outstanding, these will be distributed in the coming days.

We have been overwhelmed by the outpouring of support for this project from the beginning, and the entire team is ecstatic with the turnout we’ve received. Moreover, amidst all the recent chaos in the cryptocurrency space, we’re relieved that for our part, everything went according to plan. If there’s a single word to capture the sentiment the team and supporters have felt it’s smooth.

We’ve got a long way to go to execute on our vision, and we’ll have to expand several times over to make it a reality. We’re excited to finally be able to put our heads down and focus on what we originally set out to build.

For posterity, we’d like to capture some of the decisions that went into our issuance model for the contribution period as well as detail the outcome of these.

Priority #1: Distribution

Like many community-driven open source projects to issue tokens before us this year, we had a single goal in mind: distribute the tokens to every single person who wanted them in the first contribution period. Moreover, learning hard lessons from recent token launches, we wanted to avoid any scenario where we’d have to limit contributions from individuals, and likewise, we took the principal of a fair playing field for everyone in the highest regard.

This meant two things in practice. The first was eschewing all kinds of whitelists, presales, or bonus structures. Every single person who participated, whether they were the first or last to send, would get the same rate as the next person. This lead us to the idea of a proportional allotment, where we had a single pool of tokens up for grabs, and the total amount of ETH raised would determine the issuance rate of DNT per ETH. The more you contribute, the more you get. The more others contribute, the less you get, but the more valuable a single DNT becomes. This turned out to be more confusing than we had anticipated — more on that later.

The second thing that maximum-distribution-as-a-priority influenced was the soft cap and security cap mechanisms. For us, a soft cap of $10 million was placed not as a minimum goal, but as a stretch goal. Everyone on the team was comfortable with this amount indicating the line where we’d “want for nothing” regarding team growth and development over the next few years. Any contributions above and beyond that would be accommodated only insofar as priority #1 is concerned — allowing everyone a chance to participate. Thus, the 48 hour period after the soft cap let us avoid congestion as participants had no overbearing sense of urgency (fear of missing out AKA “FOMO” ) to participate immediately.

Likewise, for our security cap — this was a hard line where the team was not comfortable with accepting funds in excess of $50M. I’ve personally been publicly critical of projects which run uncapped sales for this exact reason; participants should have some knowledge of the minimum percentage of total token supply they can expect from their contribution, and there should always be a plan for every fundraising scenario. Running the contribution period with a very high security cap again curtailed any FOMO whilst allowing us to provide the assurances we were confident we could deliver on.

The End Results

Raw numbers:

43,169.47 ETH Contributed

1 billion tokens minted, 600 million distributed to contributors

13,898.71 DNT issued per ETH contributed, or 0.00007194912 ETH/DNT.

Average contribution size: 18.03 ETH = 250,626 DNT

2816 Successful Transactions from 2394 unique addresses

652 unique Community advisors

3109 Token holders

Token distribution:

Let’s break down how each of the different parts of the 1 billion tokens are distributed.

Our original breakdown for 1 billion district0x Network Tokens

Contribution period v0.1

600 million DNT were distributed across 2394 addresses in contribution period v0.1

One of these addresses belonged to Cintix’s tokenbuyer contract, which served an additional 4,148 ETH to 107 unique addresses. You can learn more about that here.

Contribution periods v0.2 and v0.3

180 million tokens are held in a multisig reserve for future contribution periods. These require a minimum of 18 months before they can be unlocked, and will need to be signed by key members of the Ethereum community.

Founders stake

198 million tokens allocated to the co-founders, Joe and Matus, to vest over a 2 year period with a 6 month cliff.

Founder address #1

Founder address #2

Of this 198 million, 1 million tokens are held in reserve for the first hire (me! Alexander) and will be distributed at the end of the vesting period.

The whitepaper promised 200 million tokens for the founder’s stake, however, each founder contributed an additional 1 million tokens to the community advisor program (see below)

Early Contributor and Advisors

Community Advisor Program

Originally 3 million tokens were placed in reserve to fund the Community Advisor Program. However, the founders decided to each contribute an additional 1 million tokens to this pool.

Of the 5 million tokens, 3.945 million were distributed in this program, and 1.055 million remain in the original Community Advisor Program address.

This included several hundred early slack members, nearly 2 dozen translators, and various community contributors of all kinds. In the end 651 entries were tallied.

Special shoutout to Dragoş Ștefănescu for his two part series on the decentralization of organizational governance. You can check out part 1 and part 2 if you’d like to learn more about the philosophical underpinnings of our project.

With all the dust settled, we are extremely pleased to see that we’ve achieved one of the widest distributions of tokens for any project of our size. This was the highest priority for the team, and we truly feel we’ve achieved that with stunning success.

Other considerations

Despite nailing our primary goal, there were several other design choices that we made that are worth discussing.

Block height vs. Time stamps

One of the few issues that came up in preliminary audits was our choice to launch the contract at a specific time stamp rather than a specific block, as most previous crowdsales have done. Doing so left an opportunity for a small amount of variance in which block would start and end the crowdsale. For our fundraiser, this turned out to be totally irrelevant, however, it’s possible for crowdsales that strike a hard cap within a few blocks, this could be a potential issue for miners to game.

Gas and Transaction Load

In the days before the contribution period opening, when we first announced the 50 Gwei gas price and 200k limit, there was a bit of concern that such limits would cause an unmanageable network load, as has happened in previous sales. Through no effort of our own, the Ethereum network held up incredibly, and even in the busiest of contribution blocks, there were no reports of transactions with sufficient fees getting dropped.

Proportional Allotment

As mentioned above, we made a point to give everyone a fair playing field, where the entire pool of tokens was up for grabs, and the final issuance rate against ETH was determined by the total amount of ETH raised. For the team, this seemed to be an intuitive way of doing things, and both contributors and the team seem to be happy with the results.

However, we were blown away by the amount of confusion and explanations this required. The more popular trend in token sales at the moment is to peg the token to an exact rate in ETH, BTC, or USD. This has the negative side effect of potentially leaving unsold tokens, which can complicate the final breakdown of token holders (for instance, giving founders a larger share than intended).

One solution to quell this confusion would have been to keep a running, dynamic ticker live on the contribution page that let contributors check back in and see an up-to-date issuance rate and an expected DNT received amount for the current contribution size. Although this too could have fueled the fire — for instance, someone contributing the first day could have thought they were promised 20,000 DNT per ETH, only to find at the end of the crowdsale the issuance rate was much lower.

It’s not clear what the best solution here is other than persistent communication, but worth considering for any future projects which choose a proportional allotment scheme.

Soft and Security Cap Exchange Rates

Throughout the course of developing the whitepaper and announcing the project, we set all fundraising milestones in USD. In order to launch the contracts that would govern the soft and security caps for the fundraiser, we needed to peg an exchange rate in ETH. This didn’t seem like a particularly problematic issue to us — there is no material difference to the end result unless we exceeded $50million raised in total (because the ETH amounts we set ended up gaining value).

This, however, was another place where the confusion it caused among contributors far exceeded our expectations. Many participants thought that by contributing, their Ether was being “accepted” at a lower rate against the dollar than current market prices, because the contracts were launched at a lower rate. This plays into the above section on misunderstanding proportional allotment, however, in retrospect, it would have been prudent for the team to set a firm date for when the contribution contracts would be pushed live, and define the soft/security caps at the exchange rate at that time.

We’re lucky that the end result is the same, as we ended up below the soft cap both in terms of ETH and in terms of USD, but if we could do it all over again, we’d try to communicate this point forward in advance to avoid some of this confusion.

ENS Contribution Addresses

One of the points we received the most positive feedback on was the use of ENS address names to point to our contribution contract address. Not only is this a user-friendly way to participate (typing a simple name rather than a string of letters/numbers), but it also went a long way to prevent scams, particularly in the wake of what happened with Coindash the day before our contribution period began.

I would strongly recommend anyone launching a public token offering to adopt the practice of pointing recognizable ENS names related to the project to contribution address, and broadcasting these far and wide early on. With enough standardization and awareness built around this practice, we could wipe a significant amount of fraud currently occurring off the table.

The Future

Despite all of the triumphs of the past few weeks, I speak for the entire team when I say that we couldn’t be happier to have closed out the contribution period. The non-stop runaround and nerve-racking job of securing funds is plainly exhausting. With funds secured, tokens distributed, and the voting dapp live, we’re poised to get back to working on building towards what will truly bring value to the district0x Network.

In the coming months, you’ll see us focusing on a few things:

Hire at least 2 Clojure developers

Work through the backlog of district proposals (including payouts!)

Add additional features into Ethlance, such as payments in ERC20, Swarm utilization and more

Further develop d0xINFRA and migrate Ethlance to it

Launch Name Bazaar, accommodating d0xINFRA

In addition, we’ll be working to polish off some policies we’ve left open-ended for now (for instance, when and how to close the voting period, and when and how to move the next batch of proposals through).

All of these updates will continue to be communicated through our weekly district daily blog posts and bi-weekly dev updates. Keep an eye out for those for any future updates.

Once again, from the bottom of our hearts, THANK YOU to all who participated in one way or another. We look forward to building something truly new and unique together!