What a bundle is
A bundle pools money to launch one token. It pays for the opening purchase and leaves cash for the agents that trade afterwards. Funding buys shares on a curve: the price rises linearly from 1× to 3× as the bundle fills, so the earliest backers get up to three times as many shares per unit of the quote asset.
Shares are SPL tokens. Until the bundle fills you can sell them back to the curve at its current price. If the funding window closes unfilled, or the creator stands the bundle down, everyone can redeem shares for an equal slice of the escrow.
Two venues
The creator picks where a bundle launches, and with it how backers get paid:
- Loom fees. The token launches on Meteora's Dynamic Bonding Curve and graduates to a Meteora DAMM v2 pool whose liquidity is locked forever. The bundle owns 80% of that liquidity, so it earns 80% of the pool's trading fees.
- StonkFun rewards. The token launches on Raydium LaunchLab under StonkFun's reward config and is listed on stonk.fun. Every transfer pays a 1% or 3% tax that StonkFun pays out to holders. The vaults hold the largest share of supply, so they collect the largest share of the rewards.
| Loom fees | StonkFun rewards | |
|---|---|---|
| Rails | Meteora Dynamic Bonding Curve → DAMM v2 pool | Raydium LaunchLab → CPMM pool, under StonkFun's reward config |
| Token | SPL token with Metaplex metadata | Token-2022 with a 1% or 3% transfer tax |
| Curve | The bundle's own, sized to sell exactly the vaults' share; the launch buy completes it | Always sells 79.31%; the launch buy takes the vaults' share, the public buys the rest |
| Pool trading fee | 2%: Meteora keeps 0.4%, the bundle earns ≈0.6%, and ≈1% buys back and burns $LOOM | 1.25%, to Raydium and StonkFun |
| Bundle earns | ≈0.6% of every pool trade, plus 80% of the 0.25% curve fee on its own launch buy | None from trading |
| Transfer tax | None | 1% or 3% of every transfer, paid out to holders |
| Backers earn | The bundle's pool fees | Holder rewards: the tax, paid out to holders. The vaults are the biggest holder |
| Share of supply | 51–85% | 51% up to 77.7% (1% tax) or 74.6% (3% tax) |
| Listed on stonk.fun | No | Yes |
StonkFun's other, standard config pays creators nothing, so Loom doesn't use it.
Fill and launch
The funding that reaches the target is capped at exactly what's left. Anyone may then send the launch, which fits in one transaction. It:
- takes the one-time 5% launch fee;
- creates the token on its bonding curve, with the bundle account as creator. On Loom fees that's a Meteora DBC curve under a config the bundle creates for itself; on StonkFun, a LaunchLab curve under StonkFun's config. The token has 1B supply and 6 decimals, and its address ends in Loom;
- buys the vaults' share of supply off the curve with the inventory budget. The curve charges only for what it sells, so the rest of the budget stays as cash;
- records the tokens bought and the cash left over, which are then split evenly across the vaults.
Sizing to the share of supply
The creator picks the share of supply the vaults end up holding, and that's exactly what they get.
On Loom fees each bundle gets its own one-segment curve. With start and end prices P₀ and P₁, it sells L(1/√P₀ − 1/√P₁) tokens and the pool takes the raise at P₁, so √P₀ = √P₁ · (1 − share) / share, which is why the share must be over half. The raise is set just under what the bundle can pay, and the launch buy completes the curve on its own. The vaults land within 0.0001% of the target (DBC keeps a sliver of dust back).
On StonkFun the curve always sells 79.31% of supply, a rule StonkFun sets. The tax is charged twice on the way in: on the launch buy, and again when tokens move into the vaults. So the launch buys share ÷ (1 − tax)², and the curve's raise is solved so the bundle's budget buys exactly that much. The public buys the rest of the curve, and it graduates once they do. The tests check the vaults land within 0.01% of the target (69.99999984% for a 70% target).
The launch calculator on the home page runs the same math.
Graduation
On Loom fees, a completed curve migrates into a Meteora DAMM v2 pool with a 2% fee. Migration is permissionless: Loom's keeper sends it straight after launch (Meteora's own keepers may get there first). The pool's liquidity is locked forever in two positions: 37% owned by the bundle, 63% by the Loom treasury. Each earns its share of the pool's fees after Meteora's 20% cut: the bundle ≈0.6% of every trade, and Loom ≈1%, which buys back and burns $LOOM.
On StonkFun, Raydium's migration wallet moves the completed curve into a CPMM pool whose liquidity is locked in Raydium's LP locker.
Vaults and agents
Each vault is a program-owned account bound to one token pair. An operator key (the agent) can make the vault trade, but every trade goes through the Loom program, which checks the vault's balances before and after:
- only allowlisted venues (Meteora DBC and DAMM v2, Raydium LaunchLab and CPMM, plus aggregators the admin adds), and only in the bundle's own curve or pool, with no referral fee;
- a sell can only reduce tokens and must increase cash, at or above the vault's sell floor;
- a buy needs a buy ceiling set and must stay under it;
- hourly caps on tokens sold and cash spent, fixed at launch;
- swaps only: a vault can never open, move or withdraw pool liquidity.
The agents run one strategy across every vault: lean against moves inside a volatility-sized range to keep it trading, stop selling when a breakout is confirmed and let the range step up behind it, and ladder support buys in a breakdown from a capped budget. Trade size follows pool depth, so it scales with market cap. A steward writes the range onto each vault as its floor and ceiling; it cannot move funds. A guardian can pause a vault or disable an operator. Pausing never releases capital to anyone.
Fees
On Loom fees the bundle earns, in the quote asset, its locked position's share of the pool's fees (≈0.6% of every trade) and 80% of the curve fee on its own launch buy. Anyone can call collect_fees to pull them into the bundle, where they're split:
- 20% to the platform;
- the team share (0–25% of the remainder, fixed when the bundle opens) to the team wallet;
- the rest to backers, pro-rata by shares, through a per-share accumulator that reads no prices or oracles.
You're paid in the asset the bundle raised (SOL, USDC or a tokenized stock), never in the launched token. To claim, you register your shares (burning them into a fee position) and claim. Shares registered late still collect everything accrued since launch.
Holder rewards
On StonkFun, rewards are paid straight to holder wallets, so the vaults' share lands in the vaults. Each vault keeps a quote_book: the cash its own seeding and trading account for. Anything above it is a reward.
harvest_rewards is permissionless. It moves the surplus into the bundle, which splits it exactly like a fee: 20% platform, the team share, the rest to backers. On SOL pairs, rewards may arrive as native SOL, so sweep_native_rewards moves and wraps them first.
Quote assets
A bundle raises in one asset, and its curve, pool, vault cash and payouts all use it:
- SOL, wrapped as needed;
- USDC;
- SPYx, the S&P 500 as a tokenized stock (an xStock).
Tokenized stocks are Token-2022 tokens with a permanent delegate: the issuer can move or seize them from any account. That applies to bundle and vault balances held in them too. Back a stock-quoted bundle only if you accept that issuer risk.
The …Loom address
Every Loom token's address ends in Loom, so you can tell one at a glance. (Base58 addresses have no capital O, so it's “Loom”, never “LOOM”.)
The token's mint is a program address derived from the bundle and a salt. When you create a bundle, the app tries random salts in Web Workers on every core until the address ends in Loom, about 22 million tries on average and a few seconds on a typical laptop. The program checks the suffix and refuses any token address that doesn't end in Loom.
Economy metrics
The Loom economy numbers add up every bundle and vault on-chain. Amounts in different assets are converted to USD with Jupiter prices; if pricing fails, they're shown per asset instead.
- Vault capital
- What every vault holds right now: its cash, plus its tokens at the current price. Before graduation the price comes from the curve; after, from the pool.
- Value woven
- The market value of every token launched: for each one, the current price × 1B supply, added up.
- Weavers
- Vaults with an enabled operator that aren't paused. The sub-label counts distinct operator keys.
- Fees earned
- All fees and harvested rewards that reached bundles, plus the 5% launch fees. “To backers” is the backers' share; “to the protocol” is the 20% platform cut plus launch fees.
- Volume through Loom
- Money raised into bundles, plus the vaults' own trading (bought + sold), plus an estimate of everyone else's trading. That estimate is read from fees: on Loom fees, fees ÷ 0.59%; on StonkFun, rewards ÷ (tax × the vaults' share of supply), less the vaults' own trades. It's marked ≈.
What can go wrong
- After launch your contribution is permanent. Shares are a claim on fees or rewards, not a redeemable deposit.
- Fees and rewards depend on trading. A token nobody trades earns nothing.
- Agents can run out of cash to buy or inventory to sell. Limits slow spending; they don't set a price floor for the token.
- A compromised operator can still make bad trades inside its limits until the guardian disables it.
- Tokenized-stock issuers can seize balances held in their tokens.
- This is unaudited, experimental software. Don't put in more than you can lose.
Ready
Find a bundle to back.