A lot of people are building Solana trading bots with ChatGPT or Claude right now. I was one of them. The bot part turns out to be easy. Knowing whether it would actually make money is the hard part, because almost every test runs on made-up or smoothed-over data.
So we started recording everything. Every pump.fun coin that graduates to a PumpSwap pool, every trade in its first 30 minutes, who was behind the launch, and how it ended. Here's what three days of that tape show: 2,193 graduates, October 10 to 12, 2026 (UTC).
1. Most graduates collapse, and fast
- 62.9% dropped 80% or more from the graduation price at some point in the first 10 minutes.
- 15.0% touched 2x in the same window.
- Only about 5% touched 3x (from the Oct 10-11 subset, 1,410 coins).
"Graduated" sounds like a finish line. For most coins it's the top.
2. You get about two minutes
When a big holder dumps (a single sale big enough to crater the pool), the median time was 2.2 minutes after graduation (894 coins had one). Almost half of those dumps came inside the first 2 minutes.
If your bot polls an API every 30 seconds, sends a transaction, and waits for confirmation, a big part of that window is already gone. Test your bot's real reaction time, not just its logic.
3. The popular "bundle = rug" rule looked backwards
A lot of filters treat a bonding curve that fills in seconds as a bundled rug and skip it. On Oct 10-11 (1,408 graduates):
- Curve filled in under 5 seconds: 51.0% crashed 80%+ within 10 minutes.
- Slower fills: 85.0% crashed.
Two days isn't enough to call it a law. It's enough to say: check your filters against real outcomes before you trust them.
4. Watch the dev wallet
Also Oct 10-11, 1,248 graduates with holder data:
- Dev still holding more than 5% of supply at graduation: 49.7% crashed.
- Dev already sold down to 5% or less: 83.9% crashed.
What this means if you're building a bot
- Paper results lie unless your fills are honest. Use the next trade's price, not the one you saw. Add fees (they're bigger than you think on small pools).
- Test on what actually happened. Random-walk or candle data hides the two-minute collapse completely.
- Size for the 95% that never 3x. "Sell at 3x" strategies look great until you count the coins that never get there.
- Write your gaps down. If your recorder drops for a minute, mark it. Silent gaps make stats look better than they are.
Try it yourself
There's a free 2-hour sample (every dataset, Oct 10 14:00-16:00 UTC) on Kaggle and Hugging Face. Loading it is a few lines:
import gzip, json import pandas as pd def load(path): with gzip.open(path, "rt") as f: return pd.DataFrame(json.loads(line) for line in f) trades = load("gradtrades-2026-10-10-1400-1600utc.jsonl.gz") grads = trades[trades.type == "grad"] print(len(grads), "graduations,", (trades.type == "trade").sum(), "trades") Or pip install launchtape for a small helper that downloads and reads the files.
The full daily data (every graduate, every day since Oct 3, plus who's behind each launch, other launchpads and Meteora pool minutes) is at launchtape.io, from $10 a month.
Questions about how any number was measured: ask in the comments, happy to show the method.
