What a volume campaign actually pays in fees

Gas on Solana is not one number. A campaign pays five separate costs, the largest of them is not a network fee at all, and one of them comes back to you if the run cleans up after itself. Here is each line item with the arithmetic behind it.

Reviewed 15 August 2026 Fee breakdown Worked example By the Solana Volume Bot Pro team

Five separate costs, and only two of them are network fees

When people ask what a campaign costs in gas, they are usually collapsing five different line items into one word. They behave differently, they scale differently, and one of them is not a cost at all if you handle it properly.

CostCharged perPredictable?Recoverable?
Base feeSignatureYes, fixedNo
Priority feeCompute unitNo, market-drivenNo
Account rentNew token accountYes, fixedYes, on close
Block engine tipBundle, optionalNo, market-drivenNo
Pool fee and price impactSwap sizePartlyNo

The last row is almost always the largest number, and it is the one people leave out of the estimate entirely.

Base fee: the small predictable one

Solana charges a fixed base fee of 5,000 lamports per signature, which is 0.000005 SOL. A simple swap transaction carries one signature, so this is the floor for every transaction your campaign submits.

At a thousand transactions that is 0.005 SOL. It is real but it is never the reason a budget runs out. Any estimate that treats the base fee as the main gas cost is describing a network that stopped existing years ago.

Worth knowing: failed transactions pay this fee too. A run that fails half its swaps on slippage still pays the full base fee on every attempt and produces no volume for it.

Priority fee: the one that actually moves

The priority fee is not a flat charge. You set a price in micro-lamports per compute unit, the transaction requests a compute unit limit, and the two multiply:

priority fee in lamports = compute unit limit x compute unit price in micro-lamports / 1,000,000

A routed swap commonly requests somewhere in the range of 100,000 to 400,000 compute units depending on how many accounts and inner instructions are involved. That gives a spread that is wide in relative terms and small in absolute terms:

  • Quiet network, modest CU price: a small fraction of a thousandth of a SOL per transaction.
  • Congested network, aggressive CU price: a few ten-thousandths of a SOL per transaction.
  • Extreme conditions on a heavily contested pool: higher again, and worth pausing rather than paying.

Multiply by the transaction count and the priority fee becomes the part of the estimate that varies most between a calm Tuesday and a launch hour. The Solana fee documentation is the primary reference for how the two components are computed and it is short enough to read in full.

The practical rule is that under-paying costs you more than over-paying. A transaction that lands late executes at a worse price or fails outright, and you have paid the base fee either way.

Rent: the cost nobody budgets for

This is the item that surprises people running a fleet for the first time. Holding an SPL token requires an associated token account, and every account on Solana must hold a rent-exempt minimum balance. For a standard token account that is 0.00203928 SOL.

That is per wallet, not per campaign. Five hundred wallets that have never held your token need five hundred new token accounts, which is roughly 1.02 SOL locked up before a single swap executes. A thousand wallets is roughly 2.04 SOL.

Two things make this less painful than it looks:

  • It is a deposit, not a fee. Closing the token account returns the full rent-exempt balance. A campaign that cleans up after itself recovers essentially all of it.
  • It is only charged once per wallet per token. A fleet that already holds the mint from an earlier campaign pays nothing the second time.

What it does mean is that fleet size has a working-capital cost independent of volume. Choosing a thousand wallets over five hundred does not just double the transaction count, it doubles the float. That trade-off is worth making deliberately, and it is one of the levers covered in the sizing guide.

Block engine tips: optional and situational

Tips are separate from network fees. They are a transfer to a tip account that buys inclusion priority through a block engine, and they exist because during contested moments a priority fee alone does not guarantee position.

The protocol minimum is small, but the minimum is rarely the number that works. What matters is the tip relative to what everyone else is tipping in that block, and that figure is published live rather than fixed. The Jito documentation publishes current tip percentiles, which is the only sensible way to set the number.

For most volume campaigns tips are unnecessary. You are not racing anyone for a specific price; you are producing activity across a window. Tips matter when a swap must land inside a particular block, which is a launch-sniping requirement rather than a volume requirement. Paying launch-grade tips on a routine volume run is a straightforward way to double a fee bill for nothing.

Pool fees and price impact are the bigger number

