> For the complete documentation index, see [llms.txt](https://dyorhq.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://dyorhq.gitbook.io/docs/launchpad/graduation.md).

# Graduation

Graduation is the moment a coin leaves its bonding curve and becomes a normal token with a permanently locked liquidity pool.

## When it happens

The curve tracks how much of the pair asset it has raised (net of fees). When a buy pushes that amount to the pair's threshold, the curve is complete and graduation runs **in the same transaction**. The final buy is clamped to exactly what the curve needs; any excess is refunded to the buyer.

| Pair asset | Threshold                                                            |
| ---------- | -------------------------------------------------------------------- |
| MON        | $4,324.56 worth of MON at the price when the launchpad was deployed  |
| USDC       | 4,324.56 USDC                                                        |
| AUSD       | 4,324.56 AUSD                                                        |
| aBIL       | $4,324.56 worth of aBIL at the price when the launchpad was deployed |

The MON and aBIL thresholds were set from those assets' prices when the launchpad was deployed, and each coin keeps the threshold it launched with. The coin page shows it ("Graduates at X \<PAIR> raised").

## What happens at graduation

1. The raised pair asset and the coins the curve never sold are swept out of the curve. Only the coins the final price implies (about 21.6% of supply) go into the pool; the rest (10% of supply) is held in the locker outside the pool.
2. A pool is created at the **curve's final price** so there's no jump between the last curve trade and the first pool trade:
   * **Uniswap v4**: a full-range position in the canonical Uniswap v4 PoolManager on Monad, with the DyorHQ hook attached (that's what charges the 1% pool fee and creator tax). Locked in the DyorHQ **LaunchLocker**.
   * **Monday Trade**: a full-range position in a Monday spot pool at the 1% fee tier. Native-MON coins pair with WMON on Monday. Locked in the DyorHQ **Monday fee vault**.
3. The position is locked. **Neither locker has a function that removes liquidity**, not for the creator, not for DyorHQ. Only earned fees can ever leave.
4. The coin's page switches to **Graduated**, shows a **Pool fee** row (1% on either venue; on Uniswap v4 the DyorHQ hook charges it, because the pool's own LP fee is 0%) and a **Swap TICKER on \<VENUE>** button that opens the Swap screen with the pair preselected. On Uniswap v4 it also shows fees **Waiting for a sweep**, when there are any.

## If graduation gets stuck

If the pool can't be created in the buy that fills the curve, the curve stays full and the coin shows **Graduation pending**. Nothing trades until it graduates: the curve takes no more buys or sells, and there's no pool yet. The coin's page shows **Stuck since** and a **Retry Graduation** button; anyone can retry and pays only the gas.

For a coin that graduates on Monday Trade, DyorHQ's keepers finish the graduation (on the current launchpad, and on previous ones that support it): they retry it on Monday Trade and, if Monday Trade still refuses it, graduate the coin into a locked Uniswap v4 pool instead. On the current launchpad the page shows when this **Uniswap v4 fallback** opens: as soon as the coin is stuck, or, for an aBIL coin, a day later unless DyorHQ allows it sooner. On previous launchpads, an aBIL coin moves to Uniswap v4 only once DyorHQ allows it. The app itself only offers **Retry Graduation**.

If a graduation is still stuck after 7 days, DyorHQ can put the coin into refund mode: holders sell back into the curve at its price with no fees, and nothing can be bought.

## Choosing the venue

<figure><img src="https://2315413579-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fn3ZLa5CyOGEcKzuTuITR%2Fuploads%2Fgit-blob-dd469c1ad7e6b5f1c31ddad014b54a912f732d36%2Fdevice-mockup_1.5x_postspark_2026-09-27_16-01-39.png?alt=media" alt=""><figcaption></figcaption></figure>

The creator picks **Uniswap v4** or **Monday Trade** at launch. aBIL-paired coins can only graduate on Monday Trade (that's where aBIL has liquidity), unless a stuck graduation moves them to Uniswap v4 (see above).

## Trading after graduation

Graduated coins trade through **Swap**. Uniswap v4 quotes include graduated Launchpad pools automatically (the route text is tagged "launchpad"); Monday-graduated coins are quoted by the Monday Trade venue. The pool fee is 1% via the DyorHQ hook on Uniswap v4, or Monday's 1% tier on Monday Trade. See [Creator Fees & Holder Rewards](/docs/launchpad/fees-and-rewards.md) for where those fees go.

The Launchpad page still tracks a graduated coin's price (read live from its Uniswap v4 or Monday Trade pool, or the curve's final price if the pool can't be read) and market cap, and lists it under **Graduated**.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://dyorhq.gitbook.io/docs/launchpad/graduation.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
