ENS x Octant Public Goods Round Results & Wrap-up (March 18 — April 1, 2025)

ENS x Octant Public Goods Round Results & Wrap-up (March 18 — April 1, 2025)

GM builders, dreamers, and public goods supporters!

The ENS x Octant Public Goods Quadratic Funding Round has come to a close—and the results are in!

This round was all about supporting web3 infrastructure, education, and utility projects through a QF round powered by two of the most impactful names in the public goods space: ENS DAO and Octant.

Big thanks to ENS and Octant for seeding the round with 80,000 USDC on Optimism and showing up with enthusiasm, support, and serious impact.

:bar_chart: The Numbers

Matching pool size: 80,000 USDC on Optimism

Round Duration: March 18 — April 1, 2025

Max matching per project: 7% of the matching pool or 5600 USDC

Eligible Projects: 103

Total Donations: 2886

Unique Donors: 744

Total USD Value of Donations: $28,890

Tokens Donated: USDGLO, CELO, USDC, USDT, ETH, GIV, OP, ARB, MATIC, XDAI, SOL & more!

Eligible donation Networks: All Giveth supported networks – Arbitrum One, Base, Gnosis, OP Mainnet, Ethereum Mainnet, Polygon PoS, Polygon zkEVM, Ethereum Classic, Celo, Stellar, Solana.

The final results including all projects, amounts raised, and matching funds can be found here:

ENS x Octant PGs Round Final Matching Results

Important: Project owners – PLEASE double-check your Optimism recipient address!

Projects Eligibility

To make sure this round spotlighted genuine builders, projects had to:

:white_check_mark: Be listed and verified on Giveth

:white_check_mark: Fit one or more categories: Infrastructure, Utility, Education

:white_check_mark: Complete application and verification before round start

:white_check_mark: Be selected by a curation team from Octant and ENS DAO

Donor Eligibility & Sybil Resistance

The following mechanisms were used to ensure matching funds were allocated fairly according to genuine community support:

  1. Human Passport
  • Using Passport’s Model Based API, each donor address was assigned a score based on on-chain activity. A score of 50 or higher was considered a pass for QF eligibility.- Addresses who did not achieve a passing score through the API could verify their uniqueness using stamps. ****

A Passport (stamps) score of 15 or higher also qualified the donor as QF-eligible.

  1. COCM

This round again used the Cluster-Optimized Community Matching (COCM) algorithm to calculate final matching. COCM rewards donor diversity and penalizes tightly clustered or coordinated donation patterns.

That means:

  • Projects supported by donors who gave to a broad range of projects received higher matching
  • Projects that had donations mostly from overlapping or highly clustered wallets saw reduced matching

Learn more about COCM here:

:link: wtfiscocm.streamlit.app

Matching Fund Distribution Chart:

Here’s the final breakdown of how the 80,000 USDC matching pool was distributed! Check out how all the projects got ranked based on the received matching!

Top Projects by Matching Allocation

Here are the top 10 projects in the ENS x Octant Public Goods Round, ranked by matching funds received:

:1st_place_medal: rotki

Matching: 5600.00 USDC

Match per unique donor: 130.23 USDC


:2nd_place_medal: Regens Unite

Matching: 3481.34 USDC

Match per unique donor: 128.94 USDC


:3rd_place_medal: Public Nouns Operations

Matching: 3420.29 USDC

Match per unique donor: 51.05 USDC


:medal_sports: Flow State

Matching: 3384.32 USDC

Match per unique donor: 99.54 USDC


:medal_sports: Dappnode

Matching: 3313.72 USDC

Match per unique donor: 77.06 USDC


:medal_sports: Blockscout Open-Source Block Explorer

Matching: 2812.64 USDC

Match per unique donor: 35.60 USDC


:medal_sports: Kiwi News

Matching: 2613.16 USDC

Match per unique donor: 67.00 USDC


:medal_sports: MASQ Network

Matching: 2596.34 USDC

Match per unique donor: 118.02 USDC


:medal_sports: Bankless Academy

Matching: 2002.35 USDC

Match per unique donor: 74.16 USDC


:medal_sports: B<>rder/ess web3 Tech Club on Campuses

Matching: 1944.44 USDC

Match per unique donor: 60.76 USDC

’Match per unique donor’ is the matching divided by the total number of unique addresses that donated to the project.

The ‘Match per unique donor’ metric is interesting since COCM rewards donors who support a diverse set of projects. This means that projects that have a higher “match per unique donor” had a broader donor base.

:compass: What’s Next?

Forum post will be open for 3 business days for feedback and questions

Then we’ll ratify the results on Snapshot

Matching funds will be distributed soon after

Project teams: make sure your Optimism addresses are correct!

:raised_hands: Huge Thanks to You All

To everyone who donated, built, shared, or supported — you’re helping shape the future of public goods funding.

More rounds are coming, and your support helps grow a sustainable ecosystem for web3 builders everywhere.

Let’s keep building. Let’s keep funding. Let’s keep the momentum going.

Have a question? Tag @yegor and drop a comment below :point_down:

