Solana Bonding Curves Explained: The Math Behind Token Pricing (2026)
Understand how bonding curves work on Solana, from Pump.fun's pricing formula to virtual reserves, graduation mechanics, and how traders use curve math to their advantage.
Understand how bonding curves work on Solana, from Pump.fun's pricing formula to virtual reserves, graduation mechanics, and how traders use curve math to their advantage.

Disclosure: This article contains affiliate links. If you sign up through them, MadeOnSol may earn a commission at no extra cost to you. This never affects our rankings, ratings, or reviews.
Every token on Pump.fun starts its life on a bonding curve — a mathematical function that determines the token's price based on supply. Understanding how these curves work is not just academic. Traders who grasp bonding curve math can calculate exact prices at any supply level, predict graduation points, estimate slippage before buying, and understand why early entries have such outsized returns.
This guide breaks down bonding curve mechanics as they work on Solana, with practical applications for traders.
A bonding curve is a mathematical formula that defines the relationship between a token's price and its circulating supply. Unlike a traditional order book where buyers and sellers set prices, a bonding curve sets the price algorithmically. There is no counterparty — you buy from and sell to the curve itself.
The core principle: as more tokens are purchased, the price increases along the curve. As tokens are sold back, the price decreases.
This creates a deterministic pricing model. At any point, you can calculate exactly what the price will be after buying or selling a specific amount of tokens, with no uncertainty about fills or order book depth.
The most common bonding curve implementation on Solana uses the constant product formula, the same model pioneered by Uniswap:
x × y = k
Where:
When you buy tokens, you add SOL to the reserve (x increases) and remove tokens from the reserve (y decreases). The product k stays the same, which means the price (ratio of x to y) changes.
The instantaneous price of the token in SOL is:
Price = x / y = SOL reserve / Token reserve
As people buy tokens (adding SOL, removing tokens), the SOL reserve grows and the token reserve shrinks, pushing the price up. The curve is not linear — it is hyperbolic, meaning price increases accelerate as more supply is purchased.
Pump.fun uses a modified constant product curve with virtual reserves. Here is how it works.
When a token is created on Pump.fun, the bonding curve is initialized with virtual reserves:
Tools mentioned
Live health scores, average ratings, and direct links on MadeOnSol.

MCP server powered by Solana Agent Kit for on-chain actions

Telegram trading bot for Solana — snipe new tokens, set limit orders, auto-sell, and copy trade with built-in MEV protection
Launch a memecoin on Solana in under a minute

DeFi ecosystem directory with curated Solana project listings and analytics

Browser-based IDE for developing and deploying Solana programs
Build a deployer sniper bot
Access deployer alerts, bonding stats, and tier data via API. Free tier: 200 requests/day.
New customers try Pro free for 5 days — card, cancel anytime.
import { MadeOnSol } from "madeonsol";
const client = new MadeOnSol({ apiKey: "msk_your_key" });
// Elite deployer alerts with KOL buy enrichment
const { alerts } = await client.deployer.alerts({ limit: 5 });
// Top deployers by bonding rate
const { deployers } = await client.deployer.leaderboard({ tier: "elite" });Keep reading

Education
How MadeOnSol classifies pump.fun deployers into tiers, tracks bonding rates, and surfaces the 34 elite deployers whose tokens graduate at 71% — versus the 1-2% baseline.

Trading
Understand how Solana transaction bundling works, why token launches use bundle buys on Pump.fun, and how to detect bundled tokens as a trader.

Developer Tools
Get a Discord embed the moment a proven Solana deployer — one with a real bonding track record on pump.fun or LaunchLab — launches a new token or one of their tokens bonds. This tutorial walks the open-source deployer-alert-discord-bot starter: zero dependencies, ~130 lines, a Discord webhook, and a free MadeOnSol API key.

Guides
A repeatable checklist for evaluating any new pump.fun launch before you buy. Five checks, under 60 seconds, that separate the 1.4% of tokens worth holding from the 98.6% that dump in the first hour.

Guides
Of the 7 million tokens launched on pump.fun, only 97,000 maintained over $1,000 in liquidity. The difference between the 1.4% that survive and the 98.6% that don't is readable on-chain before you buy.

