TLDR
Med may actually be best, Protocol Guild got underfunded as did my project so this is against my interests vs using av, but its done really well for other bs/garbage/scams. brings up a few smaller projects but think this was cause of lists and apathy.
The Paradox of Funding in RPGF: A Look at Vote Patterns and Impact Assessment
Introduction
The Retroactive Public Goods Funding (RPGF) initiative by Optimism aimed to reward projects based on their impact, with the community voting on the allocation of tokens to various contributors. However, an analysis of voting patterns reveals a concerning trend: the distribution of funds may not be as impact-focused as intended.
Standardized Allocations and the Illusion of Impact
An examination of the most common vote amounts – 50,000 and 100,000 – indicates a standardized approach to voting. This raises the question: Are these allocations truly reflective of each project’s individual impact, or are they the result of voters following a predetermined script?
For instance, the top two most common allocations were 50,000 (1737 votes) and 100,000 (1652 votes), with other standard amounts such as 10,000 and 25,000 following suit. A closer look at the data suggests a large number of projects received similar funding, not because of a measured impact but likely due to the influence of lists, which aggregated suggested funding amounts for badgeholders (voters) to follow.
The Influence of Lists and Voter Apathy
Lists are meant to guide badgeholders in their voting, but they seem to have led to a uniformity that undermines the principle of impact-based funding. The phenomenon of badgeholders advertising themselves on social media and the fact that around 30% of the top 100 projects all received the same allocation points to a systemic issue within the RPGF mechanics.
Top 100
Bottom 100
The reliance on lists has perhaps inadvertently caused voter apathy, where badgeholders vote for as many projects as possible, often without due diligence, simply to meet the voting threshold. This method of voting could be seen as an attempt to fulfill the quorum rather than a genuine effort to evaluate the merit and impact of each project.
Vote dist
Top 10
every 50th
The Homogeneity of Funding
An analysis of vote distributions shows that a significant proportion of the top 100 projects received similar funding amounts. This homogeneity suggests that badgeholders (voters within the RPGF) may not be individually assessing the impact of projects. While intended to streamline the process and provide expertise, lists may have resulted in a form of ‘voter apathy’—where badgeholders vote uniformly across many projects, influenced by the collective rather than personal judgment. The badgeholder problem is highlighted by the lack of differentiation in funding—can it be that an overwhelming number of projects all deserved exactly 100,000 in impact value? Or is this a reflection of a list-based voting mechanism that oversimplifies the complexities of project impact?
** The Median Trap and the Push for Quantity**
The RPGF voting structure uses median values to determine final funding amounts, which could lead to a clustering of votes around central figures. This ‘median trap’ means projects tend to receive an amount close to the middle of the distribution, irrespective of their actual impact. Combined with a voting threshold that compels badgeholders to vote on as many projects as possible, this system may dilute the quality of funding decisions, rewarding mediocrity while penalizing standout initiatives.
Median Versus Average Funding: The Metrics of Misalignment
The debate between using median or average funding as a more accurate measure of project impact is complex. While the average might seem a fairer assessment, it can be skewed by outliers. The median, on the other hand, could underrepresent projects that require more substantial funding to achieve their impact. Notably, high-impact projects like Protocol Guild received less than their due, while other less impactful projects were overfunded.
Proposals for a Fairer Funding Model
To align funding with impact, several changes to the RPGF voting process are recommended:
- Implement tiered limits for funding allocations, ensuring a more nuanced distribution with smaller med threshold.
10k requires 5/20 ballots
50k requires 10/20 ballots
200k requires 15/20 ballots
- Assign a specific number of badgeholders to evaluate a select group of projects, rating their impact on a scale from 0 to 100.
- Average out the impact scores among the assigned badgeholders to mitigate extremes.
- Introduce public commentary on proposals, increasing transparency and community involvement.
- Adjust ballot requirements based on funding tiers to ensure a more rigorous assessment for higher allocations.
ethereum-optimism/op-analytics/blob/main/rpgf/rpgf3/results/anonymized_project_votes.csv
My data
Top 150
project_name | median_funding | average_funding | med vs av |
---|---|---|---|
Protocol Guild | 670000 | 1282737.632 | 0.5223203744 |
go-ethereum | 500000 | 831218.8119 | 0.6015263284 |
Solidity | 430000 | 808808.2569 | 0.5316464024 |
Erigon | 345000 | 545109.7826 | 0.6329000341 |
ethers.js | 300000 | 555934.5794 | 0.53963184 |
Lighthouse | 300000 | 437808.9888 | 0.6852303349 |
libp2p | 300000 | 413224.7059 | 0.7259972498 |
Hardhat | 290000 | 494267.3267 | 0.5867270287 |
Test in Prod | 275000 | 489542.8571 | 0.5617485701 |
ETHGlobal | 260000 | 615601.1111 | 0.4223514144 |
DefiLlama | 250000 | 518453.7634 | 0.482203077 |
Account Abstraction - ERC-4337 | 250000 | 503835.2941 | 0.4961939009 |
Vyper | 250000 | 447062.8866 | 0.559205444 |
OpenZeppelin Contracts | 250000 | 405774.1935 | 0.6161062088 |
Remix Project | 250000 | 403500 | 0.6195786865 |
Nethermind | 250000 | 400820.5128 | 0.6237205732 |
Lodestar | 250000 | 380001.1905 | 0.6578926758 |
Web3js | 250000 | 343945.5556 | 0.7268592251 |
Dappnode | 250000 | 340611.4943 | 0.7339740561 |
BuidlGuidl | 235000 | 540795.4545 | 0.4345450725 |
Ethereum Attestation Service | 230000 | 431655.914 | 0.5328318055 |
IPFS | 230000 | 394157.1429 | 0.5835236128 |
beaconcha.in | 225000 | 364861.7021 | 0.6166720121 |
Agora | 215000 | 386375 | 0.5564542219 |
Lattice (OPCraft & MUD) | 200000 | 522633.8235 | 0.3826771077 |
L2BEAT | 200000 | 495778.7879 | 0.4034057222 |
Wagmi / Viem | 200000 | 481921.5909 | 0.4150052701 |
foundry | 200000 | 459651.8072 | 0.4351119627 |
Blockscout Block Explorer | 200000 | 406162.069 | 0.4924142732 |
Sourcify | 200000 | 376950.6494 | 0.5305734327 |
Nimbus | 200000 | 347515.625 | 0.5755136909 |
revm | 200000 | 339185.3933 | 0.5896480331 |
Snapshot | 200000 | 276858.4416 | 0.7223908322 |
Gitcoin | 180000 | 369897.4359 | 0.4866213781 |
Otterscan | 180000 | 309273.7374 | 0.5820086811 |
ZachXBT | 155000 | 314391.6667 | 0.4930156122 |
rotki | 150000 | 347420.4301 | 0.4317535384 |
Giveth | 150000 | 263457.6923 | 0.5693513774 |
OP Reth | 150000 | 260092.3077 | 0.5767183249 |
Revoke.cash | 150000 | 243377.7778 | 0.6163257852 |
Mirror | 140000 | 222479.4521 | 0.6292715966 |
TrueBlocks / Unchained Index | 140000 | 214287.1429 | 0.6533289778 |
Ethereum on ARM | 135000 | 221558.3333 | 0.6093203445 |
Department of Decentralization | 130000 | 324887.0968 | 0.4001390061 |
Immunefi | 130000 | 270303.7736 | 0.4809403815 |
Ethereum Cat Herders | 130000 | 258134.6667 | 0.5036131012 |
Frame | 130000 | 226646.8354 | 0.5735795946 |
TypeChain / DethCode | 130000 | 190620 | 0.6819851012 |
Open Source Observer | 130000 | 167714.2857 | 0.7751277683 |
Slither | 125000 | 162530.8824 | 0.7690846084 |
Small Brain Games | 120000 | 345247.3684 | 0.3475768709 |
BasePaint | 120000 | 344929.8246 | 0.3478968516 |
Aerodrome Finance | 110000 | 428627.451 | 0.2566331199 |
CharmVerse | 110000 | 248701.7544 | 0.4422968397 |
Kwenta | 105000 | 301458.6957 | 0.3483064231 |
Velodrome | 100000 | 640615.9091 | 0.1560997761 |
Synthetix | 100000 | 328353.7222 | 0.304549616 |
Kernel | 100000 | 300119.403 | 0.3332007161 |
Metagov | 100000 | 283931.0345 | 0.3521982026 |
Zuzalu | 100000 | 281263.0435 | 0.3555390668 |
eth.limo | 100000 | 248260 | 0.4028035124 |
Fe | 100000 | 245094 | 0.408006724 |
Optimism Translators | 100000 | 239329.2683 | 0.4178343949 |
Lyra Finance | 100000 | 239277.5 | 0.4179247944 |
Ronan Sandford | 100000 | 228919.6721 | 0.4368344541 |
Ipsilon | 100000 | 226575 | 0.4413549597 |
CryptoZombies | 100000 | 220272.8571 | 0.4539823985 |
ApeWorX LTD | 100000 | 219501.5873 | 0.4555775711 |
Gitcoin Passport | 100000 | 214586.6667 | 0.4660121785 |
RainbowKit | 100000 | 204337.9747 | 0.4893852949 |
Ultra Sound Relay | 100000 | 202154.7619 | 0.4946705141 |
EthereumETL | 100000 | 195573.8095 | 0.511315908 |
ZORA | 100000 | 193764.4237 | 0.5160906119 |
Tally | 100000 | 190264.6154 | 0.5255838023 |
Vectorized | 100000 | 188918.0556 | 0.5293300299 |
Yearn | 100000 | 186888.8889 | 0.5350772889 |
StreamETH | 100000 | 179684.2105 | 0.5565319274 |
P256Verifier | 100000 | 172419.6721 | 0.5799802236 |
Cannon | 100000 | 172150 | 0.5808887598 |
Synpress | 100000 | 170001.8182 | 0.5882290029 |
EthernautDAO | 100000 | 152518.3333 | 0.6556588825 |
The Ethernaut | 100000 | 149232.1429 | 0.6700969247 |
Blocknative | Web3 Onboard | 100000 | 142809.0909 |
Optimistic Indexer | 100000 | 134070.4545 | 0.7458764896 |
Waffle | 100000 | 132861.4035 | 0.7526640345 |
Coordinape | 100000 | 129367.3077 | 0.7729928201 |
Sushi | 100000 | 126284.2105 | 0.7918646328 |
Guild.xyz | 100000 | 125870.9677 | 0.7944643772 |
Candide | 100000 | 125746.5116 | 0.7952506889 |
Support NERDs | 100000 | 125268.2927 | 0.7982866044 |
Secureum | 100000 | 125127.7778 | 0.7991830573 |
Blobscan | 100000 | 120311.1111 | 0.8311784263 |
UseDApp | 100000 | 115539.0244 | 0.8655084334 |
Soul Wallet | 100000 | 113235.8974 | 0.8831121779 |
Wallet Abstraction | 100000 | 106651.5152 | 0.9376331865 |
Optimism Ambassadors | 100000 | 103803.0303 | 0.9633630127 |
Aestus Relay | 98000 | 201227.2727 | 0.4870115202 |
Pairwise | 97000 | 163353.0303 | 0.5938059418 |
WhatsABI | 95000 | 129365.9091 | 0.7343511182 |
Hypercerts Foundation | 95000 | 123428.5714 | 0.7696759259 |
Prettier Solidity | 94000 | 132835.6164 | 0.7076415386 |
Funding the Commons | 94000 | 127433.9623 | 0.7376369559 |
Splits | 93000 | 191357.1429 | 0.4860022396 |
OP Governance Analytics Dashboard | 91000 | 90500 | 1.005524862 |
Zero Knowledge Podcast | 90000 | 177531.9149 | 0.5069511026 |
draper | 90000 | 163723.2558 | 0.5497081007 |
Conduit | 90000 | 102488.3721 | 0.8781484003 |
Galxe | 86000 | 126087.234 | 0.6820674643 |
PatrickAlphaC | 85000 | 105851.0638 | 0.8030150754 |
ETHSafari 2023 | 83000 | 189842.1053 | 0.4372054339 |
Keccak hashing | 82500 | 213038.4615 | 0.387254017 |
EthStaker | 82500 | 155000 | 0.5322580645 |
Sonne Finance | 82500 | 127169.4444 | 0.648740744 |
Hats Protocol | 80000 | 264820.5128 | 0.302091402 |
LexDAO | 80000 | 161444.4444 | 0.4955264969 |
Holograph | 80000 | 91036 | 0.8787732326 |
Alloy | 78000 | 188500 | 0.4137931034 |
AW House/Komorebi’s Hacker House | 77000 | 239371.7391 | 0.3216754003 |
Tenderly | 77000 | 189022.9865 | 0.4073578639 |
Endaoment | 77000 | 183736.7347 | 0.4190778732 |
Sassal.eth | 77000 | 182107.1429 | 0.4228280055 |
Rainbow Wallet | 77000 | 168915.5345 | 0.4558491333 |
ethOS | 77000 | 140909.0909 | 0.5464516129 |
growthepie | 77000 | 139727.2727 | 0.5510735198 |
Gelato | 77000 | 134901.5625 | 0.5707865689 |
ChainList | 77000 | 124268.6567 | 0.6196252702 |
RabbitHole | 77000 | 117263.1754 | 0.6566426307 |
Beam Wallet LLC | 77000 | 114958.9744 | 0.6698041665 |
Socket | 77000 | 113273.913 | 0.6797681649 |
DappRadar | 77000 | 99094.44444 | 0.7770364972 |
ERC4337 Smart Accounts Dune Dashboard | 76000 | 94322.91667 | 0.8057426836 |
WASD | 75000 | 196405.4054 | 0.3818632173 |
NiceNode | 75000 | 154846.1538 | 0.4843517139 |
Umbra | 75000 | 154689.5833 | 0.484841955 |
roll-op | 75000 | 143763.6364 | 0.5216896421 |
Pyth Network | 75000 | 141868.8889 | 0.5286571326 |
BrightID | 75000 | 139521.1538 | 0.5375528938 |
JiffyScan | 75000 | 129729.5455 | 0.5781258212 |
Clave (formerly Opclave) | 75000 | 124571.4286 | 0.6020642202 |
Alchemy | 75000 | 102255.9492 | 0.7334536584 |
The Red Guild | 75000 | 100552.5 | 0.7458790184 |
Forum | 75000 | 86710 | 0.8649521393 |
Crust Network | 75000 | 80008.33333 | 0.9374023539 |
Paco Bytes | 74000 | 179308.1633 | 0.4126973287 |
Impersonator | 73000 | 98933.33333 | 0.7378706199 |
polynya | 72500 | 166810.8108 | 0.4346241089 |
NumbaNERDs | 70000 | 114711.3636 | 0.6102272502 |
Commons Stack | 70000 | 104512.2449 | 0.6697779774 |
Karma | 70000 | 89680.70175 | 0.7805469698 |
Edge & Node / The Graph | 67500 | 89518.98276 | 0.754030016 |
Hardhat Tracer | 67000 | 104932.3529 | 0.6385066009 |
PR0 | 66000 | 87414.28571 | 0.7550253309 |
Vote Amount Frequency
0 50000.0 1737
1 100000.0 1652
2 10000.0 1253
3 25000.0 1075
4 5000.0 894
5 200000.0 766
6 20000.0 723
7 150000.0 696
8 75000.0 675
9 250000.0 630
10 0.0 610
11 77000.0 562
12 15000.0 542
13 500000.0 536
14 2000.0 512
15 30000.0 357
16 1000000.0 315
17 300000.0 307
18 39000.0 256
19 130000.0 232```