Got a feedback to share? Fill in this form and let us know about your experience

1 Like

Im the last :sob:

Would anyone kindly share some tips of QF?

1 Like

Hey, thanks for emailing the letter.

Could you tell me why there are so many projects with no matching funds?

I know that Giveth does not have an open source repository with more details.

I just would really appreciate some clarity.

My project PinSave did not get a single dollar from matching.

I am not complaining.

I would just really know how you managed to fix the results for Rotki.

I do not have really time to get into details. But dont you think it is just plainly dumb to miss actual donations and plainly display the money you have given and without explanation of anything whatsoever.

https://x.com/pfedprog/status/1910964182607945884

Hello, Mac from Kiwi here.

Thanks for the summary, I have some questions about matching calculations.

When the round was still on, the matching numbers shown in the Giveth app were high:

These numbers went down with more donations of course, but IIRC the lowest we reached was about 70-80 USDC per 1 USDC contribution. Given the number of contributors and the sums we reached in donations, it seems like we should’ve received much more matching, than the number calculated (2613.16 USDC).

I have not checked of course if every donor was QF eligible, but I know for sure that at least a few of them were. Especially bigger ones, because they DMed me to tell that they donated and they went through verification, so we could get some matching.

So I’m wondering if there might be some error in these calculations, and if we could ask to double-check them?

1 Like

Hey @Pfedprog, appreciate you reaching out and asking for clarity.

I looked into the data, and here’s what happened with PinSave: the project had around ~10$ of total donations from 3 total donors, and 2 of them only donated to PinSave. The third donor did contribute to other projects but didn’t qualify for QF matching—most likely due to not meeting the minimum Sybil-resistance threshold. In this round, only donations from eligible, verified wallets were included in the final matching.

On top of that, we used the COCM (Connection-Oriented Cluster Match) algorithm, which rewards donations from diverse donors — people who support multiple projects across the ecosystem. If donors only give to one project (like in this case), their impact on the match is significantly reduced, even if their donations count. Check more on COCM here: wtfiscocm.streamlit.app

So to clarify:

  • Your project did receive donations
  • At least one donation didn’t qualify for matching based on Passport/MBD score
  • The other two donors only gave to your project, so under COCM their match impact was very low
  • This explains why no matching funds were allocated to PinSave

As for Rotki — they had one of the most diverse and active donor bases in the entire round, many of whom donated across multiple projects. Their results reflect broad, distributed support that’s exactly what COCM is designed to amplify.

Hope this clears things up. The system is designed to support diverse, genuine, community-driven giving—so while it may not always feel intuitive at first, it’s working as intended.

Let me know if you have more questions, but this should explain everything on the matching logic for this round.

So why dont you make the results and coefficients of the model public?

Hey @MacBudkowski, thanks a lot for your thoughtful message and for the great work Kiwi is doing :raised_hands:

You’re right that the matching numbers shown in the app during the round are based on a basic Quadratic Funding estimate. These are purely indicative and updated in real time based on donations received—but they don’t represent the final outcome.

Once the round ends, we calculate final allocations using the COCM algorithm, which rewards more diverse donor behavior. As in a default QF matching algo, it means a large donation from a single donor won’t necessarily lead to a higher match.

Lastly, just to reassure you: I actually compared the initial QF results for Kiwi with the final COCM distribution and I can confirm your matching increased by ~64% after applying COCM. That’s a really strong signal that your project attracted a diverse and eligible donor base.

Let me know if you’d like help breaking any of this down further!

1 Like

Hey @Pfedprog — just to reiterate:

We’ve already made the eligibility criteria, and methodology is public:

  • Project-level results are shared in the forum, including matching per project, donor counts, and total donations
  • Eligibility thresholds (MBD ≥ 50 or Passport ≥ 15) are outlined in this forum post and have always been reiterated during the round.
  • The COCM algorithm used is also open-source and can be found here: GitHub - Giveth/COCM_QF_Algorithm: QF mechanism experiments for Giveth

If you’re referring to something specific by “coefficients,” feel free to clarify — I’m happy to explain. But just to note, publishing individual donor contributions would compromise privacy, that’s why, like in past rounds, we don’t disclose detailed donor-level matching results.

We aim to strike a balance between transparency and protecting the privacy of our community. If there’s a specific concern around a donation or eligibility to your or other projects, let me know and I will be happy to look into that separately.

Let me know what exactly you’re looking for and we can go from there.

Hey @bala, I feel you — that can be really discouraging, especially after putting yourself out there :purple_heart:

QF can be challenging, especially if your community is still growing. The good news is that it’s not just about big donations — it’s about many unique donors, even small ones, that really boost your match.

We put together a guide with tips on how to increase visibility, activate your network, and optimize your project page, we post these tips for every round and you can find it here for the ENS x Octant Round

There will be more rounds ahead to try again :pray:

Hey @yegor, thanks a lot for the response.

This has been our first-ever round in Giveth, hence my questions. Thanks for clarifying!

1 Like

GM everyone <3

The vote to validate this distribution on Snapshot is here: Snapshot