Transaction Priority
Transaction priority determines the order in which pending transactions are selected for inclusion in the next block, typically based on fee rate.
Key Takeaways
- Transaction priority determines which pending transactions miners or validators select first for block inclusion. On Bitcoin, priority is set by fee rate (sats/vByte): higher-paying transactions get confirmed sooner.
- Users can boost a stuck transaction's priority after submission using replace-by-fee (RBF) or child-pays-for-parent (CPFP), effectively rebidding for scarce block space.
- Fee-based priority creates fairness concerns, especially around MEV. Fair ordering mechanisms and Layer 2 solutions like Spark sidestep the priority queue entirely with instant finality.
What Is Transaction Priority?
Transaction priority is the ranking system that determines the order in which unconfirmed transactions are selected for inclusion in the next block. When more transactions compete for limited block space than a single block can hold, block producers (miners on Bitcoin, validators on Ethereum) must choose which transactions to include and which to leave waiting in the mempool.
In most blockchain networks, this ordering is driven by economics: transactions that pay higher fees per unit of space get processed first. The result is a continuous auction for block space where users bid against each other for faster confirmation. During periods of low demand, even minimal fees secure quick inclusion. During congestion, priority becomes expensive: at Bitcoin's April 2024 halving, fees spiked to roughly 200 sats/vByte, while quiet periods in 2026 saw 1 to 2 sats/vByte suffice for the next block.
How It Works
Transaction priority operates differently depending on the blockchain, but the core principle is the same: block producers maximize their revenue by selecting the highest-paying transactions first.
Bitcoin: Fee Rate Ordering
Bitcoin miners build block templates by sorting the mempool by fee rate, measured in satoshis per virtual byte (sats/vByte). Because each block is limited to approximately 4 million weight units (roughly 1,000,000 vBytes), miners fill from the top of the sorted list downward until the block is full.
The fee rate, not the absolute fee, determines priority. A small transaction paying 10 sats/vByte ranks higher than a large transaction paying 5 sats/vByte, even if the large transaction pays more in total sats. This is because miners optimize for total revenue per block, and high-fee-rate transactions pack more fees into the same space.
# Simplified priority calculation
# Transaction A: 250 vBytes, 5,000 sat fee
fee_rate_a = 5000 / 250 # 20 sats/vByte (higher priority)
# Transaction B: 500 vBytes, 7,500 sat fee
fee_rate_b = 7500 / 500 # 15 sats/vByte (lower priority)
# Miner picks Transaction A first despite lower absolute feeWith the introduction of cluster mempool in Bitcoin Core, transaction ordering also accounts for ancestor and descendant relationships. A low-fee parent transaction can gain effective priority if a high-fee child transaction depends on it, a technique known as CPFP.
Ethereum: Base Fee Plus Priority Fee
Since EIP-1559 (August 2021), Ethereum uses a two-component fee model. Every transaction pays a protocol-set base fee that is burned, plus an optional priority fee (tip) paid to the validator.
The base fee adjusts each block based on how full the previous block was relative to a 50% capacity target. If a block is 100% full, the base fee increases by up to 12.5%; if empty, it decreases by up to 12.5%. This creates predictable fee estimation: users know approximately what the next base fee will be.
Priority among transactions in the same block is determined by the tip. Validators select transactions with higher priority fees first, since that is the portion they keep. Users set two parameters: a max fee (the most they will pay per gas unit) and a max priority fee (the most they will tip). The actual charge is the base fee plus the tip, capped at the max fee, with any difference refunded.
Boosting Priority After Submission
Sometimes a transaction gets stuck in the mempool because its fee was too low at submission time. Both Bitcoin and Ethereum offer mechanisms to increase priority without starting over.
Replace-by-Fee (RBF)
Replace-by-fee lets a Bitcoin sender broadcast a new version of their transaction with a higher fee rate. Originally specified in BIP 125 as opt-in (the sender signals willingness by setting an input's nSequence below 0xfffffffe), full RBF became the default policy in Bitcoin Core 28.0, allowing any unconfirmed transaction to be replaced regardless of signaling.
The replacement must pay both a higher fee rate and a higher absolute fee than the original. It must also cover the relay cost of replacing the original at or above the node's minimum relay fee. For more on fee-bumping strategies, see our deep dive on RBF and CPFP.
Child-Pays-for-Parent (CPFP)
CPFP works from the receiver's side. The recipient creates a new transaction spending the unconfirmed output with a high enough fee rate to make mining both the parent and child together more attractive than mining other transactions. Miners evaluate the combined fee rate of the package and include both if the package fee rate is competitive.
Ethereum Speed-Up Transactions
On Ethereum, users can "speed up" a pending transaction by resubmitting it with the same nonce but a higher gas price and priority fee. Because the nonce matches, validators treat it as a replacement. Most wallets expose this as a one-click "speed up" button.
Why Transaction Priority Matters
Transaction priority directly affects user experience, cost, and the security model of a blockchain. During network congestion, priority determines who gets through and who waits. This has practical consequences across many use cases:
- Time-sensitive payments: a merchant waiting for confirmation cannot serve the next customer until the transaction clears
- DeFi liquidations: if a borrower's collateral drops below threshold, the liquidation transaction must confirm before the position moves further underwater
- Arbitrage and trading: profitable opportunities disappear within seconds, so traders pay premium fees for priority inclusion
- Fee estimation: wallets must predict the right fee to avoid overpaying or getting stuck, making fee estimation algorithms critical infrastructure
The economics of priority also shape broader fee market dynamics. As Bitcoin's block subsidy decreases with each halving, transaction fees become an increasingly important part of miner revenue. Priority bidding is the mechanism through which this fee market operates.
Fairness Concerns and Alternatives
Fee-based priority creates a pay-to-play environment where wealthier participants consistently get faster service. This raises several concerns:
MEV and Front-Running
On Ethereum and other smart contract platforms, block producers can observe pending transactions and reorder them to extract profit: a practice known as maximal extractable value (MEV). Sandwich attacks, where an attacker places transactions before and after a victim's swap, exploit priority ordering to extract value at the user's expense. For a deeper analysis, see our research on MEV and proposer-builder separation.
Fair Ordering Mechanisms
Several approaches attempt to make transaction ordering fairer:
- First-come-first-served (FCFS): order by arrival time rather than fee. Arbitrum uses this on its centralized sequencer, though network latency makes true arrival order ambiguous across distributed validators
- Encrypted mempools and commit-reveal schemes: hide transaction contents until ordering is finalized, preventing block producers from front-running based on transaction data
- Batch auctions: group transactions into time windows and execute them at a uniform price, removing the advantage of being slightly faster or paying slightly more
- Fair sequencing services: decentralized ordering protocols like Chainlink FSS that remove the single block producer's ability to reorder transactions for profit
Research has shown that perfect fairness in transaction ordering is theoretically impossible in asynchronous distributed systems: majority pairwise preferences can form cycles, so no single linear order satisfies all participants. Practical systems therefore adopt weaker guarantees that reduce (but cannot eliminate) ordering manipulation.
Layer 2 Solutions
Layer 2 protocols offer a fundamentally different approach to the priority problem. Rather than competing for limited block space, transactions settle off-chain where capacity is not constrained in the same way.
Spark, for example, processes Bitcoin transfers off-chain with sub-second finality. Because Spark transfers do not compete for Bitcoin block space, there is no mempool queue, no fee auction, and no priority ranking. Ownership changes through cryptographic key rotation rather than on-chain transaction broadcast, eliminating the priority problem entirely. Users pay no per-transaction fees for transfers within the Spark network, regardless of Bitcoin mainnet congestion.
Risks and Considerations
- Fee volatility: priority costs can spike unpredictably during congestion events, NFT mints, or protocol launches, making transactions expensive for users who cannot wait
- Stuck transactions: underestimating the required fee leaves transactions stranded in the mempool, potentially for hours or days until congestion subsides or the transaction is bumped via fee bumping
- Centralization pressure: miners and validators who can observe the mempool have an information advantage over regular users, enabling MEV extraction and creating an uneven playing field
- Security budget dependency: as Bitcoin increasingly relies on fees rather than block subsidies, the priority mechanism becomes load-bearing for network security. Sustained low fees could undermine miner incentives to secure the network
- Complexity for users: choosing the right fee requires understanding current mempool conditions, which most users delegate to wallet software. Poor fee estimation leads to either overpayment or delays
This glossary entry is for informational purposes only and does not constitute financial or investment advice. Always do your own research before using any protocol or technology.