Tools · Token vesting

Token vesting calculator

Model TGE unlocks, cliffs and linear vesting across every allocation bucket. See circulating supply month by month, and find the months where a single tranche changes the float. Runs in your browser.

Everything runs in your browser. Nothing you type is sent to a server or logged.

Supply reads as 1,000,000,000 tokens (1.00B). Projection runs from TGE (month 0) to month 48.

Allocation buckets

Allocated100.00% of supply · 1.00B tokens

Buckets sum to 100% of supply.

Fully diluted supply

1.00B

Allocated: 1.00B

Circulating at TGE

7.60%

76.00M tokens

Largest unlock month

TGE

76.00M · 7.60% of supply

Fully unlocked

M48

48 months after TGE

Circulating supply over time

Top: circulating supply as a share of fully diluted supply, TGE to month 48. Bottom: tokens unlocking each month.

Peak month: 76.00M

Largest unlock events

“% of circulating” is the new supply divided by what was already circulating the month before. It is the number that says how much the float changes, and it is blank at TGE because nothing was circulating yet.

MonthTokens% of supply% of circulatingDriven by
TGE76.00M7.60%Community / airdrop, Ecosystem & growth +1
M3023.63M2.36%3.63%Investors, Ecosystem & growth +2
M1423.63M2.36%8.65%Investors, Ecosystem & growth +2
M1823.63M2.36%6.43%Investors, Ecosystem & growth +2
M1923.63M2.36%6.04%Investors, Ecosystem & growth +2

Per-bucket summary

BucketAllocationAt TGECliff endsFirst trancheFully unlocked
Team & advisors180.0M0M12M13M48
Investors200.0M0M12M13M36
Treasury220.0M11.00MM1M48
Ecosystem & growth300.0M15.00MM1M48
Community / airdrop100.0M50.00MM1M12

Month-by-month schedule

Month 0 is TGE. Scroll for the full horizon.

MonthUnlockedCirculating% of supplyTeam & advisorsInvestorsTreasuryEcosystem & growthCommunity / airdrop
TGE76.00M76.00M7.6%0011.00M15.00M50.00M
M114.46M90.46M9.0%0015.35M20.94M54.17M
M214.46M104.9M10.5%0019.71M26.88M58.33M
M314.46M119.4M11.9%0024.06M32.81M62.50M
M414.46M133.8M13.4%0028.42M38.75M66.67M
M514.46M148.3M14.8%0032.77M44.69M70.83M
M614.46M162.8M16.3%0037.13M50.63M75.00M
M714.46M177.2M17.7%0041.48M56.56M79.17M
M814.46M191.7M19.2%0045.83M62.50M83.33M
M914.46M206.1M20.6%0050.19M68.44M87.50M
M1014.46M220.6M22.1%0054.54M74.38M91.67M
M1114.46M235.0M23.5%0058.90M80.31M95.83M
M1214.46M249.5M25.0%0063.25M86.25M100.0M
M1323.62M273.1M27.3%5.00M8.33M67.60M92.19M100.0M
M1423.63M296.8M29.7%10.00M16.67M71.96M98.13M100.0M
M1523.62M320.4M32.0%15.00M25.00M76.31M104.1M100.0M
M1623.63M344.0M34.4%20.00M33.33M80.67M110.0M100.0M
M1723.62M367.6M36.8%25.00M41.67M85.02M115.9M100.0M
M1823.63M391.3M39.1%30.00M50.00M89.38M121.9M100.0M
M1923.63M414.9M41.5%35.00M58.33M93.73M127.8M100.0M
M2023.62M438.5M43.9%40.00M66.67M98.08M133.8M100.0M
M2123.63M462.1M46.2%45.00M75.00M102.4M139.7M100.0M
M2223.63M485.8M48.6%50.00M83.33M106.8M145.6M100.0M
M2323.63M509.4M50.9%55.00M91.67M111.1M151.6M100.0M
M2423.63M533.0M53.3%60.00M100.0M115.5M157.5M100.0M
M2523.63M556.6M55.7%65.00M108.3M119.9M163.4M100.0M
M2623.63M580.3M58.0%70.00M116.7M124.2M169.4M100.0M
M2723.63M603.9M60.4%75.00M125.0M128.6M175.3M100.0M
M2823.63M627.5M62.7%80.00M133.3M132.9M181.3M100.0M
M2923.62M651.1M65.1%85.00M141.7M137.3M187.2M100.0M
M3023.63M674.8M67.5%90.00M150.0M141.6M193.1M100.0M
M3123.63M698.4M69.8%95.00M158.3M146.0M199.1M100.0M
M3223.63M722.0M72.2%100.0M166.7M150.3M205.0M100.0M
M3323.63M745.6M74.6%105.0M175.0M154.7M210.9M100.0M
M3423.63M769.3M76.9%110.0M183.3M159.0M216.9M100.0M
M3523.63M792.9M79.3%115.0M191.7M163.4M222.8M100.0M
M3623.63M816.5M81.7%120.0M200.0M167.8M228.8M100.0M
M3715.29M831.8M83.2%125.0M200.0M172.1M234.7M100.0M
M3815.29M847.1M84.7%130.0M200.0M176.5M240.6M100.0M
M3915.29M862.4M86.2%135.0M200.0M180.8M246.6M100.0M
M4015.29M877.7M87.8%140.0M200.0M185.2M252.5M100.0M
M4115.29M893.0M89.3%145.0M200.0M189.5M258.4M100.0M
M4215.29M908.3M90.8%150.0M200.0M193.9M264.4M100.0M
M4315.29M923.5M92.4%155.0M200.0M198.2M270.3M100.0M
M4415.29M938.8M93.9%160.0M200.0M202.6M276.3M100.0M
M4515.29M954.1M95.4%165.0M200.0M206.9M282.2M100.0M
M4615.29M969.4M96.9%170.0M200.0M211.3M288.1M100.0M
M4715.29M984.7M98.5%175.0M200.0M215.6M294.1M100.0M
M4815.29M1.00B100.0%180.0M200.0M220.0M300.0M100.0M

