<p>Addresses are a construct of wallets. The bitcoin system itself doesn't know or care about them.  Coins being spent are identified by their creating txid and output-index.  </p>

<p>The network verifies that the provided signature is accepted by the required scriptPubKey, but the scriptPubKey (nor the addresses that wallets map to scriptPubKeys) is never used to lookup or in any way reference the coins being spent.</p>

<p>The model you seem to be imagining is more like some other altcoins and can indeed have poor ergonomics.</p>

<p>Normally change goes to a new address and those coins can be immediately spent without waiting for the first transaction to confirm.  It sounds like from your question that you might have thought the change could not be spent before the transaction creating it was confirmed, but this is not the case.</p>

<p>I am not aware of any reason why reusing an old address for change would benefit a user, but the system will let you do it without it causing any problems.</p>

<p>In Bitcoin for privacy and security reasons users are advised to avoid reusing addresses, but this doesn't have any interaction with the kinetics of spending coins.</p>

CC BY-SA 4.0
2018-12-12T03:23:24.883Z
2018-12-12T03:23:24.883Z
G. Maxwell
<blockquote>
  <p>How are multiple inflight transactions from the same address handled?</p>
</blockquote>

<p>Multiple unspent outputs from the same address can exist at the same time, from which you can send multiple transactions. Also, you can broadcast a transaction which spends <strong>output 1</strong> to a new <strong>output 2</strong>, and then immediately broadcast another transaction which spends <strong>output 2</strong> from the previous transaction. </p>

<blockquote>
  <p>change for each transaction generates a new address for the change</p>
</blockquote>

<p>Change doesn't generate addresses, the wallet software does. And it does not have to generate a new address for change, you can send change back to the original address. Of course, this does help protect privacy, and depends on how your wallet software handles change and address generation.</p>

<blockquote>
  <p>If I have change sent sent back to the original address, does it
  matter in what order they are added to the chain? I can't see why.</p>
</blockquote>

<p>You just have to make sure you don't try to spend a previously spent output.</p>

<blockquote>
  <p>This however allows everybody to track my wallet and where I'm
  transacting. Also I don't know if all wallets support this.</p>
</blockquote>

<p>Not necessarily, because it is not apparent which output was the change output, if you use a different address. See <a href="https://bitcoin.stackexchange.com/a/77520/60443">https://bitcoin.stackexchange.com/a/77520/60443</a></p>

CC BY-SA 4.0
2018-08-29T07:10:49.857Z
I'm think I made some terminology mistakes (accidentally saying address when I meant transaction output id, I think, or whatever it is called). This is leading to confusing answers. I'm going to probably delete this question tomorrow and resubmit it with the terminology fixed and a more detailed description of the issues.
Jason Nordwick
CC BY-SA 4.0
2018-08-29T04:21:38.847Z
2018-08-29T04:21:38.847Z
JBaczuk
<blockquote>
  <p><em>”...they will both want to use the same unspent output address”</em>. </p>
</blockquote>

<p>Unspent outputs are not listed by address. Multiple UTXOs can exist for the same address, and each can be spent individually. Each entire <strong>UTXO</strong> must be spent, not the entire ‘address balance’. The concept of ‘address balance’ doesn’t exist at the technical level of the bitcoin blockchain. It is all individual UTXOs. </p>

<p>A UTXO can only be spent once, and any attempt to spend an already-consumed UTXO will be invalid. </p>

<p>As JBaczuk mentioned, you can also have a chain of transactions within a block, where each transaction spends the output of another transaction that is listed earlier within the same block (ordering is important!). </p>

<p>So it is fine to have multiple transactions incoming/outgoing at the same time. As long as they’re valid, they should confirm. </p>

CC BY-SA 4.0
2018-08-29T05:09:17.850Z
2018-08-29T05:09:17.850Z
chytrik
<p>How are multiple inflight transactions from the same address handled? From my understanding, there are two options depending on how change is handled, but both seem to have substantial drawbacks:</p>

<ol>
<li><p>If change for each transaction generates a new address for the change - the usual handling - then you can't handle two transactions since they will both want to use the same unspent output address. And they will both use it entirely by definition. The ergonomics of this seems poor - I can only ever do one transaction from an address at a time. In that case I would want bitcoins sent to me to always be shredded (no bills larger than $20 please).</p></li>
<li><p>If I have change sent sent back to the original address, does it matter in what order they are added to the chain? I can't see why. This however allows everybody to track my wallet and where I'm transacting. Also I don't know if all wallets support this.</p></li>
</ol>