Every swap pays the venue's trading fee, and this scales with volume rather than with transaction count, which is why it dominates everything above.

  • Standard constant-product pools typically charge a flat percentage on each swap, commonly a quarter of a percent.
  • Concentrated liquidity pools run tiered fees selected when the pool is created, from very low tiers on stable pairs up to a full percent on volatile ones.
  • Dynamic-fee pools vary the fee with recent volatility, so the same swap costs more during the exact conditions in which you are most likely to be trading. The Meteora guide goes through how the variable component behaves and what it does to a campaign budget.
  • Bonding curves charge their own percentage set by the launchpad, and those schedules change more often than AMM fee tiers do. Check the current figure rather than trusting a blog post, including this one.

On top of the stated fee there is price impact, which is not a fee but spends real money. Swapping into thin liquidity moves the price against you on the way in and again on the way out. The fix is not a setting, it is routing across enough venues that no single pool absorbs a swap large enough to move it.

A worked example at 75 SOL of volume

Assume 500 wallets, an average swap of 0.15 SOL, one buy and one sell per wallet, so roughly 1,000 transactions and 75 SOL of volume against a standard pool.

Line itemCalculationApproximate SOL
Base fee1,000 x 0.0000050.005
Priority fee, quiet1,000 x low CU price0.01 - 0.05
Priority fee, congested1,000 x high CU price0.2 - 0.4
Token account rent500 x 0.002039281.02 (recoverable)
Pool fee at 0.25%75 x 0.00250.19
Pool fee at 1%75 x 0.010.75

Read the shape rather than the digits. Network fees land somewhere between a hundredth and half a SOL. Rent is the largest single line and most of it comes back. The venue's own trading fee is the real recurring cost, and it is set by which pools your token has rather than by anything a bot operator controls.

These are illustrative figures for one configuration, not a quote. Compute unit prices, tip levels and launchpad fee schedules all move, which is why we publish the method rather than a fee table that would be stale within a month.

Why this site quotes one number instead

Every item above has to be paid by someone. Vendors handle this in one of two ways: quote a low headline rate and bill network costs on top as a variable extra, or fold everything into a single figure and absorb the variance.

We do the second. The flat 2% of target volume covers base fees, priority fees, rent float, tips where they are used and wallet funding, and it does not change if the network gets busy halfway through your window. That is a worse deal on a quiet day and a better one on a busy day, and it has the property that the number you agree to is the number you pay. The pricing guide compares this against per-wallet and subscription models honestly, including the cases where a different model is cheaper for you.

If you want the arithmetic for your own token rather than for this example, the console on the home page takes a mint address, detects which pools exist, and shows the estimated swap count and the exact SOL figure before anything is submitted.

Frequently asked questions

01How much SOL should each wallet hold before a campaign?

Enough for the swap itself, the base fee on both legs, a priority fee headroom for congested conditions, and the rent-exempt minimum of 0.00203928 SOL if the wallet has never held the token. In practice a small buffer above the swap size covers everything, and the leftover is swept back at the end.

02Is token account rent lost forever?

No. It is a rent-exempt deposit rather than a fee. Closing the associated token account returns the full balance to the owner, so a campaign that closes accounts on completion recovers essentially all of it. Treat it as working capital, not as a cost.

03Do I need Jito tips for a volume campaign?

Usually not. Tips buy inclusion in a specific block, which matters when you are racing for a price at a launch. A volume campaign spreads activity across a window and has no such deadline, so paying launch-grade tips on routine swaps inflates the bill without improving the result.

04Why do priority fees vary so much between runs?

The compute unit price is a live market. The same transaction can cost an order of magnitude more during a heavily contested minute than during a quiet one. This is also why under-paying is expensive: a transaction that lands late executes at a worse price or fails, and the base fee is charged either way.

05Which costs more, the network or the pool?

The pool, in almost every configuration. Network fees scale with transaction count and stay small in absolute terms. The venue trading fee scales with volume, so at any meaningful campaign size it is several times the network cost. Fee tier and venue choice matter more than compute unit tuning.

06Does the flat 2% include all of this?

Yes. Base fees, priority fees, rent float, tips where they are used and wallet funding are inside the quoted figure, and it does not move if the network gets busy during your window. The trade is that you pay the same on a quiet day as on a busy one.

Keep reading

See the exact SOL figure before you commit

The console prices a campaign from wallet count and swap band, with network costs already inside the flat 2%.

Open the volume console