The priority fee that lands, right now.
SolFees reads the newest Solana blocks and decodes what every non-vote transaction actually paid for priority, then sets it beside the per-slot minimums the network reports for Jupiter, PumpSwap, Pump.fun, Raydium, Meteora and Orca. You get four numbers you can type into your wallet or bot.
Loading…
Tiers are the 25th, 50th, 75th and 90th percentile of what fee-paying landed transactions paid, in micro-lamports per compute unit. Cost includes the 5,000-lamport base fee for one signature.
Hot programs, two ways.
"Landed" is what transactions calling that program paid in the blocks we just read. "Floor" is the network's own per-slot minimum for transactions that write-lock that program's accounts, over the last 150 slots (about a minute). When the floor jumps, that program is contested.
| Program | Landed txs | Paid 0 | Landed p50 | Landed p75 | Floor p50 | Floor p75 | Floor p95 | Swap at landed p75 |
|---|---|---|---|---|---|---|---|---|
| Reading fees from mainnet… | ||||||||
All fee figures are micro-lamports per compute unit (1,000,000 µlamports = 1 lamport per CU). "Swap" uses the compute budget picked above. Landed percentiles count only transactions that paid a priority fee; "Paid 0" is the share that paid none. Programs with fewer than 10 fee-paying transactions in the sample show a dash.
Landed fees, sample by sample
One point per block read (every ~15 s while anyone has this page open). Kept in memory only, so it starts fresh when the service restarts.
Per-slot floor, last 60 slots
The lowest priority fee that made it into each slot, network-wide and for the program you picked. Most slots include some zero-fee transaction, so the global floor is usually 0; contested programs are not.
Two fees, one formula.
Base fee
5,000 lamports (0.000005 SOL) per signature, fixed. Half is burned and half goes to the block leader. A normal wallet transaction has one signature.
Priority fee
Optional, set with ComputeBudget instructions (or the transaction config in newer v1 transactions). It is your price per compute unit times the compute-unit limit you request, and all of it goes to the leader.
Set the limit tight
You pay on the limit you request, not on what you use. A swap that uses 140k CU with a 1.4M limit pays ten times the priority it needs.
Fees are local
Priority is mostly a contest for the accounts your transaction writes. A busy pool can be expensive while the rest of the network is nearly free, which is why the per-program view matters.
Tips are separate
Jito bundle tips are a transfer to a tip account, not a priority fee. They do not show up here.
Where do these numbers come from?
Public Solana RPC only. Landed fees: the newest confirmed block is fetched in full, vote transactions are dropped, and the ComputeBudget price and limit of each remaining transaction are decoded (cross-checked against the fee actually charged). The last six blocks read are pooled. Floor: getRecentPrioritizationFees, globally and with each program address as the write-locked account.
Why does the median sometimes look high?
Bots that compete for the same pools often pay very high prices on small compute budgets, and they make up a large share of blocks. If you are not racing anyone, Economy or Normal is usually enough; if you are sniping a contested launch, look at that program's floor and landed p75.
Does a higher fee guarantee inclusion?
No. It improves your place in the leader's queue for the accounts you touch. Network congestion, an expired blockhash or a failing simulation can still drop a transaction.
Check before you click swap.
Refreshes every 15 seconds. Nothing to connect, nothing to sign.
Back to the numbers