BIP 133 fee filter: BIP 133 fee filters explained: learn how Bitcoin peers announce feerate thresholds, reduce wasted transaction relay and preserve filter privacy.
TL;DR
Nodes can configure a minimum relay feerate and may refuse transactions below it. The message carries one signed 64-bit integer representing satoshis per 1,000 virtual bytes under the protocol’s fee-rate convention.
A fee filter tells the remote peer which transactions to announce. It does not modify Bitcoin consensus, the receiver’s mempool rules or a miner’s block template directly. Mempool pressure and configuration can change the effective minimum.
BIP 133 fee filter in simple English
BIP 133 fee filter: Observe negotiated peers, received and sent filter values, announcement rates, bandwidth and mempool acceptance. Test a range of controlled transactions around the threshold and verify that local submission remains distinct.
Simple example
A node operator is checking BIP 133 fee filter. If those facts are unknown, the operator cannot show which rules were actually applied before electricity was committed to the work.
Key terms in plain English
- BIP:
- Bitcoin Improvement Proposal: a document that suggests or explains a change to Bitcoin. A BIP number does not mean the idea is active.
- Bitcoin Core:
- Widely used Bitcoin software. It can check blocks and transactions and provide wallet, network and operator tools.
- Consensus:
- The shared rules that Bitcoin or another network uses to decide whether blocks and transactions are valid.
- Node:
- A computer running network software that checks data and talks to other computers on the network.
- ASIC:
- A computer built to do one specialised job. A mining ASIC is designed for a particular proof-of-work algorithm.
Why fee filters exist
Nodes can configure a minimum relay feerate and may refuse transactions below it. Without coordination, peers still announce low-fee transaction identifiers, prompting requests and transfers that the receiver will discard. BIP 133 adds a feefilter message so a node can state the minimum feerate for transactions it currently wishes to receive, reducing wasted inventory, bandwidth and validation work.
Start with the validating node, because the ASIC only hashes the candidate header it receives. Record the node release and the pool component that assembled the block. If those facts are unknown, the operator cannot show which rules were actually applied before electricity was committed to the work.
Message contents and units
The message carries one signed 64-bit integer representing satoshis per 1,000 virtual bytes under the protocol’s fee-rate convention. A sender should stop announcing transactions below the received threshold. Implementations must validate range and sign. Confusing satoshis per byte, virtual byte and kilobyte can suppress useful traffic or flood a peer with data it declared unwanted.
Treat status dashboards as observations, not as the source of truth. Compare them with an independently operated node and retain the raw deployment or template response. Period boundaries, chain reorganisations and cached pool pages can otherwise make a correct-looking percentage describe the wrong state.
Filtering affects announcements
A fee filter tells the remote peer which transactions to announce. It does not modify Bitcoin consensus, the receiver’s mempool rules or a miner’s block template directly. Transactions can arrive by another peer or local submission. A node can later change its filter. An absent announcement therefore does not prove that a transaction is invalid, unknown to the network or excluded by every miner.
Build the failure response before the boundary arrives. Define which rejection messages trigger an alert, who can pause a template source and how failover is prevented from returning miners to the same faulty validation stack. A second hostname is not independent when both endpoints share one node.
Dynamic thresholds and hysteresis
Mempool pressure and configuration can change the effective minimum. BIP 133 allows updated filters but recommends avoiding rapid, fingerprintable changes. Implementations can quantise or delay announcements. Operators should not infer an exact remote mempool state from one value. A peer may apply extra policy, already possess the transaction or disconnect before a revised threshold is useful.
Separate readiness, signalling and enforcement in the operating log. Readiness is a claim about software and process, signalling is data carried by blocks, and enforcement is a validation result. Combining them into a single supported or unsupported label hides the point at which revenue is actually at risk.
Privacy considerations
A unique or frequently changing minimum feerate can help fingerprint a node across connections. Randomised timing and rounded values reduce leakage. Mining operations should standardise policy where appropriate without exposing a distinctive internal threshold unnecessarily. The filter is plaintext metadata on v1 transport. BIP 324 can protect packet contents but does not conceal endpoints or make a chosen value non-identifying.
Map responsibility across the full path: validating node, template server, pool protocol, proxy, firmware and ASIC. For each layer, state what it can alter and what it merely relays. This prevents a version-bit setting in firmware from being mistaken for complete consensus-rule support. Relate that responsibility map to the pool and job-control boundary in our Stratum V2 guide.
Mining-node implications
Template nodes commonly need broad transaction visibility while controlling memory and bandwidth. Fee filters can reduce irrelevant inbound traffic. But an excessively high threshold may miss low-fee ancestors needed for profitable packages. Pool nodes should align minimum relay, mempool size, package policy and template selection, then compare candidate fees rather than relying on the advertised peer filter as a revenue measure.
Test the primary and failover paths with the same checks. Compare chain tip, chainwork, deployment state, required rules and template age, then save the result with a timestamp. The process should be repeatable by another operator without relying on an undocumented pool conversation.
Verification checklist
Observe negotiated peers, received and sent filter values, announcement rates, bandwidth and mempool acceptance. Test a range of controlled transactions around the threshold and verify that local submission remains distinct. Confirm unit conversion in monitoring. Reassess filters during congestion and after client upgrades. A successful deployment reduces rejected relay traffic without isolating the node from economically relevant transactions or ancestry.
Turn the conclusion into a business decision. State which chain and settlement venues the operation intends to serve, the maximum acceptable stale-block exposure and the point at which mining pauses. This connects protocol evidence to electricity cost, pool revenue and payout finality.
Operator decision record
A concise decision record for BIP 133 fee filter should name the source documents, their dates, the node release tested, the responsible pool or template provider and the exact trigger for action. Include screenshots or machine-readable output for the deployment state. But keep the raw node response as the stronger evidence.
State whether a change affects policy, block construction or consensus validity, because those layers have different failure costs.
Run the check on every production and failover path. Confirm that monitoring alerts on stale templates, unexpected chain tips, rejected proposals and a rise in stale shares. Keep rollback instructions for node and pool configuration. But do not roll back across an active consensus boundary without understanding the rules the older release enforces.
If the evidence conflicts, pause the affected path and investigate before committing more electricity to uncertain work.
For related background, read our plain-English BIP-110 guide and technical BIP-110 review. Those articles use a modern proposal to show why signalling, activation, template construction and accepted chain history must be examined separately.
Conclusion
Bip 133 fee filter is best understood as a defined interaction between validating software, mining infrastructure and economic acceptance. The safest operator does not infer consensus from a dashboard percentage or a pool slogan. They verify the rule source, the activation boundary, the template fields and the chain their payouts ultimately settle on.
That discipline reduces the chance of hashing an invalid or commercially unwanted block.
Frequently asked questions
What is the main point of BIP 133 fee filter?
BIP 133 fee filter: Observe negotiated peers, received and sent filter values, announcement rates, bandwidth and mempool acceptance.
For BIP 133 fee filter, why fee filters exist?
Nodes can configure a minimum relay feerate and may refuse transactions below it.
For BIP 133 fee filter, what should a beginner know about message contents and units?
The message carries one signed 64-bit integer representing satoshis per 1,000 virtual bytes under the protocol's fee-rate convention.
For BIP 133 fee filter, what should a beginner know about filtering affects announcements?
A fee filter tells the remote peer which transactions to announce. It does not modify Bitcoin consensus, the receiver's mempool rules or a miner's block template directly.
Primary sources
Primary specifications are living technical records. Check their current status and changelog before using this article for a production activation decision.
Join the ASIC Mining Discussion
Members can read and join the discussion
Log in to read comments from other miners. Create a free account if you would like to ask a question or share your experience.
Membership helps us protect the discussion from spam and keep answers useful.