Bonding curve
Every launch sells its first 800 million tokens on a bonding curve: a contract that is always ready to buy or sell at a price set by a formula. There is no order book and no liquidity provider. The price depends only on how many tokens have been sold.
The formula
The curve tracks how much ETH (or WETH) it holds, called the reserve, as a function of tokens sold:
| Symbol | Meaning | Value |
|---|---|---|
| tokens sold so far | 0 to 800,000,000 | |
| tokens on the curve | 800,000,000 | |
| graduation target, the reserve when the curve sells out | 5 ETH |
The spot price is how fast the reserve grows per token:
- Starting price: ETH per token. That puts the full 1 billion supply at 1.5625 ETH.
- Final price: ETH per token, 16 times the start. The full supply is then worth 25 ETH.
- Reserve at the end: ETH exactly.
The final price equals the pool's opening price at graduation ( divided by the 200 million pool tokens), so the price doesn't jump when trading moves to the pool.
Buying and selling
Buying tokens adds the reserve difference, plus the 1% fee on top:
The fee is 1% of what you pay. The net amount goes into the reserve; the fee goes to the market's fee escrow.
Buying with a budget solves the formula the other way. With , you end at
and receive tokens. If your budget is more than the rest of the curve costs, you buy what's left; the rest of your budget is refunded (ETH) or never taken (WETH).
Selling tokens takes the reserve difference out and charges 1% of it:
Because the reserve always equals for the current supply sold, every token bought on the curve can always be sold back to it until graduation.
Worked examples
All values use the 5 ETH target, before any launch-window tax.
| Curve sold | Tokens sold | Reserve | Cost from zero (with fee) | Spot price (ETH) | Full supply value |
|---|---|---|---|---|---|
| 0% | 0 | 0 ETH | 0 ETH | 1.5625 × 10⁻⁹ | 1.56 ETH |
| 10% | 80M | 0.1351 ETH | 0.1365 ETH | 1.8262 × 10⁻⁹ | 1.83 ETH |
| 25% | 200M | 0.3846 ETH | 0.3885 ETH | 2.3669 × 10⁻⁹ | 2.37 ETH |
| 50% | 400M | 1.0000 ETH | 1.0101 ETH | 4.0000 × 10⁻⁹ | 4.00 ETH |
| 75% | 600M | 2.1429 ETH | 2.1645 ETH | 8.1633 × 10⁻⁹ | 8.16 ETH |
| 90% | 720M | 3.4615 ETH | 3.4965 ETH | 1.4793 × 10⁻⁸ | 14.79 ETH |
| 100% | 800M | 5.0000 ETH | 5.0505 ETH | 2.5000 × 10⁻⁸ | 25.00 ETH |
- The largest first buy (80 million tokens, 10% of the curve) costs about 0.1365 ETH.
- 1 ETH spent on a fresh launch buys about 397.5 million tokens (39.7% of supply).
- Selling 10 million tokens when the curve is half sold returns about 0.0390 ETH after the 0.000394 ETH fee.
Try it
| Reserve in the curve | 1 ETH |
| Cost to buy from 0 to here (incl. 1% fee) | 1.0101 ETH |
| Spot price | 4.0000e-9 ETH per token |
| Fully diluted value (1B tokens × spot) | 4 ETH |
Precision
The contract works in whole units (wei and the token's smallest unit) and rounds the reserve up, so rounding always favours the curve. The contract's integer math (MakinaQuoteMath.sol, exposed as quoteBuy and quoteSell on every launch) is the source of truth; the numbers on this page are rounded for reading.