(this post assumes knowledge of Quadratic Funding - please checkout https://wtfisqf.com/ if you dont undrestand QF first)
The network effects of QF
Quadratic funding is really powerful because the amount a project receives is correlated to the number of unique contributors to a grant.
This means a $1 contribution can be worth $10, $200, or even $1000 to a project.
This graphic shows this dynamic pretty well from a user level:
This graphic shows the network effects dynamic pretty well from a network level.
Allo Protocol
Gitcoin just announced that the new version of QF is going to be called Allo Protocol. Allo is short for allocation.
The protocol github is here.
Stacking Allocation Protocols
The matching multiple dynamic can get EVEN more powerful if your QF setup allows grants to be in multiple rounds of matching.
e.g. if Project X₁ is in QF Matching Round Y₁, the matching multiple of that is Z₁. And if you add Project X₁ to Y₂Y₃…Yₙ, then the matching multiple of it becomes Z₁ + Z₂ + Z₃ + …Zₙ. or sum(Z₁…Zₙ)
For example, if a grant gets
- $250 matching on a $1 contribution from Grant Round A
- $500 matching on a $1 contribution from Grant Round B
- $250 matching on a $1 contribution from Grant Round C
- $200 matching on a $1 contribution from Grant Round D
Then in total it could get a $1200 match for a $1 contribution, just because its in multiple grants rounds at once.
This in fact did happen for Coin Center during GR12 ($1 contribution == $1000 in matching). The matching multiple was so good that the twitterati though it was too good to be true.
This is an extremely powerful primitive! If each QF matching pool is like a fan, then the combination of several matching pools together is like a jet engine!
The network effects of that look something like this
What I think is especially cool about this is how the value creation just compounds as you add more rounds that stack on top of each other (assuming the median grant is in multiple rounds). For linear increase in num rounds, the value creation grows exponentially
Here is a rough mockup of how the number of subrounds and overhead of running them (red and blue lines growing linearly) creates exponential value to grant owners (yellow + green lines, growing exponentially)
Stacking Grants Rounds on Grants rounds
We live in a pluralistic world. We are all part of numerous communities, networks, organizations, contexts, systems, and stories. What I think is cool about Gitcoin Grants is that each of the grants in Gitcoin has a lot to gain from the multiple grants rounds it is in.
I can envision a world in which each public good is supported by dozens of public goods around it. This stackable approach to grants rounds could be the architecture of an unstoppable pluralistic infrastructure for funding public goods! (More on this here)
Building a Meta-Allocation Protocol
The multi-round-stacking is something that the old centralized and monolithic Gitcoin Grants Product supported (hey, I guess monoliths are good for something!) but Allo protocol (which is decentralized and modular) does not.
Some requirements:
- The grant checkout flow shows a match estimate
- The grant checkout flow match estimate considers n rounds, where n is the number of active rounds the Grant is in.
- Upon hovering on the match estimate, user can see the breakdown of where the matches comes from, by round.
- A “Match History” page that shows the current, past, and future Grants rounds a grant is in (along with the contributions and matching amount for each)
Challenges to work through
- Ethereum has a modular architecture. How does this work across multiple L2?
- Allo Protocol is still in Alpha. Are they ready for this?
If you’re interested in forking Allocation Protocol and building a Meta-Allocation Protocol let me know! kevin@supermodular.xyz