What a token unlock schedule is

A token unlock schedule is the timetable that turns allocated tokens into liquid ones. Every allocation — team, investors, treasury, ecosystem, community — has three settings: how much is liquid at the token generation event, how long the cliff runs, and how long the remainder takes to release after that. Put those three numbers on every bucket and you have a schedule.

Fully diluted supply is a single number that never moves. Circulating supply is the number that changes, and it is the one that actually trades. A project can hold fully diluted supply constant for years while circulating supply multiplies. That is why the useful question is not “what is the total supply” but “how much of it is liquid this month, and how much becomes liquid next month”.

Cliffs matter more than the linear tail

A linear tail spreads a bucket over many months, so each month adds a small slice to the float. A cliff does the opposite: it holds everything back and then releases it in one month. When several buckets share a cliff date — teams often copy the same twelve-month cliff onto every allocation — those tranches land together.

The calculator surfaces this as “% of circulating”: the size of a month’s unlock divided by what was already circulating the month before. A tranche that is a small share of total supply can still be a large share of the float if the float is small. That ratio is what a treasurer, a market maker and a token holder are all actually asking about, and it is the number most unlock trackers do not show.

Vesting is a contract. Locking is code.

Vesting is a promise in a document: a grant agreement says a holder earns their tokens over time. Locking is enforcement on-chain: a contract holds the tokens and will not release them early, whatever anyone agrees to later. The two can disagree. Tokens can be contractually vested but sitting unlocked in a wallet, or locked in a contract whose release curve no longer matches the agreement anyone signed.

Teams that issued equity before they issued a token end up maintaining both ledgers. Shares vest on a board-approved schedule in a cap table; tokens vest on a different schedule enforced by a contract; the same person often holds both. Keeping them consistent is the real work — see the token vesting guide for the mechanics, and token cap tables for how the two ledgers sit side by side.

Allocation buckets and how they go wrong

BucketWhat it is forCommon structuring mistake
Team & advisorsCompensation for the people building and advisingCopying the investor cliff date, so both tranches land in the same month
InvestorsCapital raised before or at launchA large TGE unlock paired with a short tail, leaving almost no contractual runway
TreasuryReserve the issuing entity controls for future needsLeaving it fully liquid at TGE, so nothing distinguishes it from float
Ecosystem & growthGrants, incentives, integrations, liquiditySizing it as a percentage with no spend schedule, so releases become ad hoc
Community / airdropDistribution to usersTreating it as a marketing line rather than as supply that arrives on day one

How this is calculated

Every number on this page comes from the arithmetic below. Nothing is rounded before the maths, and bucket percentages are never rescaled — if they do not sum to 100 the calculator says so and leaves them alone.

  • allocation = totalSupply × percentOfSupply ÷ 100
  • tgeAmount = allocation × tgeUnlockPercent ÷ 100, released at month 0
  • remainder = allocation − tgeAmount
  • monthlyTranche = remainder ÷ linearUnlockMonths
  • cumulative(m) = tgeAmount + remainder × min(max(m − cliffMonths, 0), linearUnlockMonths) ÷ linearUnlockMonths
  • unlocked(m) = cumulative(m) − cumulative(m − 1)
  • circulating(m) = sum of cumulative(m) across every bucket
  • percentOfCirculating(m) = unlocked(m) ÷ circulating(m − 1) × 100

The cliff convention used here

The cliff month itself unlocks the cliff tranche; linear unlock begins the month after. So when a bucket has a linear tail, the whole remainder is that tail: months 1 through the cliff month release nothing, and the first tranche lands at cliff + 1, with the last at cliff + linear months. When a bucket has a cliff and no tail, the entire remainder is the cliff tranche and lands in one event at the cliff month. A bucket with no cliff and no tail is fully liquid at TGE. In every case a bucket is exactly fully unlocked at cliff + linear months, and cumulative unlocked never exceeds the allocation.

This is a modelling tool. It projects supply from the inputs you give it. It says nothing about price, and it is not investment advice.