Guides
By the time a KOL tweets a pump.fun token, the best entry is already gone. The real edge is on-chain, before the announcement. Here's what the data shows about KOL timing — and how to use it.
Enjoyed this article?
Real-time KOL trades, Pump.fun deployer intel, and 1,200+ ranked Solana tools — free to explore.
Open the KOL TrackerThe virtual reserves set the initial price point. Without them, the first buy would get tokens at essentially zero cost. The virtual SOL reserve creates an artificial "floor" that gives the token a starting price.
At launch, the price is:
Initial price = Virtual SOL reserve / Virtual token reserve
= 30 / 1,073,000,000
≈ 0.000000028 SOL per token
At a SOL price of $150, this translates to roughly $0.0000042 per token, giving the token an initial market cap of approximately $4,200.
When someone buys tokens worth 1 SOL:
Before: SOL reserve = 30, Token reserve = 1,073,000,000
After: SOL reserve = 31, Token reserve = 30 × 1,073,000,000 / 31 ≈ 1,038,387,097
Tokens received = 1,073,000,000 - 1,038,387,097 ≈ 34,612,903 tokens
Effective price = 1 SOL / 34,612,903 ≈ 0.0000000289 SOL per token
The buyer gets about 34.6 million tokens for 1 SOL. The price moved slightly higher (from 0.0000000280 to 0.0000000298 SOL after the buy).
The same 1 SOL buy has very different price impacts depending on where you are on the curve:
| SOL in curve | Price per token (SOL) | 1 SOL buys | Price impact |
|---|---|---|---|
| 0 (launch) | 0.0000000280 | ~34.6M tokens | 3.3% |
| 10 SOL | 0.0000000373 | ~26.8M tokens | 2.5% |
| 30 SOL | 0.0000000560 | ~17.9M tokens | 1.7% |
| 60 SOL | 0.0000000840 | ~11.9M tokens | 1.1% |
| 80 SOL | 0.0000001026 | ~9.7M tokens | 0.9% |
Notice two things: as more SOL enters the curve, each additional SOL buys fewer tokens (the price is higher), and the price impact of each buy decreases (the reserves are larger relative to the buy size).
This is why early entries on bonding curves have such outsized returns. The first 1 SOL buy moves the price 3.3%, but it also gives you tokens at the lowest price. By the time 80 SOL is in the curve, the price has nearly 4x from launch.
Pump.fun tokens do not stay on the bonding curve forever. When enough SOL has been deposited, the token "graduates" to a full AMM pool.
The graduation threshold on Pump.fun is approximately 85 SOL deposited into the bonding curve. When this threshold is reached:
The graduation market cap is approximately $69,000 at current SOL prices. This is the market cap at which the bonding curve transitions to an open AMM.
Graduation is often a volatile moment. Several things happen:
At graduation (85 SOL deposited):
SOL reserve = 30 (virtual) + 85 (real) = 115
Token reserve = 30 × 1,073,000,000 / 115 ≈ 279,913,043 tokens remaining
Tokens sold during bonding curve = 1,073,000,000 - 279,913,043 ≈ 793,086,957 tokens
Graduation price ≈ 115 / 279,913,043 ≈ 0.000000411 SOL per token
This represents roughly a 14.7x increase from the initial price — meaning anyone who bought at launch and held through graduation is sitting on a ~14x return before the AMM even opens.
Knowing where you are on the curve tells you how much upside remains before graduation:
This calculation helps you size positions appropriately. A 10x potential justifies more risk than a 1.3x potential.
Before executing a buy, calculate how many tokens you will actually receive at the current curve position:
Tokens received = Current token reserve - (k / (Current SOL reserve + Your buy amount))
If the estimated slippage exceeds your tolerance, reduce your buy size or set a limit order.
Trading frontends like Photon and BullX display estimated slippage before execution, but understanding the math lets you verify their calculations and plan multi-transaction strategies.
Some deployers manipulate the bonding curve by:
By monitoring the SOL in the curve (visible on DEXScreener and Birdeye), you can estimate how much of the curve has been purchased by the deployer versus organic buyers.
While Pump.fun dominates Solana token launches, other bonding curve implementations exist:
Price increases linearly with supply: Price = a × Supply + b. These are simpler but less capital-efficient. Early buyers get a moderate advantage, but the price impact of large buys is more predictable.
Price increases exponentially: Price = a × e^(b × Supply). These create very steep price appreciation for early buyers. Even small increases in supply lead to dramatic price increases. Rarely used in practice because they make the token unaffordable very quickly.
Price follows an S-curve: slow growth initially, rapid growth in the middle, and tapering growth at the top. These are theoretically ideal for token distribution but more complex to implement and reason about.
Bonding curves are not just a technical implementation detail — they are the fundamental mechanism that determines token pricing for the majority of new Solana tokens. Understanding the math gives you a concrete edge: you can calculate exact returns at graduation, estimate slippage accurately, identify manipulation patterns, and make informed decisions about entry timing.
The next time you are evaluating a Pump.fun token, check how much SOL is in the curve before buying. That single number, combined with the math in this guide, tells you your potential upside to graduation, your expected slippage, and whether the curve has been heavily purchased by insiders.
Tools like DEXScreener, Birdeye, and RugCheck surface much of this data in user-friendly formats. But having the mathematical intuition behind what those numbers mean is what separates informed traders from those who are just following charts.
Virtual reserves prevent the "first buyer gets infinite tokens" problem. Without virtual reserves, the first buy would get tokens at an effectively zero price with extreme slippage. Virtual SOL reserves create an artificial starting price that ensures even the first buyer pays a meaningful (though low) price. It also makes the price curve smoother for early trading, avoiding the extreme volatility that would occur at very low reserve levels.
No. Once a token is created on Pump.fun, the bonding curve parameters (virtual reserves, graduation threshold) are fixed in the smart contract. The deployer cannot modify them. This is a feature — it means traders can trust that the pricing mechanics will not change mid-curve. However, different platforms may use different parameters for their bonding curves.
When a token graduates, the unsold tokens in the bonding curve (approximately 200-280 million tokens depending on how much was purchased) are deposited into the AMM pool alongside the accumulated SOL. These tokens form the sell-side liquidity in the pool. They are not burned or sent to the deployer — they become part of the tradeable liquidity.
Not with certainty, but you can identify factors that increase the probability: tokens from deployers with a history of graduations, tokens with organic (non-bundled) early buying, tokens with strong narratives or community backing, and tokens that attract attention from KOLs or social media. Tools like RugCheck and the Deployer Hunter on MadeOnSol help you evaluate deployer track records, which is one of the strongest predictive signals.