Why We Killed the Season Prize Pool (and What We Replaced It With)
What we built, and why it was wrong
PerpLog's original revenue narrative was that 70% of every fee we collected would flow back to traders via a Season prize pool, paid in native HYPE on an ownerless smart contract we deployed on HyperEVM. We published the allocation as a mirror of Hyperliquid's own HYPE supply split — 70% community, ~24% core contributors, ~6% Hyper Foundation. It looked elegant. It checked a lot of Yan-aligned boxes: HYPE-native, ownerless, Merkle-root distribution, reproducible scoring, public audit trail.
Then I asked myself a question I should have asked at the start: “What did Jeff Yan actually have in mind when he designed the builder-code mechanism I'm plugging into?”
What builder codes are actually for
Hyperliquid's builder-code documentation is short and explicit: builder codes let application developers earn a fee on trades they send on behalf of users, capped at 0.1% on perps and 1% on spot, paid on-chain as part of the fee logic. The ecosystem framing is clearer still. Matt Huang at Paradigm described them as “a brilliant way of franchising out the user experience.” The canonical Hyperliquid ecosystem doc compares them to “YouTube for DeFi developers — creators earn revenue from their videos, builders earn from their innovations.”
Every sustainable builder in the Hyperliquid ecosystem treats the fee as direct operational revenue, not a pot to redistribute. Phantom Wallet earns roughly $100,000 per day from its Hyperliquid integration. PVP.trade (social copy trading) has accumulated $7.2M in lifetime builder revenue. Trading bots sit in the $1–5M range. Over $70M has flowed to builders since October 2024 when the mechanism shipped. Not one of those builders runs a contest that roundtrips user money.
We did. And we were the only ones. That should have been a signal.
The three things the redistribution model actually did
I kept defending the 70/24/6 split by saying “it's user-aligned, the money goes back to the users.”It took a 10-minute Socratic conversation with myself to notice this wasn't the whole story. The model did three concrete things, and none of them were what I had convinced myself they were.
1. It shifted money from mediocre high-volume traders to skilled high-volume traders.
A Season prize pool is funded by whoever generates the fees — the highest-volume traders. The winners of a contest scored on “tradingPoints × disciplinePoints × tierMultiplier” are also the highest-volume traders, filtered further by discipline signals (weekly reviews, playbook compliance, habit streaks). The net transfer is from high-volume mediocre traders to high-volume skilled traders. That is the opposite of fair — the traders subsidizing the contest are the ones losing money, and the ones winning the contest already have the edge to compound with or without subsidy.
2. It introduced a gaming surface that didn't need to exist.
The scoring engine weighs subjective signals: weekly reviews validated, playbook compliance rate, daily habit days respected, tilt detections. Any scoring with subjective inputs is farmable. The defense against farming is constant vigilance, audit mechanisms, eligibility caps — complexity I built (rules-hash commitments, append-only snapshots, public verify page) specifically because I had introduced a target to game in the first place. Remove the contest and all that complexity is unnecessary.
3. It created a circular USDC → HYPE → pool → winners flow where a lower fee would have done it directly.
Daily cron: collect USDC fees → swap to HYPE → deposit to pool contract → at season end, distribute by Merkle proof to top-ranked traders. Every step costs gas and operational overhead. The simpler path that produces the same net economic effect — less money leaving the user — is charge a lower fee in the first place. If the median user's effective cost of trading PerpLog is lower, no roundtrip is needed.
What we replaced it with
Three changes:
- The 0.01% fee is PerpLog's operational revenue, period. No prize pool, no redistribution, no contest. Same mechanic every other sustainable Hyperliquid builder uses. The fee funds infrastructure, my own cash draw (capped with a public ratchet, $50k/month hard ceiling), future team salaries at market rate, and HYPE accumulation staked on Hyperliquid. Full waterfall on /docs/compensation.
- HYPE stakers automatically pay less on PerpLog.The same discount curve Hyperliquid uses internally — Wood (>10 HYPE, 5% off) up to Diamond (>500k HYPE, 40% off). If you stake HYPE on HL, your next trade through PerpLog costs 0.006% instead of 0.01% at Diamond tier. Zero action required; the discount is read from your on-chain stake via the HL info API and applied live to the builder-fee
fparameter. Full table on /docs/fee-redistribution. - Seasons become reputation-only.Public leaderboard, tier ranks (Iron → Challenger, mirroring League of Legends' April-2026 global solo queue distribution), badges for behavioral milestones. No cash prize, no claim CTA, no Merkle root to publish. The scoring engine stays open-source at
@perplog/season-engineso anyone can reproduce the leaderboard; the ownerless v3 prize-pool contract at0x661a949597420C21939047515361f37b15F0b44Fstays deployed but idle, zero cost to keep around as optional future infrastructure if a non-redistributive use case ever emerges.
The honest cost of the wrong direction
Three smart-contract iterations deployed to HyperEVM mainnet (v1 USDC at 0x373710..., v2 native-HYPE at 0x0DCCaeDc..., v3 ownerless Merkle at 0x661a9495...). The first two paused and abandoned with zero funds before any Season was ever created; v3 never used. Roughly a week of dev time on infrastructure we've now mothballed. A scoring engine, Merkle tree builder, public audit page, admin publish flow — all functional, most now idle.
Some of it was salvageable: the scoring engine still powers the reputation leaderboard, the ownerless contract remains as optional future infrastructure, the rules-hash commitment pattern still guards the scoring pipeline against silent mid-season mutations. The rest — the Merkle distribution pipeline, the claim flow, the admin publish panel — is frozen in place. Zero cost to keep on-chain, but it was three days I could have spent shipping trader features instead.
Telling the real story of why we scrapped it is cheaper than pretending it never happened. Vitalik calls it honest epistemics. Yan's version is simpler: ship the primitive, not the theater.
What this means if you're a HYPE holder or a PerpLog user
- If you trade through PerpLog and you stake HYPE on HL: your fee drops automatically. Wood tier (>10 HYPE) = 5% off. Diamond (>500k) = 40% off. No signup, no special setup. See your effective rate in the Position Sizer before every trade.
- If you were expecting a prize pool to claim: there was never a Season created on any of the three contracts. No pool was ever funded. You lost nothing, and you gain a lower ongoing fee schedule in exchange. Seasons become a public leaderboard; your rank is the signal, not a cash prize.
- If you hold HYPE and you care about buy pressure: PerpLog's team treasury converts surplus revenue to HYPE on the Hyperliquid spot market and stakes it. Live balance on /stats/hype-position. Same Assistance Fund pattern Hyperliquid uses for HLP fees, scaled to a trading journal's revenue.
What I'll do differently next time
Before shipping any mechanism that routes user money through a contest, scoring engine, or redistribution logic: find out if builders I respect do it. If the answer is no, ask why not. If the answer is “because it's inefficient” or “because it games easily”, listen.
PerpLog's design principle is committed in CLAUDE.md: every feature has to pass a “yes, obviously”test from both Jeff Yan and Vitalik Buterin. The prize-pool model passed neither — Yan wouldn't ship a contest to roundtrip user money, Vitalik wouldn't ship a mechanism with a gaming surface when a simpler credible-neutrality alternative exists. Running that test honestly, up front, would have saved a week.
Better late than never. The pivot is shipped. The builder-revenue model is active. PerpLog is PerpLog's business again, not a redistribution ceremony pretending to be one.
Related: fee model · compensation · no-token philosophy · seasons (reputation) · trust model · live HYPE position.