How Solana Transaction Fees Work
Every Solana transaction has two fee components: a mandatory base fee and an optional priority fee. Both are paid in lamports, the smallest unit of SOL (1 SOL = 1,000,000,000 lamports).
Base Fee
- Fixed at 5,000 lamports per signature
- Applies to every transaction — mandatory
- 50% burned, 50% to validators
- Does not vary with network congestion
- 5,000 lamports = 0.000005 SOL
Priority Fee
- Denominated in micro-lamports per compute unit
- Optional — used to prioritize transactions
- Formula: (CU limit × CU price) ÷ 1,000,000
- Default CU limit: 200,000 units
- Max CU limit: 1,400,000 units
Solana's dual-fee structure — a fixed base fee plus optional priority fee — enables predictable transaction costs while allowing users to pay for faster processing when the network is congested.
Fee Calculation Example
Suppose you set a compute unit price of 1,000 micro-lamports and a limit of 200,000 CUs on a single-signature transaction:
- Base fee = 5,000 lamports
- Priority fee = (200,000 × 1,000) ÷ 1,000,000 = 200 lamports
- Total fee = 5,200 lamports = 0.0000052 SOL
How to Minimize Fees
To keep fees low on Solana, set your compute unit limit to what your transaction actually requires (not the default 200,000), and only add priority fees when the network is congested. During off-peak hours, the base fee of 5,000 lamports alone is usually sufficient for timely processing.