Creator share

A steady climb — each buyer pays a little more than the last.1% fee4× · 45 → 180 SOL mcap

← All configs

Drag across the chart, or focus it and use the arrow keys, to read the price at any point of the raise.4×1×2×3×4×First trade25%50%75%GraduationQuote raised toward graduationPrice vs first trade45% raised · 2.35×Creator share curve: 45% raised · 2.35×

Try a buy

Already raised Your buyLeft is the first trade. Right is graduation.

Price before you
2.05×
You pay, on average
2.2×
Price after you
2.35×
Left to graduation
55%

The raise is 35% full. You take the next 10%, leaving it 45% of the way to graduation. The price before you is 2.05× the first trade, and 2.35× after you. Across that slice you pay about 2.2× on average. If the whole supply were priced along this curve, market cap moves from about 92.25 SOL to 106 SOL. A flat 1% trading fee sits on the swap and does not change the shape.

Brief

A straight climb, with trading fees and a small slice of LP going to the coin creator.

The price path is the same kind of straight climb as a simple launch. The difference is who gets paid. The creator keeps half of the trading-fee split this config assigns, plus a small slice of LP they can withdraw. The rest of the LP stays locked. Use it when the person who made the coin should earn fees without holding a pile of unlocked liquidity.

Pick this if

  • Creators on your pad should earn trading fees.
  • You can explain that 10% of the LP is withdrawable and the rest is locked.

Leave it if

  • You do not want any LP that can be pulled after graduation.
  • Creators should not touch fees. Keep the claimer-only recipe instead.

How the money moves

  • If the whole supply were priced at the first trade, the market cap would be about 45 SOL.
  • At graduation it is about 180 SOL, which is 4× the starting price. The trading fee stays at 1% for the whole curve. The fee does not add a volatility bump.
  • Of the trading-fee split this config assigns, the coin creator keeps 50% and the fee-claimer keeps the rest. Meteora still takes its protocol fee on the trade.
  • After graduation, 90% of the LP is permanently locked and 10% can be withdrawn (10% creator, 0% partner). Withdrawable LP can be removed. The launchpad wallet can update the token name and image.
  • Mint authority is not left open. Graduation uses Meteora's 1% migration-fee preset.
  • That slice comes out of the quote before it is paired into DAMM v2.
  • Launching a pool on this config does not charge an extra creation fee.

Numbers

Quote
SOL
Token
SPL · 1,000,000,000 supply · 6 decimals
Starting market cap
45 SOL
Graduation market cap
180 SOL
Price by graduation
4× the first trade
Trading fee
1% fee
Volatility fee
Off
Creator trading fee
50%
LP after graduation
90% locked · 10% withdrawable
Team vest
None
Migration fee preset
1%
Metadata
Launchpad can update

A recipe is numbers you deploy as your own PoolConfig. It is not another pad's address.

Deploy this recipe

create-config.ts· Creator share
import { NATIVE_MINT } from "@solana/spl-token";
import { Keypair, PublicKey } from "@solana/web3.js";
import {
  ActivationType,
  BaseFeeMode,
  buildCurveWithLiquidityWeights,
  CollectFeeMode,
  DynamicBondingCurveClient,
  MigrationFeeOption,
  MigrationOption,
  TokenDecimal,
  TokenType,
  TokenAuthorityOption,
} from "@meteora-ag/dynamic-bonding-curve-sdk";

// Creator share — deploy a new PoolConfig. Fee claimer is your wallet.
// This does not point launches at another pad's config address.
const curveConfig = buildCurveWithLiquidityWeights({
  token: {
    tokenType: TokenType.SPLToken,
    tokenBaseDecimal: TokenDecimal.SIX,
    tokenQuoteDecimal: TokenDecimal.NINE,
    tokenAuthorityOption: TokenAuthorityOption.PartnerUpdateAuthority,
    totalTokenSupply: 1_000_000_000,
    leftover: 0,
  },
  fee: {
    baseFeeParams: {
      baseFeeMode: BaseFeeMode.FeeSchedulerLinear,
      feeSchedulerParam: {
        startingFeeBps: 100,
        endingFeeBps: 100,
        numberOfPeriod: 0,
        totalDuration: 0,
      },
    },
    dynamicFeeEnabled: false,
    collectFeeMode: CollectFeeMode.QuoteToken,
    creatorTradingFeePercentage: 50,
    poolCreationFee: 0,
    enableFirstSwapWithMinFee: false,
  },
  migration: {
    migrationOption: MigrationOption.MET_DAMM_V2,
    migrationFeeOption: MigrationFeeOption.FixedBps100,
    migrationFee: { feePercentage: 0, creatorFeePercentage: 0 },
  },
  liquidityDistribution: {
    partnerLiquidityPercentage: 0,
    partnerPermanentLockedLiquidityPercentage: 70,
    creatorLiquidityPercentage: 10,
    creatorPermanentLockedLiquidityPercentage: 20,
  },
  lockedVesting: {
    totalLockedVestingAmount: 0,
    numberOfVestingPeriod: 0,
    cliffUnlockAmount: 0,
    totalVestingDuration: 0,
    cliffDurationFromMigrationTime: 0,
  },
  activationType: ActivationType.Timestamp,
  initialMarketCap: 45,
  migrationMarketCap: 180,
  liquidityWeights: [1, 1, 1, 1],
});

const config = Keypair.generate();
const partner = /* your launchpad wallet */ new PublicKey("YOUR_FEE_CLAIMER");

const createConfigTx = await client.partner.createConfig({
  config: config.publicKey,
  feeClaimer: partner,
  leftoverReceiver: partner,
  payer: partner,
  quoteMint: NATIVE_MINT,
  ...curveConfig,
});