Context
Over the last 12 months the ENS DAO made 22M USD in Revenue (dollars in for domains) which amounts for 30M of annualized income (income just for fees in the period). If we look at the daily revenue since January we will see a downtrend since the peak in april, offset by some occasional peaks pushed by premium income. Over the lifetime of the DAO, these funds have primarily gone to the endowment, which holds 59 million dollars today, about $9M has gone to ENS labs for past and ongoing work and almost $8M has gone to working groups which work on multiple fronts including multiple grant giving programs.
The Problem addressed
Our constitution states:
"Any income generated to the ENS treasury is to be used first of all to ensure the long-term viability of ENS, and to fund continuing development and improvement of the ENS system. Funds that are not reasonably required to achieve this goal may be used to fund other public goods within web3 as ENS governance sees fit."
I believe with the current endownment already fulfills much of the criteria of ensuring the long term viability of ENS and I believe we can afford to use more funds to āimprove the ENS systemā.
Right now we have two categories of projects funded by ENS: we have ENS labs, which receives over $4M a year and we have projects funded by Working Group grants, which typically gives out grants smaller than $100k. Thereās not much in between.
So if you are a developer (or a designer, or a branding person, conference organizer, or artist) who wants to focus your full time to ENS you have 3 options:
- Get a job at ENS labs (obviously not possible for whole teams)
- Apply for a small grant in a single project (which can take months and is not guaranteed to be paid and is not big enough for teams)
- Make a direct EP for the DAO to ask for money
This is not an hypothetical situation: I know multiple projects that are extremely talented and have been dedicated to the ENS system for years that are right now in this in between state and are considering the third option. The first few projects have a higher chance of getting the votes so as soon as one development shop makes an EP proposal, multiple others are bound to make the same and create a chaotic race to EP which will create governance chaos.
Iād like to propose another option:
Annual streams for service providers
Streams represent a great innovation in crypto: For Governance, they can be canceled at any time, so itās a good way to stop a service provider who isnāt performing well. On the other hand, for the provider itās a guaranteed income until the DAO changes their mind, meaning that inertia is in the providerās side. Itās no coincidence itās how ENS Labs is funded: theyāve only needed to ask once.
The DAO has a revenue of about 40k USD per day. ENS Labs gets a stream of 11,500k USD per day. I believe we can afford to create a new stream of another 10k USD per day (3.6M per year), but this will be distributed among multiple providers.
How would it work
A total budget of $3.6M/year of a stream would be announced, as well as a series of goals and projects weād like the service providers to work on. Service providers would then provide a pitch deck listing the projects they intended to create, plus some documentation to showcase their capacity to deliver and a requested budget (each individual ask not exceeding $1M/year).
Then a snapshot would be put in vote with an Approval voting process. A greedy algorithm will then be applied:
- Vote Cut-off: We only look at pitches that get at least 1M ENS votes. This weeds out the less popular options right away.
- Top Pick Wins: The provider with the most votes is a shoo-in. They get their stream, and that amount is cut from the pot.
- Add More, But Watch the Budget: We go down the list of next most-voted providers. If adding a providerās budget to the current total keeps us under $3.6M/y, theyāre in. If not, theyāre out.
- Stop When: We either hit the total cap or no one else can fit within the remaining budget or has enough votes to qualify.
Which projects would be eligible to be funded
There are lots of initiatives that can be done in ENS but canāt be done by ENS Labs (mostly because they are already doing so much) and canāt really fit in smaller 100k grants.
Per the constitution, the focus would to develop and maintain projects to improve the ENS system, which would include (but not limited to these) the following goals:
- Crafting alternative open source Front Ends for alternative audiences or platforms (a frontend focused on non web3 users, a front-end focused on social media or other countries etc)
- Developer Tooling (SDKs that would increase the ease to integrate ENS into other apps, including easier onboarding, searching for names, or more advanced integration, or SDKs for mobile or desktop apps, etc)
- A solid implementation of a referral program, including any contracts, dashboards needed and out reach to make sure the program is successful
- Improvements to the ENS base layer contracts to enhance the experience or allow cheaper batched transactions (including auditing current and new code, all in coordination with ENS Labs and other developers)
- Create and maintain better tools to allow ENS names to be used with decentralized storage solutions (More solid IPFS integration, tools for automating cross posting, integration with non web3 solutions, etc)
- New experiences of trading names off chain
- Experiments in other platforms or complete new usages that we havenāt thought about
A final list of these could be later voted or decided, but the idea is to give specific guidance on what we need, but also select great talent that will come up with solutions for problems we are not even considering.
These service providers would not be expected to work as spec builders delivering specific projects designed and specād by committee, but rather would be expected to have their own initiatives, create new bold ideas and fail often at them. A lot of the best ENS improvements (offchain registrars, profile avatars, dns integrations) did not come from building features voted by a large group, but rather the result of passionate deeply knowledgeable developers who were free to experiment. Overall this could guarantee that we have a broader set of engineers and great talent involved in multiple experiments with some bare financial security guaranteed by the DAO. If some of these fail to deliver much of value after a year, the DAO would hold another vote to choose new ones, and if something goes really bad (one of the providers closes shop or is discovered to be a new SBF) we could vote to terminate the stream immediately.
Until when these streams would exist?
Streams would be created with no set end date (but we could limit the total amount we stream for security reasons) but with an expectation that after a year we would look back at the process and consider a new vote to select new providers (at which point current providers could use the opportunity to change their ask too). The DAO would also reserve the right to terminate any stream at any moment in extreme circumstances (one of the providers closes shop or we run in a SBF situation with one of them). Of course, since the DAO needs to vote on all changes, the providers would naturally get an advance notice that they were being considered for termination.
What if multiple companies work on same or similar projects? Isnāt there a risk for redundancy?
Itās not necessarily a bad thing to have different implementations of the same idea. Ethereum is healthier for the fact that there are many different implementations of nodes. There are many ways to build an online shop that cater to different audiences. Itās not bad.
Would these projects be open source? What about companies that already make money?
Ideally all projects funded by the DAO should have a component that is open source and can be reused by other companies. But itās ok for service providers to also make money from their own products and even have outside investors ā in fact it would be even desirable as it could work as an incubator to help launch independent ENS related companies.
What would be the time frame for this stream?
Ideally we want projects to be working for the year of 2024. It could be possible to time everything to have the vote happen by the end of November and then a stream start by January, but due to holidays it might be more realistic to desire the full stream to start in February.