A Bitcoin transaction fee is usually driven by the transaction’s virtual size and the fee rate chosen by the wallet. The amount being sent is not part of that formula. A compact transaction moving $10,000 worth of bitcoin can cost less than a larger transaction moving $100.
Does the Bitcoin fee depend on the amount sent?
No. Bitcoin does not charge a percentage of the payment. According to the Bitcoin Developer Guide, fees are based on the size of the signed transaction and demand for space in mined blocks.
The practical formula is:
transaction fee = virtual size in vbytes × fee rate in satoshis per vbyte
The first number comes from the data the transaction puts on the network. The second reflects how much the sender is willing to pay for each unit of block space.
That is why the displayed bitcoin amount can be misleading when you compare two fees. A wallet must inspect the inputs it will spend, the outputs it will create and the scripts involved.
What is a virtual byte?
A virtual byte, often written as vbyte or vB, is the fee-accounting unit used for Bitcoin transactions after Segregated Witness. Witness data receives a discount under BIP 141, so raw file size and virtual size are not always the same.
Bitcoin Core’s Segregated Witness wallet guide tells wallet developers to estimate fees using virtual size instead of ordinary serialized size. A legacy transaction without SegWit has the same byte size and virtual size. A SegWit transaction may have a smaller virtual size than its full serialized byte count.
You do not normally calculate this yourself. A wallet constructs a draft transaction, estimates its virtual size and applies a fee rate.
What makes one transaction larger than another?
Bitcoin uses an unspent transaction output model. Your wallet spends existing outputs as inputs and creates new outputs for recipients and, usually, change.
Several details affect size:
- Inputs. Spending several small unspent outputs usually needs more data than spending one large output.
- Outputs. Paying several recipients adds outputs. A separate change output also takes space.
- Address and script type. Legacy, SegWit and Taproot scripts do not have the same weight.
- Multisignature or other spending rules. More complex scripts and signatures can add data.
- Consolidation. Combining many small outputs into one often creates a large transaction even if the destination amount is modest.
The face value of an input does not make its signature longer. One input worth 0.01 BTC and one input worth 1 BTC can take similar space when they use the same script type. The number and type of inputs matter more than their bitcoin value.
A $100 payment can cost the same as a $10,000 payment
Consider two hypothetical transactions. Each has a virtual size of 140 vB, and each wallet selects 10 sat/vB. The arithmetic is identical:
140 vB × 10 sat/vB = 1,400 satoshis
One transaction could represent $100 and the other $10,000. Both pay 1,400 satoshis because they occupy the same virtual space at the same fee rate.
Now consider a smaller payment that must collect many old wallet outputs. If its draft is 350 vB at the same 10 sat/vB, the fee is 3,500 satoshis. The smaller payment costs more to broadcast because its transaction contains more data.
These numbers are examples, not a current fee quote. Bitcoin fee rates change with network demand, and a wallet’s selected inputs change the final size.
Why the estimate changes before you send
Wallets do two separate jobs when they quote a fee. They estimate the transaction’s virtual size, then choose a fee rate for a confirmation target.
Bitcoin Core’s estimatesmartfee documentation for version 29.0 describes targets in blocks. Its economical mode responds more quickly to short-term drops in the fee market, while conservative mode uses a longer horizon and may return a higher rate.
A wallet can revise its estimate when:
- the set of spendable inputs changes;
- the recipient or change address uses a different script type;
- you add another recipient;
- the wallet selects a faster or slower confirmation target;
- demand for block space rises or falls before broadcast.
An exchange withdrawal fee is different. An exchange may charge a fixed amount or apply its own schedule. That charge is not necessarily the on-chain fee that miners receive. Our guide to where transaction fees go separates network fees from platform charges.
How to keep a Bitcoin transaction smaller
You cannot remove the need for block space, but you can avoid some unnecessary data.
Use a wallet that supports current SegWit address formats and accurate fee estimation. If you receive many small payments, consolidating them when fee rates are low can reduce the number of inputs needed later, although the consolidation itself pays a fee and creates a visible on-chain link between those funds.
Batching several payments into one transaction can also use less space than sending each payment separately. This is most relevant to businesses or services that make many withdrawals.
Do not send extra transactions merely to chase a lower fee. Check the wallet’s preview, including the input count, output count, virtual size and fee rate if it exposes them.
What happens if the fee rate is too low?
A low-fee transaction can remain unconfirmed while miners include transactions offering higher fee rates. The coins are not lost simply because confirmation is slow, but the available remedy depends on the wallet and the transaction.
If the original transaction signalled replaceability, a wallet may offer Replace-by-Fee. That creates a replacement transaction with a higher fee. Read our Bitcoin Replace-by-Fee guide before using a fee-bump control, because the replacement has a different transaction ID and wallet support varies.
Some wallets may support child-pays-for-parent, where a later transaction spends an output from the unconfirmed one with enough combined fee to encourage confirmation. The wallet should decide whether that option is valid for the transaction.
Questions people ask
Does sending more bitcoin increase the network fee?
Not by itself. The fee follows virtual size and fee rate. A larger amount can use the same transaction structure as a smaller amount.
Why did a small Bitcoin payment have a high fee?
The wallet may have needed many inputs, created several outputs or selected a high fee rate for faster confirmation. Exchange withdrawal charges can also make the displayed cost higher than the actual network fee.
Are Bitcoin fees a percentage?
No. The Bitcoin protocol does not calculate the network fee as a percentage of the amount sent.
What should I compare in a wallet?
Compare the virtual size, fee rate in sat/vB, total fee and confirmation target. The bitcoin amount alone does not explain the cost.
Sources checked 12 October 2026: Bitcoin Developer Guide, Bitcoin Core SegWit wallet guide, Bitcoin Core 29.0 RPC documentation and BIP 141.





