Dynamic Bonding Curve (DBC) is Meteora’s token launch primitive for creating a virtual reserve pool, trading through a configured bonding curve, and migrating finished pools to DAMM v1 or DAMM v2. To learn more about fee behavior, migration design, and formulas, you can read the following documentations.Documentation Index
Fetch the complete documentation index at: https://docs.meteora.ag/llms.txt
Use this file to discover all available pages before exploring further.
Learn more about DBC
Overview of DBC, universal curves, launch configurations, fees, surplus, leftover tokens, and migration.
DBC Formulas
Formulas for price, curve progress, reserves, fees, and migration calculations.
Integration
Program Accounts
Account model for pool configs, virtual pools, vaults, metadata, operators, and migration accounts.
Program Instructions
Instruction families for partners, creators, swaps, migration, fee claims, and operators.
Program Events
Event-CPI payloads for configs, pools, swaps, fee claims, migration, and operator flows.
Program Errors
Anchor custom errors, messages, and common integration causes.
TypeScript SDK
Official TypeScript SDK for config builders, pool creation, quotes, swaps, migration, and state reads.
Rust Integration
Rust quote helpers and program-side integration notes for
dynamic_bonding_curve.Go Integration
Go examples for pool reads, swaps, fee claims, and creator transfer flows.
Program IDs
Thedynamic_bonding_curve program ID is the same on mainnet and devnet:
| Network | Program ID |
|---|---|
| Mainnet Beta | dbcij3LWUppWqq96dh6gJWwBifmcGfLSB5D4DuSMaqN |
| Devnet | dbcij3LWUppWqq96dh6gJWwBifmcGfLSB5D4DuSMaqN |
| Authority | Address |
|---|---|
| Pool Authority | FhVo3mqL8PW5pH5U2CN4XE33DokiyZnUwuGpH2hmHLuM |
DBC Program
Anchor program source for
dynamic_bonding_curve.DBC IDL
Published Anchor IDL used by the TypeScript SDK.
TypeScript SDK
Public SDK for transaction builders, state reads, quotes, curve helpers, PDA helpers, and tests.
Go Examples
Go examples for backend reads, swaps, fee claims, and crfeator transfer flows.
Migration Keepers
Meteora runs migration keepers on mainnet to migrate eligible DBC pools when the bonding curve is complete and the pool has enough quote-side liquidity.| Keeper | Requirement |
|---|---|
CQdrEsYAxRqkwmpycuTwnMKggr3cr9fqY8Qma4J9TudY | pool_config.migration_quote_threshold is 10 SOL, 750 USDC, or 1500 JUP. |
DeQ8dPv6ReZNQ45NfiWwS5CchWpB2BVq1QMyNV8L2uSW | pool_config.migration_quote_threshold is at least 750 USD worth of quote token. |
Migration keepers run on mainnet. The Manual Migrator supports both mainnet and devnet.
DAMM Fee Config Keys
The SDK exposes these arrays asDAMM_V1_MIGRATION_FEE_ADDRESS and DAMM_V2_MIGRATION_FEE_ADDRESS.
DAMM v1
| Option | Fee | Config key |
|---|---|---|
0 | 25 bps | 8f848CEy8eY6PhJ3VcemtBDzPPSD4Vq7aJczLZ3o8MmX |
1 | 30 bps | HBxB8Lf14Yj8pqeJ8C4qDb5ryHL7xwpuykz31BLNYr7S |
2 | 100 bps | 7v5vBdUQHTNeqk1HnduiXcgbvCyVEZ612HLmYkQoAkik |
3 | 200 bps | EkvP7d5yKxovj884d2DwmBQbrHUWRLGK6bympzrkXGja |
4 | 400 bps | 9EZYAJrcqNWNQzP2trzZesP7XKMHA1jEomHzbRsdX8R2 |
5 | 600 bps | 8cdKo87jZU2R12KY1BUjjRPwyjgdNjLGqSGQyrDshhud |
DAMM v2
| Option | Fee | Config key |
|---|---|---|
0 | 25 bps | 7F6dnUcRuyM2TwR8myT1dYypFXpPSxqwKNSFNkxyNESd |
1 | 30 bps | 2nHK1kju6XjphBLbNxpM5XRGFj7p9U8vvNzyZiha1z6k |
2 | 100 bps | Hv8Lmzmnju6m7kcokVKvwqz7QPmdX9XfKjJsXz8RXcjp |
3 | 200 bps | 2c4cYd4reUYVRAB9kUUkrq55VPyy2FNQ3FDL4o12JXmq |
4 | 400 bps | AkmQWebAwFvWk55wBoCr5D62C6VVDTzi84NJuD9H7cFD |
5 | 600 bps | DbCRBj8McvPYHJG1ukj8RE15h2dCNUdTAESG49XpQ44u |
6 | Customizable | A8gMrEPJkacWkcb3DGwtJwTe16HktSEfvwtuDh2MCtck |
Commands
| Task | Command |
|---|---|
| Build TypeScript SDK | cd packages/dynamic-bonding-curve && pnpm install && pnpm run build |
| Run TypeScript SDK tests | cd packages/dynamic-bonding-curve && pnpm test |
| Run TypeScript type checks | cd packages/dynamic-bonding-curve && pnpm run check-types |
| Run Rust quote tests | cd dynamic-bonding-curve && cargo test -p dynamic-bonding-curve-sdk |
| Run Go examples | go run examples/<file-name>.go |
| Run program tests | anchor test from the dynamic-bonding-curve repository |
Some SDK tests depend on local validator fixtures and deployed program artifacts. For production integrations, simulate transactions and test on devnet before sending mainnet transactions.
Stay Updated
DBC Changelog
Program, IDL, SDK, quote, migration, and validation changes for integration planning.

