Unlocks

Supply arriving on the market, and — the part nobody else shows — how solid each line is. Every row carries a provenance mark: read from the contract, published by the project, or taken from an aggregator. A date is not a fact just because it is in a table.

Arriving in the next 30 days

TokenEventTokensShare of supply Days of volume to absorbProvenance
CRV Protocol emission, epoch 6
266,197 CRV/day
7,985,902 0.33% Contract-verified
This calendar is one row long, and the reason is a licence rather than a limitation of the idea. The dataset that would fill it is DefiLlama's emissions feed, and api.llama.fi/emissions answers 402 Payment Required — "Upgrade to the paid API plan". Their adapters repository is not public, and the one that is carries no licence at all, which under default copyright grants nothing. A public storage bucket does serve the same data, but reaching for it to route around a 402 is circumventing an access control, not accepting an offer. So this is a purchase decision, not an engineering one — see what would fill it below.

Days of volume — the column that matters most

An unlock is only meaningful against the liquidity that has to absorb it. Ten million tokens into a market trading a hundred million a day is noise; the same ten million into a market trading two million a day is a week of selling pressure. That ratio is the column above, and it is deliberately blank rather than guessed: it needs a traded-volume series for the unlocking token, and this site's clean volume source covers the perpetual contracts it lists — which do not yet overlap the tokens whose schedules are readable. When they overlap, the column fills.

How to read the provenance marks

MarkWhat it meansRows
Contract-verified Read from the contract by eth_call at the stated block. Reproducible by anyone with an RPC endpoint. 6
Project-published From the project's own repository, docs or governance record. Authoritative but not independently checkable on-chain. 0
Aggregator-sourced From a third-party dataset. Fastest to assemble and the weakest evidence: if a date slips, nothing in the data says so. 0

Every row on this page is currently the strongest mark. That is not a boast — it is what happens when the weaker sources are unavailable, and it is why the calendar is short.

Contract-verified emission detail

Curve DAO mints on a schedule the contract itself publishes: rate() returns 3.080983 CRV per second, which is 266,197 CRV a day, held constant until the current 365-day epoch (number 6, began 12 Aug 2026) ends and the rate steps down on-chain. Emission is algorithmic: the contract mints at a fixed rate that steps down once per 365-day epoch. Unlike discretionary vesting, the forward number is readable today.

HorizonCRV emittedShare of total supply
7 days 1,863,377 0.08%
30 days 7,985,902 0.33%
90 days 23,957,705 0.99%
365 days 97,161,803 4.03%

Read from 0xd533a949740bb3306d119cc777fa900ba034cd52 at block 25,751,871 using rate(), start_epoch_time(), mining_epoch(), available_supply(), totalSupply(). Available supply 2,419,994,078, total supply 2,409,636,911, both read on-chain.

Vesting schedules on file

Contract-verified, and all of them finished — the last ended 17 Sept 2024. They stay listed because "the contract says this is complete" is a checkable claim, and it is the opposite of what a tracker projecting from announcements would tell you.

TokenScheduleAmountShare of supplyEndedProvenance
UNI Treasury Vester 1
0x4750c43867ef5f89869132eccf19b9b6c4286e1a
172,000,000 17.20% 18 Sept 2021 Contract-verified
UNI Treasury Vester 2
0xe3953d9d317b834592ab58ab2c7a6ad22b54075d
129,000,000 12.90% 18 Sept 2022 Contract-verified
UNI Treasury Vester 3
0x4b4e140d1f131fdad6fb59c13af796fd194e4135
86,000,000 8.60% 18 Sept 2023 Contract-verified
UNI Treasury Vester 4
0x3d30b1ab88d487b0f3061f40de76845bec3f1e94
43,000,000 4.30% 17 Sept 2024 Contract-verified
CRV pre-CRV liquidity providers
0x575ccd8e2d300e2377b43478339e364000318e2c
151,515,152 6.29% 13 Aug 2021 Contract-verified

581,515,152 tokens across 5 contracts, every figure read on-chain.

Addresses that carry no readable schedule

Named in project material as allocations, but exposing nothing to read. Listed because the absence is the finding.

AddressWhy it has no row above
Curve — Community Funds
0xe3997288987e6297ad550a69b31439504f513267
Holds CRV but implements none of the VestingEscrow getters. It is an address with a balance, not a schedule: nothing about a release date is readable from it.
Curve — Investors 1
0xf22995a3ea2c83f6764c711115b23a88411cafdd
Same as above — labelled as an investor allocation, but exposes no schedule to read.
Lido TRP — per-recipient escrows
0xDA1DF6442aFD2EC36aBEa91029794B9b2156ADD0
The factory and the prototype are both readable, and the prototype returns a coherent (empty) schedule, so the interface is right. But each recipient's schedule lives in a separate clone whose address only appears in a factory event. Enumerating them needs eth_getLogs over a wide block range, and free RPC endpoints cap that at 50 blocks — about ten minutes of chain. The data exists on-chain and is out of reach at this cost level.

What would fill this calendar

RouteCostWhat it yieldsProvenance it earns
DefiLlama Pro A paid API subscription. Their emissions endpoint is explicitly gated behind it. Several hundred protocols at once, with forward dates. The fastest route by a wide margin. Aggregator-sourced
Manual curation Roughly 10–15 minutes per token to find the primary source and check it, at about a one-in-three hit rate. A short list, strongest where it matters. Around 4–5 hours per six usable rows. Project-published
Archival RPC An endpoint with unrestricted eth_getLogs. Free providers cap it at 50 blocks, about ten minutes of chain. Every factory-deployed escrow in one pass — the Lido case above and everything shaped like it. Contract-verified

The three are complementary rather than alternatives. Buying the aggregator feed fills the calendar immediately at the weakest provenance; the archival endpoint upgrades whichever rows are contract-backed to the strongest; curation covers the gap between them. The badge column is what makes running all three at once coherent instead of muddled.