<p>Bitcoin addresses do not actually exist on the Bitcoin network. They are an abstraction for humans to be able to easily send money to each other.</p>

<p>What Bitcoin actually uses are transaction outputs. A transaction creates outputs which consist of the value and the output script. When you send money to someone, you are spending from an Unspent Transaction Output (UTXO) and creating new UTXOs.</p>

<p>When you send to an address, you are really creating a UTXO with the value you want and an output script that is specified by the address. Addresses encode a version number and some data (usually a hash). So your wallet software takes the address, decodes it, and constructs an output script based upon the data and the version number (the version number specifies what the output script format should be).</p>

<p>So addresses themselves do not actually exist on the network; they do not actually carry a balance nor do you actually send to or from an address. However many places will just say "balance of an address" and show such information as a convenience. This "balance" is calculated by constructing the output script an address specifies and then searching through the UTXO set for UTXOs with output scripts that match the constructed script. The values of these UTXOs are summed and that becomes the address's balance.</p>

CC BY-SA 3.0
2018-03-28T01:25:58.687Z
Wow your answer is dense in information, I love it.  Can you elaborate on "Bitcoin addresses do not actually exist on the Bitcoin network" - isn't the address directly stored in blocks?  Hey curious, how did you come to this level of knowledge?  What do you do?
Howiecamp
CC BY-SA 3.0
2018-03-28T01:43:50.943Z
No, as I said in the answer, the address only contains information that is used to construct the output scripts. It isn't actually stored in the blockchain, but the data that it encoded is. Learning about all of this requires reading through developer documentation (bitcoin.org has lots of stuff there) and the Bitcoin Core source code.
Ava Chow
CC BY-SA 3.0
2018-03-28T00:58:06.140Z
2018-03-28T00:58:06.140Z
Ava Chow
<p>The wiki is correct, it is a technicality. Bitcoin "balances" are actually just unspent transaction outputs (UTXOs, from previous transactions) which you have the ability to spend. In most cases, that means knowing the private key corresponding to an address which the transaction was sent to. But the address itself doesn't have a balance, it just "locks up" the UTXOs corresponding to it, requiring a private key.</p>

<p>The important point is that the blockchain doesn't store a "total balance" of an address anywhere, to find the "balance" of an address requires looking through the chain to find the unspent transaction outputs sent to that address and summing their amounts.</p>

<p>Then to spend bitcoins, you spend specific UTXOs, you do not just subtract the amount from your "balance". </p>

CC BY-SA 3.0
2018-03-28T00:53:32.340Z
Ok so I suppose that saying "address balance" is really just a convenience thing - an easier way of saying "unspent transaction outputs.
Howiecamp
CC BY-SA 3.0
2018-03-28T00:54:14.503Z
@Howiecamp correct in some cases, but using that word also promotes misunderstanding, as people are inclined to think about addresses in the same way as bank account numbers which is wrong
meshcollider
CC BY-SA 3.0
2018-03-28T00:56:38.887Z
In that case it's too bad that nomenclature has taken hold - because it certainly is pervasive.
Howiecamp
CC BY-SA 3.0
2018-03-28T01:42:00.500Z
Very true. There's an interesting talk Andreas Antonopolous gives at Harvard from 2015 where he talks about this same topic. Here it is (https://www.youtube.com/watch?v=Ur037LYsb8M)
m1xolyd1an
CC BY-SA 3.0
2018-03-28T11:56:44.650Z
"requiring a private key" how so?
CodesInChaos
CC BY-SA 3.0
2018-03-28T12:23:54.810Z
@CodesInChaos you need to sign a transaction using a private key to prove you own the bitcoins you are trying to spend
meshcollider
CC BY-SA 3.0
2018-03-28T00:51:31.170Z
2018-03-28T00:51:31.170Z
meshcollider
<p>The <a href="https://en.bitcoin.it/wiki/Address" rel="noreferrer" title="Bitcoin wiki">Bitcoin wiki</a> states, "Addresses are not wallets nor accounts, and do not carry balances."</p>

