GoodDollar Quadratic MicroGrant for Entrepreneur’s

Building on Tomer’s idea in June, and some thoughts I’ve had for a while since then, I’m proposing a “GoodDollar Quadratic MicroGrant for Entrepreneur’s”. Let’s call it @GoodMicroGrants for short. The difference is that where Tomer’s coaching is helping a small number of entrepreneurs individually and on a human-to-human level, this proposal complements his in that it could help ALL Entrepreneurs broadly on a economic basis.

With the advent of quadratic funding, we now have a way to decentralize funding. GoodDollar is exceptionally well positioned to leverage this technology since we already have both proof-of-personhood and on-ramping (UBI) built natively into our protocol. Not even Giveth, GivingBlock or ImpactMarket - all of them great projects - have these two features built into their protocols. They all have to manually check their grantors, and they have to rely on third-party on-ramping.

Problem statement:

  1. The GoodDollar LLP doesn’t have a lot of money to give out to grants, especially now during the crypto winter. They - and their larger donors, such as eToro - focus on generating / giving a lot of G$ as UBI. And rightfully so.
  2. Even when they had more money for grants, it took a lot of time and effort to administer any micro-grants. Not time well spent for the LLC, if you ask me, at least not if there are better ways of administering it.
  3. The grants programs to date have tended to focus on “traditional” donations to people in need (which is very admirable and good!!!) but has a few unfortunate flaws: a) It builds on an unfortunate distinction between victims and philanthropists. b) It creates a poverty trap, where people have to remain poor to qualify for more donations. c) It is also deflationary to G$, because the recipients tend to off-ramp to fiat. And d) such donations didn’t do much to encourage entrepreneurship. What the GoodDollar ecosystem arguably needs the most is more utility for G$, more places to spend our G$, to create a more circular economy. Personally speaking, I prefer to give a fiat to people in need, and then instead give my G$ to entrepreneurs who help build the broader G$ ecosystem.
  4. Even if the LLC had a lot of time, people and money, it’s really difficult for any central entity to manage a grant program well. They don’t really know the grant recipients very well, so there is some amount of guessing game and trust involved, hoping and praying that any donated money will be spent well, that the recipients are no scammers. It’s equally hard to verify that donations were used as intended afterwards, so we’d never be able to validate the selection criteria in any scientific way. Plus, it’s not in the spirit of DeFi nor web3 to have to rely on a central entity for permission to receive donations in the first place.
  5. So giving “before the fact” is problematic. But waiting with giving until after the charitable act has been done and completed is also not good. It is often too late, and it involves charities having to risk not getting anything back. A better way would be to donate money a little bit every month, as long as there is progress. This would both create mutual trust and incentivize the recipient to keep going.
  6. Decentralized donation splitting based on simple wallet voting is associated with a lot of fraud, when people can just have a bot spin up a thousand wallets to vote a thousand times. You might not think this is a problem but it really is, especially when there is easy money to be had at the end.

The good news is that we can easily solve all of these issues So here is my proposal (yes, it’s in the same order as the problem statements):

1. Donations from where? - The community at large has G$ and many of us are willing to donate it. We know from the past that UBI recipients are very generous. If there is a good cause to give to, then they want to donate their G$.
2. Administration? - Instead of centralized campaigns, let’s build a community-powered and smart-contract-powered way of managing donations. Let’s create a decentralized and perpetual donation program. For example, we can make a form where anyone who wants to participate can sign themselves up to the program, describe who they are, what they are doing, where, etc. And let’s build a smart contract that we all can donate as little or as much as we want to. The smart contract should be transparent and audit-able so that we can all trust that it does the right thing and splits the donation to the right recipients in the best way.
3. Donate to whom? - For max impact to our budding GD ecosystem, let’s build a donation program that incentivizes entrepreneurs to do good things with GoodDollar = receives them as payment. Anyone that accepts G$ as full payment or partial payment for goods delivered or services rendered is a hero in my eyes. And let’s also recognize that it’s near impossible for most people to claim enough G$ to pay for very much at all. As I’m writing this, daily claims are worth USD 0.017, meaning that it would take 60 days to claim enough for a 1$ doughnut. So let’s create a donation “matching” program that allows us to recognize and reward anyone that accepts G$ as payment. Because we need more of them. They are actually our best Ambassadors imaginable, they spread the Good word in a very real sense.
4. Evaluation criteria? - I propose two very simple evaluation metrics: how much did someone that signed up to participate receive in G$, and from how many different wallets did they receive it. Why? Because both total value and total number of customers are important. Actually, the customer count is probably twice as important than the total value and should be counted twice (which is why it’s called quadratic). I’m also proposing these specific two metrics because they are easily measurable, to the point that we might not even need any human to be involved in measuring. Almost zero cost of admin = more donations to the recipients. Btw, daily claims should not be counted, only transfers that do not involve any of the central wallets should be qualified.
5. Periodic “underway” payments? - If we assume a monthly cadence, it could look something like this: Payments made during the month of January would be evaluated on the first day of February. A resulting percentage is calculated for all recipients for a total of 100%. All the donations received and collected during January are then automatically forwarded to the recipients according to the distribution. Why? This encourages entrepreneurs to try and sell as much as possible, to as many customers as possible, and then get a proportional part of donations thereafter. If their sales are successful they will be encouraged to continue. If their sales are not successful, then donors will know that they are not going to fund a failing business. So we would be encouraging and amplifying a free market with well functioning market dynamics.
6. Who to evaluate? Fraud prevention? - In this proposal we would be letting consumers and customers of the entrepreneurs do the “voting” for us, rather than some artificial other method. No beauty contest, no centralized evaluation criteria, no formal voting required. The theory behind this is simple - the strongest indicator of entrepreneurial success is when people choose to endorse a business. So let people “vote with their feet” by counting how much and how often they buy. But which purchases should count? My suggestion would be any human-triggered transfered is fair game. So only payments from whitelisted wallets are eligible, because we only want to count human customers and again discourage bots. Payments to a non-whitelisted wallet are OK though, as an entrepreneur might be using a business account.

