> For the complete documentation index, see [llms.txt](https://docs.j.tools/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.j.tools/tools/launch/pumpfun-create-and-bundle-buy.md).

# Pump.fun Create and Bundle Buy in One Flow

Pump.fun Create and Bundle Buy launches a token on the Pump.fun bonding curve and fires your opening buys from up to 16 wallets you control, all packed into one Jito bundle on Solana mainnet. The create transaction and the first buys ride together in the same submission, so the order of the launch is yours instead of a sniper's. The whole thing runs from your browser wallet, with the full platform fee, the base plus the per-wallet tier, shown before you ever sign.

You drive the launch from the [Pump.fun Create and Bundle Buy tool](https://j.tools/en/tools/pumpfun-create-and-bundle-buy) in the J Tools app. This is the operator-level flow, not the basic single-wallet create. If you want the plain version first, the [launch a token guide](/guides/launch-a-token.md) and the [choosing how to launch](/concepts/choosing-how-to-launch.md) page walk through the options.

## What it is

This tool does two jobs in one shot: it creates a brand-new Pump.fun token, and it places the first buys on that token from a group of wallets you own. Both jobs travel together inside a single Jito bundle.

A Jito bundle is a set of transactions that a Jito-enabled validator treats as one unit. They land in the order you set, in the same block, with no other transaction wedged between them. That property is the whole point. When the create transaction and your buy transactions sit in the same bundle, nobody can slip a transaction between them. Your wallets become the earliest holders of the token because there is no room for a stranger to buy in first.

## Why use this tool

The problem is sniping. Pump.fun mints are public the instant the create transaction confirms, and bots scan for them around the clock. If your own opening buys are separate transactions racing behind the create, a sniper can buy in front of you at the bottom of the curve, then dump on your community the moment the price moves. You launched the token and somebody else took the cheapest coins.

It is built for people running real launches: project operators, launch coordinators, and traders who already manage several funded wallets. If you only need a single-wallet Pump.fun token with no anti-snipe sequencing, this is more machinery than you want. Use it when controlling the opening of the curve actually matters to you, and when you already hold the keys for every wallet you plan to buy from.

The alternative is scripting the same thing yourself: writing the create, building each buy, funding wallets, computing a Jito tip, and submitting to the block engine, all without a single mistake under time pressure. This tool packages that into a form. You fill in the token, list your wallets, pick a tip, and review one summary before anything is sent.

## How it works (under the hood)

Here is the actual sequence, at the level you need to trust it.

**1. You configure the launch in the browser.** Token metadata (name, symbol, description, image) and your list of buy wallets stay client-side. Each buy wallet's private key is read in your browser so the tool can sign that wallet's buy. Those keys are used to sign and are not sent to J Tools. This is why the tool warns you to only use wallets you control.

**2. The app builds the transactions.** It constructs the Pump.fun create transaction, which mints the new token on the Pump.fun program and sets up its bonding curve account and associated accounts. Your bundle wallets' buys are packed about four to a transaction, each buy a swap against that fresh bonding curve, because a Jito bundle holds at most 5 transactions. The mint keypair is generated fresh for each launch; the optional Custom CA add-on reserves a pre-grinded address ending in `pump` instead.

**3. The platform fee is attached on-chain.** The fee transfer to the J Tools fee wallet is included as part of the bundle, so the fee settles in the same submission as your launch. Nothing about the fee is taken from your buy amounts behind your back; the summary shows every line before you sign.

**4. A Jito tip is added.** The create transaction carries a tip transfer to the validator that lands the block. Jito bundles need a paid tip to land, and the tip is how a bundle competes for its place. A higher tip improves the odds the bundle is selected in the window you want.

**5. You sign.** The create transaction is signed by the creator wallet, and each buy is signed by its own wallet's key in the browser. Signing happens locally. J Tools never holds your keys and never co-signs on your behalf.

**6. The bundle goes to the Jito Block Engine.** The bundle is at most 5 transactions: the first carries the create, the creator buy, the platform fee and the Jito tip, and the rest pack about four wallet buys each. It is submitted as one unit, and the tool holds and reposts it across slots if the first attempt misses. When the bundle lands, its transactions land together in the order given, so a sniper cannot interleave between your create and your buys.

**7. The app polls for confirmation.** After submission, the tool watches the bundle and reports what landed. The in-app summary is the source of truth for what actually confirmed on-chain.

<figure><img src="/files/W2vGUalqfeevZjsyrfPn" alt="How create plus bundle buy works"><figcaption></figcaption></figure>

## When to use it

Use it when:

* You run Pump.fun launches and want controlled, anti-snipe execution instead of a plain single-wallet create.
* You want the creator buy plus an initial buy spread across several wallets you own, all sequenced together.
* You already hold the private keys for every wallet you plan to include.

Skip it when:

* You only need a simple single-wallet Pump.fun token. Use [Pumpfun Create](/tools/launch/pumpfun-create.md) instead.
* You want to seed a real liquidity pool on a DEX rather than a bonding curve. Use [Create LP](/tools/liquidity/create-lp.md) instead.
* You do not control the keys for the wallets you would buy from. This tool requires raw keys for each bundle wallet, so it is the wrong fit for any wallet you cannot fully own.

For the mechanics behind atomic landing, read up on [bundles and Jito](/concepts/bundles-and-jito.md).

## Before you start

* A connected wallet **or** a creator private key. Do not add the creator wallet to your bundle wallet list; its buy is folded into the create transaction and signed by your wallet, and the launch is blocked if the creator appears among the bundle rows.
* Token metadata ready: a name (up to 32 characters), a symbol (up to 10 alphanumeric characters), a description (up to 500 characters), and a token image uploaded as a file (PNG, JPG, GIF or WebP, up to 5MB). A banner and social links are optional.
* A private key for each bundle wallet (Base58, Base64, or array format). Each wallet's balance has to cover its own buy amount plus the fixed 0.01 SOL the tool sets aside per wallet for rent, transaction fees, and a safety margin.
* SOL to cover the platform fee, the per-wallet service fee, the creator and bundle buy amounts, the Jito tip, and network fees. The app shows the full breakdown before you launch.

{% hint style="info" %}
By default the launch uses a randomly generated mint address. If you want a contract address ending in **`pump`**, turn on the Custom CA toggle: it reserves a pre-grinded pump-suffix mint from a pool for a +0.1 SOL surcharge (subject to pool stock) and shows you the address before you sign.
{% endhint %}

## Step by step

{% stepper %}
{% step %}

### Connect and fill in token info

Connect a wallet or supply the creator private key. Enter the name, symbol and description, upload the token image, and add a banner or social links if you want them. Twitter and Telegram accept an `@handle` or a full URL; website wants a full URL.
{% endstep %}

{% step %}

### Set the creator buy

Enter how much SOL the creator wallet spends as the first buy in the sequence. Creator buy is on by default with `0.2` SOL prefilled; change it to your opening size, or turn the toggle off if the creator should not buy.
{% endstep %}

{% step %}

### Pick your speed

Pick a speed preset (Normal, Fast, or Turbo), or choose Custom and enter a SOL budget. Each tier sets the compute priority fee and the Jito tip together. A higher tier improves the odds your bundle wins its auction and lands in the block you want.
{% endstep %}

{% step %}

### Add your bundle wallets

Add up to 16 wallets, each with its private key and a buy amount. The tool sets aside a fixed 0.01 SOL reserve per wallet on its own. Refresh balances so the tool can check funds and compute a fee-safe maximum buy for each row.
{% endstep %}

{% step %}

### Review the summary

Check the live preview: wallet count, total bundle buy, the platform fee, the per-wallet service fee, the Jito tip, and the grand total. Nothing is sent until this looks right.
{% endstep %}

{% step %}

### Launch

Click the launch button. The tool runs preflight (balances, duplicate wallets, the creator wallet not being in the list, the 50 SOL cap on total buys, and whether every wallet fits the bundle), builds the create-plus-buy bundle, and has each wallet sign. It then submits the create and all buys as one Jito bundle, polling for confirmation and showing you what landed.
{% endstep %}
{% endstepper %}

[**Open Pump.fun Create and Bundle Buy in the app →**](https://j.tools/en/tools/pumpfun-create-and-bundle-buy)

{% hint style="info" %}
**About wallet warnings.** Some tools bundle several instructions into one transaction, for example creating a token and its metadata together. Phantom can show a caution banner for these transactions. The banner is expected here and does not mean something is wrong. Read what you are signing, then approve.
{% endhint %}

## The options, explained

* **Name / symbol / description / image:** Token metadata. Name up to 32 chars, symbol up to 10 alphanumeric chars, description up to 500 chars. Image is a file upload (PNG, JPG, GIF or WebP, up to 5MB). Banner is optional.
* **Twitter / Telegram / website:** Optional social links. Twitter and Telegram take an `@handle` or full URL; website needs a full URL.
* **Creator buy amount (SOL):** SOL the creator wallet spends as the first buy in the launch sequence. On by default with `0.2` SOL prefilled; toggle it off for no creator buy.
* **Bundle wallets:** One to 16 wallets, each with a private key and a buy amount above zero. The tool reserves a fixed `0.01` SOL per wallet for rent and fees, so a wallet counts as funded when its balance covers the buy plus that reserve. The maximum is 16 wallets.
* **Priority fee (speed):** One selector with Normal, Fast, Turbo, and Custom tiers. Each tier sets the compute priority fee and the Jito tip together; higher tiers land faster and cost more. Custom takes a single SOL budget.
* **Custom CA:** Off by default; launches use a randomly generated mint address. Turn it on to reserve a pre-grinded address ending in `pump` for a +0.1 SOL surcharge, subject to pool stock. You see the reserved address before you sign.

## Fees and costs

{% hint style="warning" %}
**About fees.** Every action has two costs: the Solana **network fee** paid to validators, and the **J Tools platform fee**. The platform fee always shows in the app before you confirm, and nothing is charged until you sign. Fees can change over time, so trust the in-app summary rather than a number you saw once.
{% endhint %}

**Platform fee: 0.05 SOL base, plus a per-bundle-wallet fee that tapers with volume (see the table below).**

| Bundle wallets | Per wallet | Total platform fee |
| -------------- | ---------- | ------------------ |
| 1–4            | 0.05 SOL   | 0.10 – 0.25 SOL    |
| 5–8            | 0.04 SOL   | 0.25 – 0.37 SOL    |
| 9–16 (max)     | 0.035 SOL  | 0.365 – 0.61 SOL   |

At the 16-wallet maximum that is 0.05 + 16 × 0.035 = 0.61 SOL. A custom contract address adds 0.1 SOL, so the platform fee tops out at 0.71 SOL. Each wallet's own buy amount, the Solana network fee, and rent are separate.

A bundled launch has more cost lines than a single-wallet tool, because you are paying for several buys, a tip, and the create all at once. The summary lays every line out before you commit, and you can walk away if it does not add up.

* **Solana network fee.** The base per-signature fee plus the priority fee you chose. This pays validators for compute and is not refundable.
* **Account rent.** Creating the mint and the associated token accounts requires a small SOL deposit to keep those accounts alive on-chain. Rent for accounts you fund is recoverable if those accounts are later closed; the network does not burn it.
* **Jito tip.** Paid to the validator that lands your bundle. If the bundle lands, the tip is spent and is not refundable. If a bundle never lands, that tip was not paid.
* **Platform fee.** The 0.05 SOL base for the launch, shown in the app before you sign. It is attached on-chain in the same bundle.
* **Per-wallet service fee.** Tiered by how many bundle wallets you include. More wallets means a lower per-wallet rate.
* **Your buy amounts.** The actual SOL the creator and each bundle wallet spend buying the token. These are not a fee; they are your position.

You pay per launch. Fee amounts are admin-configurable, so read the in-app summary rather than any fixed figure quoted elsewhere. The current numbers live in the [Fee schedule](/reference/fee-schedule.md), and [fees explained](/getting-started/fees-explained.md) covers how each line is charged. If a term here is new to you, the [Glossary](/getting-started/glossary.md) defines mint, bundle, and Jito tip.

## Security and custody

{% hint style="danger" %}
This tool reads the **raw private key** of every bundle wallet in your browser so it can sign their buys. Only use wallets you control, and treat this as a multi-key launch tool, not a single-signer one.
{% endhint %}

Those keys sign that one launch. They are not transmitted to J Tools and not saved on our side. Even so, pasting a raw private key into any browser tool is a higher-trust action than connecting a wallet adapter. Treat each bundle wallet as a launch wallet, not your main vault, and consider rotating any wallet whose key you have entered here.

## Common mistakes and troubleshooting

* **Creator wallet is in the bundle list.** The connected creator wallet must not be one of the bundle wallets; its buy already rides inside the create transaction. Remove it from the list and try again.
* **A wallet is underfunded.** Each wallet needs its buy amount plus the fixed 0.01 SOL reserve. Preflight stops before sending if any wallet fails validation, which avoids burning a tip on a launch that cannot complete. Top up the wallet and refresh balances.
* **Total buy over the cap.** The creator buy plus every bundle buy cannot exceed 50 SOL in one launch. The cap keeps the bundle from filling the bonding curve mid-execution, which would revert the whole thing. Lower the amounts or split the launch.
* **Bundle does not fit.** A Jito bundle holds at most 5 transactions and the tool packs about four buys into each. If your wallet list cannot be packed into that, the launch stops before any signature rather than silently dropping a wallet. Remove a wallet and try again.
* **Bundle did not land.** On a rate-limit or auction rejection, the bundle may not get into a block. A higher Jito tip improves your odds. If the tip was already paid for a landed bundle, it is not refundable.
* **Custom CA unavailable.** The pump-suffix address pool can run out of stock, which disables the toggle. Wait for it to refill, or launch with the default randomly generated mint.
* **Wallet warning at signing.** A wallet prompt that flags a transaction is a signing-code or balance issue on the specific launch, never a blocklist on the J Tools domain. Check the underfunded case first.

For the full list, see the [Error codes reference](/reference/error-codes.md).

## Advanced tips

* **Plan your wallet spread before you fund.** Decide the buy size per wallet first, then fund each wallet with its buy amount plus the 0.01 SOL reserve plus a margin. Funding after you have set the buys is how rows fail preflight.
* **Do not grind your own mint key.** There is no field for supplying one. If you want a `pump`-suffix address, Custom CA is the only route: it reserves a pre-grinded mint from the pool for +0.1 SOL and shows the address before you sign.
* **Start with a preset tip.** Raise the Jito tip only when you are launching into heavy competition. A landed bundle spends the tip whether it needed the boost or not, so an oversized tip on a quiet network is money spent for nothing.

## Related tools

{% content-ref url="/pages/xENB3pWkEElG6NsYww6X" %}
[Pump.fun Token Create](/tools/launch/pumpfun-create.md)
{% endcontent-ref %}

{% content-ref url="/pages/ABVX2mBQDoCv7DEdVmKp" %}
[Multi Sender and Airdrop](/tools/wallets/multi-sender.md)
{% endcontent-ref %}

{% content-ref url="/pages/gbx1RbByQOVKZzt0PQkP" %}
[Make a Token Immutable](/tools/secure/make-immutable.md)
{% endcontent-ref %}

{% hint style="success" %}
**J Tools is non-custodial.** We never store or transmit your private keys and never ask for your seed phrase. Every transaction is signed in your own browser, and nothing about a key ever reaches our servers. A few multi-wallet tools do let you paste private keys for throwaway hot wallets, which stay in your browser tab and are used only to sign locally. Never paste a key tied to long-term holdings, and if a page ever asks for your seed phrase, stop and close it.
{% endhint %}


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.j.tools/tools/launch/pumpfun-create-and-bundle-buy.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
