The short answer
Bitcoin has no accounts and no balances. A transaction spends whole unspent outputs and returns the remainder to the sender as change, so the total output shown on an explorer is almost never the amount that was paid. Identify which output went to the recipient and read the fee in satoshis per virtual byte rather than as a total.
The one concept everything depends on
Bitcoin does not have accounts. This is the single most important thing to understand and almost nobody is told it.
What Bitcoin has is unspent transaction outputs. Every transaction consumes some existing outputs and creates new ones. An output is a discrete lump of value locked to a condition — usually "whoever can produce a signature for this public key". Your wallet's balance is not stored anywhere; it is calculated by finding every unspent output your keys can unlock and adding them together.
The critical consequence is that outputs must be spent whole. There is no partial spending, in the same way there is no partial spending of a ten pound note. If you hold one output worth 2 BTC and want to send 0.01, you must consume the entire 2 BTC and create new outputs — one for the recipient and one returning the remainder to yourself.
That returned output is called change, and it is the source of most confusion on every explorer. It is not a fee, it is not lost, and it is not going to a stranger. It is your own money coming back to an address your wallet controls, usually a freshly generated one.
The same model applies on Litecoin, Dogecoin, Bitcoin Cash and Dash. Everything in this guide transfers to all of them.
Reading the inputs and outputs
Open any Bitcoin transaction on mempool.space or Blockstream.info and you will see two columns.
The left column is the inputs: the outputs being consumed, each with the address it was locked to and its value. These are the funds being spent, and they all came from earlier transactions. Every input links back to the transaction that created it, which is how you trace history backwards.
The right column is the outputs: the new lumps of value being created. Each has an address and a value. One of them is the payment. One of them — usually — is the change.
Distinguishing them takes a moment's judgement and it is not always certain. The heuristics people use are that change typically goes to an address with no prior history, that the payment is often a round number while the change is not, and that the payment goes to an address type matching what the recipient asked for. Some explorers guess and label them, which is helpful and occasionally wrong.
If you are the sender, you know which is which because you know the destination. If you are the recipient, you know because you know your own address. It is only when analysing someone else's transaction that the ambiguity matters — and that ambiguity is, incidentally, a deliberate privacy property rather than an oversight.
The number that misleads people
Explorers display a figure variously labelled "amount", "total output" or "value". On a transaction with change, that figure is the sum of everything created — payment plus change — and it is almost never the amount that was paid.
Consider a realistic example. Someone holding a single output of 50 BTC pays a supplier 0.2 BTC. The transaction has one input of 50 BTC and two outputs: 0.2 to the supplier, 49.7999 back to the sender, and roughly 0.0001 to the fee. An explorer reports a total output of almost 50 BTC.
Screenshots of exactly this pattern are circulated constantly, usually to suggest that an enormous sum was moved by someone. They are not forgeries. The explorer is correct. The interpretation is wrong.
The same effect makes address histories look far more active than they are. A wallet that receives its own change repeatedly shows a large volume of incoming value, most of which never went anywhere.
Whenever someone shows you a Bitcoin transaction as evidence of a large movement, the first question is always which output was the payment. It takes ten seconds to check and it changes the answer more often than not.
The fee, and the unit that decides your wait
The fee on a Bitcoin transaction is not stated anywhere in the transaction itself. It is the difference between the total inputs and the total outputs — whatever is not claimed by an output is claimed by whoever mines the block. Explorers calculate and display it for you.
The figure that matters is not the total. It is the fee rate, in satoshis per virtual byte, because miners select transactions by how much they pay for the block space they occupy rather than by how much they pay in absolute terms.
This has a consequence that surprises people: a transaction with many inputs is large, and therefore expensive, regardless of the amount it moves. Consolidating a hundred small outputs costs considerably more than sending a single large one, even though the second moves more money. If your wallet has accumulated a lot of small payments, consolidating them during a quiet fee period is genuinely worth doing before you need to.
Virtual bytes rather than actual bytes because of Segregated Witness, which discounts signature data. The practical effect is that modern address types — those starting with bc1 — produce smaller virtual sizes and therefore cheaper transactions for the same activity.
RBF, locktime and the fields that matter when something is stuck
Two fields on a transaction page are ignored until the moment they become the only thing you care about.
Replace-by-fee is a flag indicating that the sender is willing to have this transaction replaced by a version paying a higher fee. Most modern wallets set it by default. If your transaction is stuck and RBF is signalled, your wallet can rebroadcast it with a higher fee and it will replace the original. If RBF is not signalled, that route is closed and your options narrow to child-pays-for-parent or waiting.
It is worth knowing that a merchant accepting a zero-confirmation payment that signals RBF is taking a real risk, because the sender can replace it. This is why most services wait for at least one confirmation, and it is a reasonable policy rather than an inconvenience.
Locktime specifies the earliest block height or time at which a transaction may be included. Most transactions set it to the current height, which is a small privacy measure rather than a delay. Occasionally it is genuinely set in the future, which means a transaction that appears valid will not confirm until that point.
Our guide on unconfirmed transactions covers what to do once you have read these fields and know where you stand.
Following the money, and where it stops
Because every input references the transaction that created it, you can trace value backwards indefinitely. Click an input, land on the earlier transaction, click one of its inputs, and continue until you reach a coinbase transaction — the point at which those coins were first created as a mining reward.
Tracing forwards is harder and this is where people over-reach. When a transaction has several outputs, you do not know which one the party you are following actually controlled. When a transaction has several inputs, you are usually looking at several outputs controlled by one party, which is the basis of most address clustering.
That heuristic — common input ownership — is the foundation of blockchain analysis, and it is also precisely what CoinJoin transactions are designed to break. A transaction with many equal-valued outputs and many inputs from different parties defeats the assumption entirely.
This is worth knowing in both directions. Analysis of the Bitcoin chain is powerful and it is inference rather than record, and platforms such as Arkham present that inference with more confidence than the underlying evidence always supports. Our review of it covers what the technique can and cannot establish.
If you want to see how much can be reconstructed from public data, spend twenty minutes tracing a well-known address and observe how quickly the picture becomes both detailed and uncertain. That combination is the honest state of blockchain forensics.
Questions people ask
Why does my Bitcoin transaction show a much larger amount than I sent?
Change outputs. The transaction spent whole unspent outputs and returned the remainder to an address you control. Total output is not the amount paid.
What is a change address?
A freshly generated address belonging to the sender, used to receive the remainder of a spent output. It is your own money coming back, not a payment to a third party.
What does sat/vB mean?
Satoshis per virtual byte — the fee rate. Miners select by rate rather than by total fee, so this is the number that determines your position in the queue.
Why did my transaction cost more than someone else’s for less money?
Because fees scale with transaction size, not value. A transaction spending many small inputs is large and therefore expensive regardless of the amount it moves.
Can I tell who owns the other address?
Not from the chain, which contains no identities. Analysis services infer ownership from patterns and off-chain information. Treat any label as a hypothesis rather than a record.
What is RBF and should I use it?
Replace-by-fee lets a transaction be replaced by a version paying more. It is useful if you might need to bump a stuck transaction, and it is why merchants generally wait for a confirmation. Most modern wallets enable it by default.