[Discussion] Allo Fee Switch Proposal

Allo Fee Switch Proposal

Abstract & Background

Fire Eyes DAO has been working towards creating a roadmap for GTC Value Accrual as well as driving more clear sustainability and value to the GitcoinDAO.

As mentioned in the GTC Value Accrual Intro forum post, introducing a fee switch to the Allo Protocol is a straightforward decision that can allow us to begin this journey.

This forum post aims to ignite initial discussion on an Allo fee switch, not be a ‘ready to vote’ proposal.

Motivation

Allo protocol v2 (and its predecessors) have had $60m+ in combined volume. The introduction of a fee to Allo would create a new revenue stream which would be passed back into the DAO treasury.

Uniswaps previous discussion on the activation of their fee switch provides some guidance around the process involved in making this change, and valuable insight into the wider community response to such a change.

Although Gitcoin is a different protocol to Uniswap, the foundation of these decisions should follow the same logical course. Protocols cannot sustain being public goods indefinitely and leaning into value accrual as a protocol is important.

Specification

This initial pre-proposal discussion centres around two decisions that need to be made before we move forward:

  • Firstly (1.) if the fee is added to Gitcoin’s deployment of Allo protocol or (2.) to all deployments of Allo protocol.
  • Secondly if this fee was to be added, what percentage of volume the fee would take.

Firstly:

  1. The fee switch could added to the Allo Protocol but only be enacted via the official Gitcoin deployment, not at the overall contract level.

    • This allows others to fork the contracts and deploy their own instance without the fee if they wish to.
  2. The fee switch could be implemented at the contract level, meaning that all deployments would include the switch unless it was removed from the contract itself.

    • This more strongly encourages anyone using the allo contracts to contribute to the funding of public goods via GitcoinDAO.

Secondly: The fee level is an open question - we invite community feedback and discussion but envision the fee sitting at one of the following levels:

  • 0.5%
  • 1%
  • 3%

For context, looking at these fee levels retroactively gives us an idea of how impactful a fee could be over time:

GG20:

  • 0.5% of total GG20 donations = $3165
  • 1% of total GG20 donations = $6330
  • 3% of total GG20 donations = $18,990

All time:

  • 0.5% of total Grants distributions to date = ~$300k
  • 1% of total Grants distributions to date = ~$600k
  • 3% of total Grants distributions to date = ~$1.8m

These numbers show value flows that could be directed towards sustainability.

It is important to note that the proceeds of this fee will be deposited back into the Gitcoin DAO treasury, to be directed into funding both the development of Gitcoin infrastructure, and the commons more broadly. As such, it makes sense for the fee to be higher than average and that most users would be accepting of this given that the fee exists purely to sustain the provision of Allo and related public goods.

FireEyes would recommend that the switch be implemented at the Allo contract level with a fee of 1%. This is because it provides a clear value proposition to GitcoinDAO’s sustainability whilst remaining reasonably unobtrusive to users donating via the Allo protocol. It is obviously still possible to remove or reduce this fee switch, but this would need to be an explicit decision to exclude by anyone deploying.

Drawbacks / Risks

There are reasonable discussion points that this type of fee switch could damage Gitcoin’s public goods reputation, here’s how we feel that we could mitigate this if deemed necessary by the community:

  • Start with the checkout process having an optional donation/fee to Gitcoin DAO.
  • Only enact the fee switch on the official Gitcoin frontend, and let others deploy their own frontends without fee switches.

Allo has established itself as a credible tool for capital allocation, projects with large sums of capital have two incentives to use Allo with a fee switch.

  • It has pre-existing infrastructure which is easy to use, making the fee worthwhile.
  • Using Allo (with a fee) also means that you are also contributing to public goods inherently by contributing to the sustainability of public goods infrastructure.

Conclusion

We hope to foster community discussion around both the introduction of this mechanism and its finer details, as well as more broadly around sustainability for the GitcoinDAO and it’s infrastructure.

We realise this is a controversial topic to introduce to a public goods focused community like Gitcoin however starting this conversation is an important step towards ensuring that we can continue sustainably building public goods infrastructure for years to come!

Please share your thoughts and feedback in this forum post :robot:

1 Like

Allo v2 smart-contract suite, as it is deployed, already has a mechanism to extract fee from any matching pool (i.e. money submitted by sponsors/round managers) but not from donations.

Taking a quick look at stats in your example taking 3% fee from round sponsors/managers is a much better deal than skimming 3% from donations, let’s take a look at money moved in GG20:

  • $1.647M Sponsored matching pools
  • $633,431.29 Donations

I think proposal to activate fee switch on donations as well is worth considering, but from pragmatic perspective it might be easier to start by working with functionality that is already deployed.

The functionality that is already deployed enables two kinds of fees:

  • BaseFee - round manager pays fixed amount (e.g. 40DAI) to deploy a round.
  • PercentageFee - when round manager funds matching pool, fixed percentage of that (e.g. 3%) goes to Gitcoin

Both of those fees are currently set to 0 on every major chain I checked, but DAO is able to change them if willing to do so.

To the best of my knowledge, there is currently no mechanism to be selective with fees. If fee starts being enforced on protocol-level, it means every round (on a given chain) created within Allo V2 would need to pay such fee.

You can look at Allo contract code to see how this works under the hood:

https://optimistic.etherscan.io/address/0xB087535DB0df98fC4327136e897A5985E5Cfbd66#code

My personal conclusions:

  • I think having a small fee that is enforced on protocol level is a good idea!
  • Since functionality for collecting fees on matching pools already exists, I would be in favour of asking DAO to activate existing PercentageFee switch at 1% or similar (could be done on single chain to test the idea first?).
  • Gitcoin has no realistic way to enforce what happens inside third-party deployments of Allo Protocol but I pretty much agree with your recomendations at the end of Specification section.
1 Like

@Sov i’d be curious if you think that adding a Fee Switch would create an impediment to adoption, and if so what you make of that feedback.

I’m also curious to hear if alternatives to fee switches (optional but default donations in checkout flow, having Gitcoin in each round as a project to fund, perhaps token staking schemes) would be more viable in your opinion.

2 Likes

Projects could be amenable to this, but (as with everything), the devil would be in the details (how much, when applied, etc.).

I’m sure I am biased, but I think the ecosystem being built on Allo could justify a fee switch both in the current app stack and what is sure to come. With this, Gitcoin would need to make what is being built much more accessible to any network where Allo is deployed.

2 Likes

Thanks for initiating this discussion @James I generally support sustainable development of protocols and the conversation around the fee switch. However, I’d like us to consider the consequences of switching it on too early! There is always a risk that the protocol doesn’t have sufficient lindy yet and a competitor with 0 fees or even negative fees (backed by investors) can take huge chunks of marketshare if implemented too early. A deep analysis of the competitor landscape should be conducted before switching on fees imo.

On the other hand, there maybe some benefits to selectively charging fees. Eg:

Case A: Fees are inversely proportional to a minimum donation threshold and 0 fees above that threshold. This can incentivize wallets to donate minimum amounts.

Case B: Fees are inversely proportional to amount of GTC staked and 0 fees if the stake is above this threshold