So… how would this work?

  • Human actions

    • Donors send G$ to a designated wallet / smart contract address whenever they want, preferably once per month. OR if they only donate yearly, then split it up across twelve different donor wallets, one for each month.
    • Entrepreneurs sign up to participate through a TypeForm on the GoodDollar website. Signup is good for 12 months.
    • Entrepreneurs start accepting G$ as payment or partial payment, advertising it on their sites
    • Customers start paying for goods and services with their G$ UBI, sending G$ to the entrepreneur’s wallets
    • Entrepreneurs have 11 months to withdraw their funds from the donor contract and/or to sign up for next year. If they forget, then the funds go back into next year’s allocation for that month.
  • Automated actions, at the end of the month:

    • Analyze volume and value of entrepreneur addresses
    • Run volume and value through a quadratic formula to calculate percentages
    • Distribute donations for the month according to percentages

What’s needed to make it work? (Answer: Not much.)

  • Developing a TypeForm input form
  • Developing a PaymentSplitter contract
  • Launching 12 payment splitter contacts, one for each month of the year
  • Quadratic funding analytics. Probably have to be done manually in the beginning until we can figure out how to best automate.
  • After that it’s really only about marketing.
    • Spread the word to all your entrepreneur friends to sign up and start accepting G$ payments
    • Tell all your friends to get a wallet, claim daily and then donate monthly
    • Help any entrepreneurs market their business
    • But most importantly, buy their goods and services

Progress to date:

  • When it comes to the TypeForm, I’ve already started on one and could use your feedback:

  • I’ve also started on the payment splitter smart contract for this purpose, but need help from you guys = the community to finish it, as I’m running low on time myself.

  • I actually also created this proposal as part of GitCoin a while back. Unfortunately it was refused by the GitCoin team due to lack of a proof of concept. I’m finding myself short on time to drive it myself, and that’s why I’m launching it here as a request for help. If we can get this going, then GitCoin might become a continuous source of donor funds for this too.

In summary: If you think @GoodMicroGrants is a worthwhile idea, please like / upvote. If you have time and interest to help, please reach out to me directly. I have some money set aside for this idea which I can either use to pay a few of you guys to help develop it, and/or I can use it towards helping to fund the first 12 months of the program. Or until we finally can get GitCoin to add us to their program.


PS> Here are also two longer-term (and less thought through) follow-on proposals, assuming we can first get the above suggestion up and running…

  1. Double or triple the matching for people who both a) promise to not sell their G$ for any other currency and b) shows some evidence of spending their G$ to other qualified wallets, for example gives to CryptoForHer.
  2. When you’re developing v3 of the GoodDollar protocol (@sirpy), I would LOOOOVE to see a function whereby users could dedicate their UBI to go directly to @GoodMicroGrants rather than their own wallet AND if and only if they do so, then they don’t need to claim daily any more. In other words, I’m fully delegating my proof-of-personhood & my UBI and I know that it goes to whoever has the most real use for it and that the daily claim is 100% taken care of and automated.

Nice one @Noak! We need to decentralised all of this as you stated.

1 Like

I love it.
Here is the main issue I see
It is still possible to game the system if a community choose to collaborate and create fake volume. By transferring their G$s to some wallet registered as a business just to get the matching funds, or even the business wallet sending back the funds to the purchasers so they can “purchase” again.
So I think that there still need to be some kind of committee to approve the businesses or at least to be able to disqualify suspected ones.
Maybe also limit the volume calculations to 1 tx per unique human wallet