<p>Is my understanding correct? (This all started with me diving down the rabbit hole on how Lightening and Plasma worked.)</p>

<transactions>
How to handle multiple inflight transactions from same address?
Jason Nordwick
# How to handle multiple inflight transactions from same address?

(Asked by: username_0 on 2018-08-29)

How are multiple inflight transactions from the same address handled? From my understanding, there are two options depending on how change is handled, but both seem to have substantial drawbacks:

1. If change for each transaction generates a new address for the change - the usual handling - then you can't handle two transactions since they will both want to use the same unspent output address. And they will both use it entirely by definition. The ergonomics of this seems poor - I can only ever do one transaction from an address at a time. In that case I would want bitcoins sent to me to always be shredded (no bills larger than $20 please).
2. If I have change sent sent back to the original address, does it matter in what order they are added to the chain? I can't see why. This however allows everybody to track my wallet and where I'm transacting. Also I don't know if all wallets support this.

Is my understanding correct? (This all started with me diving down the rabbit hole on how Lightening and Plasma worked.)

**Tags:** transactions


---

## 3 answers

### Answer by username_1 on 2018-12-12. Score: 1

Addresses are a construct of wallets. The bitcoin system itself doesn't know or care about them. Coins being spent are identified by their creating txid and output-index.

The network verifies that the provided signature is accepted by the required scriptPubKey, but the scriptPubKey (nor the addresses that wallets map to scriptPubKeys) is never used to lookup or in any way reference the coins being spent.

The model you seem to be imagining is more like some other altcoins and can indeed have poor ergonomics.

Normally change goes to a new address and those coins can be immediately spent without waiting for the first transaction to confirm. It sounds like from your question that you might have thought the change could not be spent before the transaction creating it was confirmed, but this is not the case.

I am not aware of any reason why reusing an old address for change would benefit a user, but the system will let you do it without it causing any problems.

In Bitcoin for privacy and security reasons users are advised to avoid reusing addresses, but this doesn't have any interaction with the kinetics of spending coins.


---

### Answer by username_2 on 2018-08-29. Score: 0

> How are multiple inflight transactions from the same address handled?

Multiple unspent outputs from the same address can exist at the same time, from which you can send multiple transactions. Also, you can broadcast a transaction which spends **output 1** to a new **output 2**, and then immediately broadcast another transaction which spends **output 2** from the previous transaction.

> change for each transaction generates a new address for the change

Change doesn't generate addresses, the wallet software does. And it does not have to generate a new address for change, you can send change back to the original address. Of course, this does help protect privacy, and depends on how your wallet software handles change and address generation.

> If I have change sent sent back to the original address, does it
> matter in what order they are added to the chain? I can't see why.

You just have to make sure you don't try to spend a previously spent output.

> This however allows everybody to track my wallet and where I'm
> transacting. Also I don't know if all wallets support this.

Not necessarily, because it is not apparent which output was the change output, if you use a different address. See <https://bitcoin.stackexchange.com/a/77520/60443>

> **Comments:**
> **username_0**: I'm think I made some terminology mistakes (accidentally saying address when I meant transaction output id, I think, or whatever it is called). This is leading to confusing answers. I'm going to probably delete this question tomorrow and resubmit it with the terminology fixed and a more detailed description of the issues.  

---

### Answer by username_3 on 2018-08-29. Score: 0

> *”...they will both want to use the same unspent output address”*.

Unspent outputs are not listed by address. Multiple UTXOs can exist for the same address, and each can be spent individually. Each entire **UTXO** must be spent, not the entire ‘address balance’. The concept of ‘address balance’ doesn’t exist at the technical level of the bitcoin blockchain. It is all individual UTXOs.

A UTXO can only be spent once, and any attempt to spend an already-consumed UTXO will be invalid.

As username_2 mentioned, you can also have a chain of transactions within a block, where each transaction spends the output of another transaction that is listed earlier within the same block (ordering is important!).

So it is fine to have multiple transactions incoming/outgoing at the same time. As long as they’re valid, they should confirm.


---