<p>Yet, there's a zillion articles online about Bitcoin address balances, the Bitcoin blockchain explorers show balances, and so on.</p>

<p>Can you explain the Bitcoin wiki's statement to me?</p>

<address><balance><utxo-set>
The Bitcoin.it wiki says addresses do not carry balances...but all info suggests otherwise
Howiecamp
# The Bitcoin.it wiki says addresses do not carry balances...but all info suggests otherwise

(Asked by: username_0 on 2018-03-28)

The [Bitcoin wiki](https://en.bitcoin.it/wiki/Address "Bitcoin wiki") states, "Addresses are not wallets nor accounts, and do not carry balances."

Yet, there's a zillion articles online about Bitcoin address balances, the Bitcoin blockchain explorers show balances, and so on.

Can you explain the Bitcoin wiki's statement to me?

**Tags:** address, balance, utxo-set


---

## 2 answers

### Answer by username_2 on 2018-03-28. Score: 37 | Accepted answer

The wiki is correct, it is a technicality. Bitcoin "balances" are actually just unspent transaction outputs (UTXOs, from previous transactions) which you have the ability to spend. In most cases, that means knowing the private key corresponding to an address which the transaction was sent to. But the address itself doesn't have a balance, it just "locks up" the UTXOs corresponding to it, requiring a private key.

The important point is that the blockchain doesn't store a "total balance" of an address anywhere, to find the "balance" of an address requires looking through the chain to find the unspent transaction outputs sent to that address and summing their amounts.

Then to spend bitcoins, you spend specific UTXOs, you do not just subtract the amount from your "balance".

> **Comments:**
> **username_0**: Ok so I suppose that saying "address balance" is really just a convenience thing - an easier way of saying "unspent transaction outputs.  
> **username_2**: @username_0 correct in some cases, but using that word also promotes misunderstanding, as people are inclined to think about addresses in the same way as bank account numbers which is wrong  
> **username_0**: In that case it's too bad that nomenclature has taken hold - because it certainly is pervasive.  
> **username_3**: Very true. There's an interesting talk Andreas Antonopolous gives at Harvard from 2015 where he talks about this same topic. Here it is (https://www.youtube.com/watch?v=Ur037LYsb8M)  
> **username_4**: "requiring a private key" how so?  
> **username_2**: @username_4 you need to sign a transaction using a private key to prove you own the bitcoins you are trying to spend  

---

### Answer by username_1 on 2018-03-28. Score: 16

Bitcoin addresses do not actually exist on the Bitcoin network. They are an abstraction for humans to be able to easily send money to each other.

What Bitcoin actually uses are transaction outputs. A transaction creates outputs which consist of the value and the output script. When you send money to someone, you are spending from an Unspent Transaction Output (UTXO) and creating new UTXOs.

When you send to an address, you are really creating a UTXO with the value you want and an output script that is specified by the address. Addresses encode a version number and some data (usually a hash). So your wallet software takes the address, decodes it, and constructs an output script based upon the data and the version number (the version number specifies what the output script format should be).

So addresses themselves do not actually exist on the network; they do not actually carry a balance nor do you actually send to or from an address. However many places will just say "balance of an address" and show such information as a convenience. This "balance" is calculated by constructing the output script an address specifies and then searching through the UTXO set for UTXOs with output scripts that match the constructed script. The values of these UTXOs are summed and that becomes the address's balance.

> **Comments:**
> **username_0**: Wow your answer is dense in information, I love it.  Can you elaborate on "Bitcoin addresses do not actually exist on the Bitcoin network" - isn't the address directly stored in blocks?  Hey curious, how did you come to this level of knowledge?  What do you do?  
> **username_1**: No, as I said in the answer, the address only contains information that is used to construct the output scripts. It isn't actually stored in the blockchain, but the data that it encoded is. Learning about all of this requires reading through developer documentation (bitcoin.org has lots of stuff there) and the Bitcoin Core source code.  

---

