Did you ever try to send out Bitcoins and found out that a larger amount than what you intended seemed to be sent ? Here’s an explanation why this happens…
The blockchain is a big file that keeps track of all Bitcoin transactions ever made. So if you own some Bitcoins, all it means is that the blockchain has references to transactions that were made to your Bitcoin address. The term for these references is “Inputs”.
Now let’s say you enter a store to buy a watch for 1 Bitcoin. instead of taking out actual cash from your pocket and paying for something you just tell the seller – “here are the references that I have this money” or “here are my inputs”.
What you mean is – here are previous transactions sent to me that add up to 1 Bitcoin or more. This is called an output, so each output is compiled out of 1 or more previous inputs.
Once you use an input to pay for something it is considered “spent” and you can’t use it again for other outputs. So in this case once your output is confirmed it will become an input for the seller to use in future transactions.
Bitcoin rules state that you can’t use just a part of an input. So if for example I wanted to send the seller 1 Bitcoin and the only input or reference I have is from someone who previously sent me 1.5 Bitcoins I will have to use all of this input and return the “change” back to my original address as a new input. So I will use my 1.5 Bitcoins input, pay 1 Bitcoin to the seller, pay a miner’s fee and return the rest to my original address.
Now for a real live example – if you examine the inputs closely you will see that the output consists of an input of 0.142 Bitcoins. 0.005 Bitcoins were sent to someone else, a miner’s fee of 0.0001 Bitcoins was deducted and the rest of the money was sent back to the original address.
That’s why you’ll sometimes see additional coins sent with your transactions. These coins will be sent back to your change address which you can configure manually inside your wallet.
If you want to inquire more on specific inputs you can enable “advanced” mode in Blockchain, track inputs and see which inputs have been spent or not.