Some suggestions:

  1. I’m not sure we want to split of all the donations of each month. Since we are talking about businesses here, what we are doing is subsidizing transactions in G$s, IMHO it doesnt make sense to give a business >2x its income. What I would suggest is limiting each month matching donations to the total volume of that month. and cap the matching for each business to min 20% and max 100%
  2. Cask protocol on Celo can be a good partner for allowing people to automatically stream their claims to the GoodMicroGrants (though they will still have to claim)
  3. The payment splitter can probably be much simpler, as the volume and quadratic matching has to be calculated offline anyways. So every month the committee would run the quadratic matching and submit the results to the contract (ie which account is entitled to how much)
    see GitHub - cardstack/merkle-tree-payment-pool: Merkle Tree based Payment Pool
  4. how can we collaborate with gitcoin on this?
  5. as always, how can we bootstrap this initiative together with the community?
  • feedback on needs and requirements from G$ entreprenuers on this plan
  • building the committee
  • developers
  • bizdev (gitcoin/ cask)
  • marketing (getting to entreprenuers, donators)

@Tomerba @goodanna @pedrosa.eth @Meri_Fernandez @LewisB

GoodDollar always Growth DAO

Yes, limiting the volume calculations to “1 purchase tx per unique human wallet per entrepreneur wallet” is absolutely part of the quadratic matching formula. I don’t think we have to worry too much about a whole community collaborating in a scheme. They probably won’t because it’s not the honest thing to do and dishonest people usually only attract very small numbers. It’s almost impossible to recruit a whole village to such a scam without anyone reporting it. That’s the beauty of quadratic matching.

I think there will be some trial and error in fine tuning the parameters of the quadratic formula. Agree that we might want to put some cap on it, at least before we have experience and have achieved critical mass. This would be a great task for a MicroGrant-DAO to work on. I’m hoping to be a member, and want to add just the right amount of donor funds to reach a reasonable max matching & make my own donated funds last as long as possible. I do think the cap should be higher than your suggestion though. With the current low daily claim value we have to assume that G$ will only be partial payment for many. If for example 10% of a haricut is paid in G$ then a 100% cap would only be a 10% increase for the entrepreneur. GitCoin often operates in the 7x range. For these reasons, I would set the cap at maybe 10x match to start out. So in the previous example, the hairdresser could reduce their price by 20% for people paying 10% in G$ and still make between 100-140% if the multiplier ends up somewhere between 5x-10x

1 Like

Thanks for the suggestions.

Cask protocol looks cool. But I’m not sure how you’re thinking it would work, seeing how we want to make pay a different amount each month and Cask is built for frequent transaction of the same amount. It also seems like they only support stablecoins, not sure if we can integrate G$ with their protocol?

What’s the benefit of the merkle tree idea? From what I can tell it might save some effort and gas in only having to post once per month, rather than once for each entrepreneur per month. But is also much more complicated for entrepreneurs to learn, unless we pair it with an app. Maybe save this one for a version 2?

1 Like

I’ve started up a board on DeWork to manage the required tasks. Anyone interested in helping out, please sign up for one or more tasks here: Good MicroGrants | Dework

@Noak I love it and am so happy to see this come to life. Such a valuable contribution to the community and something we’ve wanted to do for so long.

I agree with you @Noak that we should design the grant structure to facilitate entrepreneurs that want to offer incentives / discounts based on G$ (aka accept partial payments in G$). I’d love to be a part of the conversations of what are the learning goals of this MicroGrants DAO and what we are hoping to learn at this experimental stage.

In general, I think the form looks great. The only thing I would recommend is maybe adding a few examples of who might be a good candidate to be a GoodDollar entrepreneur, and what would make an interesting grant recipient. Earlier in 2022 when the LLC planned to sponsor a larger scale grant budget, a Grants page was developed on the Community site that could provide some useful language for you to use:

A few ideas for how to find the initial people to support the committee:

  1. @Ewuoso has expressed interest in project managing the working group, and coordinating the cohort as part of his ambassadorship. You should connect on that if you haven’t already :slight_smile:

  2. We can announce that we are looking for participation from the community of all sorts via social media @Meri_Fernandez

  3. Present on an upcoming community call - @jessica & @Meri_Fernandez can help get it scheduled in one of the upcoming sessions

  4. When the form is ready and we are ready for potential participants to apply, @pedrosa.eth I think we should promote through the wallet (and Goodswap feed, if ready :slight_smile: )

This is a nice idea @Noak . I will be willing to be part.

Sharing an invite link to the Telegram group for this project: Telegram: Join Group Chat

1 Like

Awesome, please sign up as “I’m interested” on some of the tasks here: Good MicroGrants | Dework

1 Like