> For the complete documentation index, see [llms.txt](https://degen-games-2.gitbook.io/degen-games-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://degen-games-2.gitbook.io/degen-games-docs/how-the-game-works/bonding-curve.md).

# Bonding Curve

A vending machine for your coin. Always buys, always sells, and the price is set by math.

**Climb the curve.** A bonding curve is a vending machine for a coin. It holds the whole supply from the moment of launch. It will always sell you tokens and always buy them back. Nobody sets the price. It's calculated from how much of the supply has been bought so far.

* More buys push the price **up**.
* More sells bring it **down**.
* You never wait for someone to take the other side of your trade.

## How the price is set

Each curve is a **constant-product** market, the same `x × y = k` formula Uniswap uses, with one twist: a **virtual reserve**.

* `x` is the quote reserve: the raise asset in the curve, plus the virtual amount.
* `y` is the token reserve: tokens still in the curve.
* The price of one token is `x ÷ y`.

The **virtual reserve** is an amount of the raise asset that counts for pricing but was never deposited and can never be withdrawn. It gives every coin a real starting price, so the first buyer doesn't get the supply for nothing, and nobody has to seed the curve with money at launch.

## The numbers (ETH coins)

|                                          | Value                                                   |
| ---------------------------------------- | ------------------------------------------------------- |
| Total supply                             | 1,000,000,000                                           |
| Virtual reserve                          | 1.68 ETH                                                |
| Graduation target                        | 4.2 ETH raised                                          |
| Starting price                           | 0.00000000168 ETH per token (1.68 ETH fully diluted)    |
| Price when the curve fills               | ≈ 0.0000000206 ETH per token (≈ 20.6 ETH fully diluted) |
| Price climb from first buy to graduation | **12.25×**                                              |
| Sold on the curve                        | ≈ 714.3M tokens (71.4%)                                 |
| Held back for the pool                   | ≈ 285.7M tokens (28.6%)                                 |

Every [raise asset](/degen-games-docs/how-the-game-works/raise-assets.md) uses the **same curve shape**, with the graduation target set at 2.5× the virtual reserve. So every coin sells about 71.4% of its supply on the curve, and its price climbs 12.25× from the first buy to graduation, whatever it raises in. Only the size changes.

## The Road to Graduation

Progress is simply **amount raised ÷ graduation target**. Because the price follows `x²`, it climbs faster the closer a coin gets to graduating:

| Road to Graduation | ETH raised |      Tokens sold | Price vs. start |
| -----------------: | ---------: | ---------------: | --------------: |
|                 0% |          0 |                0 |           1.00× |
|                25% |       1.05 | ≈ 384.6M (38.5%) |         ≈ 2.64× |
|                50% |       2.10 | ≈ 555.6M (55.6%) |         ≈ 5.06× |
|                75% |       3.15 | ≈ 652.2M (65.2%) |         ≈ 8.27× |
|               100% |       4.20 | ≈ 714.3M (71.4%) |          12.25× |

{% hint style="info" %}
These figures are the curve's math, not a forecast. Most coins never fill their curve.
{% endhint %}

## Worked example

You're the first buyer on a fresh ETH coin and you spend **0.1 ETH**.

1. The 1% trading fee comes off first. That leaves 0.099 ETH to reach the curve.
2. Tokens out = `0.099 × 1,000,000,000 ÷ (1.68 + 0.099)` ≈ **55.6M tokens**, about 5.6% of supply.
3. The curve now holds 1.779 ETH (virtual plus real) and ≈ 944.4M tokens. The price has moved up about 12%.

A big buy moves the price more than a small one, so the average price you pay on a large order is worse than the spot price you saw. **SLIP** caps how far that can go before your trade cancels itself.

## Fees sit outside the curve

* **Buys:** the trading fee, any creator tax and any snipe tax come off what you spend. Only the remainder reaches the curve.
* **Sells:** the curve prices your sale first. Then the fees come off what you receive.
* Fees are always taken in the raise asset, never in the coin.

See [Fees](/degen-games-docs/how-the-game-works/fees.md).

## Held back for the pool

The curve never sells its last ≈ 28.6% of supply. That share is reserved from launch to become the coin's Uniswap liquidity:

```
reserved = supply × virtual ÷ (virtual + target)
         = 1,000,000,000 × 1.68 ÷ (1.68 + 4.2)
         ≈ 285,714,286 tokens
```

It's fixed when the coin is created. Nobody decides later how much liquidity the coin gets, so every coin with the same settings graduates into a pool of the same size, at the same price. See [Graduation](/degen-games-docs/how-the-game-works/graduation.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://degen-games-2.gitbook.io/degen-games-docs/how-the-game-works/bonding-curve.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
