<p>It definitely seems weird to have two outputs towards the same address, but if it was picked up by your bitcoind node, then miners will probably accept it, because they're also using bitcoind.</p>

<p>It would be interesting to read the raw scripts of the outputs. Most likely, as you say, it was created by someone using the raw commands.</p>

<p>One scenario that I could think for someone doing this is that <strong>you'd want the receiver to claim the outputs in separate transactions</strong>. If there was a single 0.3 output, the receiver would need to claim all 0.3 to use them. </p>

<p>However, I'm not sure when this would be useful.</p>

CC BY-SA 3.0
2014-02-17T15:25:12.557Z
Thanks. But I really need a more definitive answer on this. I'll end up writing a bunch of code according to the answer :) Can this be legally done or is it my client that just messed things up? Like I said, bc.info shows a single output to that address where the amount is the sum of the two outputs I see.
Emre K.
CC BY-SA 3.0
2014-04-19T17:17:46.717Z
It would be useful for creating change in advance. If it was all in one output, and you then spent 0.14 BTC, that would generate change of 0.16 BTC that would be difficult to spend without fees for a while. As two outputs, you would get change of 0.04 BTC that would be hard to spend, but you'd still have the other output that would be "old" and hence easier to spend without fees.
Brangdon
CC BY-SA 3.0
2014-02-17T12:34:12.817Z
2014-02-17T12:34:12.817Z
Luca Matteis
<p>The standard RPC apis (createrawtransaction, createpsbt, walletcreatefundedpsbt, send) of bitcoind do not allow duplicated target address in the same transaction, however it is 100% allowed by the consensus rule, and will be accepted by bitcoind if you can construct the raw transaction without using the RPC apis.</p>
<p>It is a very useful feature when you are maintaining a master tx-fee account to cover all of the transactions for your clients. By splitting the balance into many small utxos, only one utxo is consumed / touched by a transaction, and other utxos are available for other transactions at any time; otherwise, if the master tx-fee account keeps all of its balance in a single utxo, it can only serve one transaction (providing its tx-fee) at a time, then have to wait enough confirmations before it is available to pay tx-fee for another transaction.</p>

CC BY-SA 4.0
2022-02-27T21:37:24.473Z
2022-02-27T21:37:24.473Z
Randy
<p>I received a transaction such as below: (I changed the actual numbers but the format is exactly the same)</p>

<pre><code>{
"amount" : 0.3,
"confirmations" : 739,
"blockhash" : "0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"blockindex" : 390,
"blocktime" : 1392284453,
"txid" : "aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbxxxxxxxxxxxxxxxxxxxx",
"time" : 1388888888,
"timereceived" : 1388888888,
"details" : [
{
"account" : "abc",
"address" : "address1",
"category" : "receive",
"amount" : 0.1
},
{
"account" : "abc",
"address" : "address1",
"category" : "receive",
"amount" : 0.2
}
]
}
</code></pre>

<p>When I check this transaction on blockchain.info. The site shows a single output to "address1" and the amount is 0.3.</p>

<p>When I try to replicate this situation with QT using Add Recipient, it does not allow me to enter the same address twice. I assume the sender was able to do this using sendrawtransaction.</p>

<p>Is it normal? Is it a non-standard transaction? Shouldn't this transaction be rejected by miners?</p>

CC BY-SA 3.0
2014-02-17T18:54:22.643Z
I do not see why you need to hide the information. If this is a genuine transaction you can provide the blockchain.info URL and we can look into it. It's already public knowledge.
T9b
CC BY-SA 3.0
2014-02-17T19:50:19.823Z
I don't want to expose a possible weakness in our solution. I also don't want to associate my SE account with my company.
Emre K.
CC BY-SA 3.0
2014-02-17T21:41:02.363Z
It's likely any weaknesses will get exposed whatever you do to try to conceal them. It's arguably more useful to be open when you are developing - at least you won't suffer a zero-day exploit.
T9b
CC BY-SA 3.0
2014-02-17T22:31:11.473Z
It is. It's also likely that exposing the weakness publicly will speed up the exposure -if it exists. The actual tx data is irrelevant to the question.
Emre K.
CC BY-SA 4.0
2020-08-04T06:23:10.370Z
Although this's a quite old question, I think it's relative or duplicated with a more earlier question [Can a single transaction have multiple outputs going to the same address?](https://bitcoin.stackexchange.com/questions/7603/can-a-single-transaction-have-multiple-outputs-going-to-the-same-address)
Fogmoon
CC BY-SA 4.0
2022-02-28T21:10:49.793Z
Does this answer your question? [Can a single transaction have multiple outputs going to the same address?](https://bitcoin.stackexchange.com/questions/7603/can-a-single-transaction-have-multiple-outputs-going-to-the-same-address)
Saxtheowl
<transactions>
How can there be multiple outputs with same address in the same transaction?
Emre K.
# How can there be multiple outputs with same address in the same transaction?

(Asked by: username_0 on 2014-02-17)

I received a transaction such as below: (I changed the actual numbers but the format is exactly the same)

```
{
"amount" : 0.3,
"confirmations" : 739,
"blockhash" : "0000000000000000xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"blockindex" : 390,
"blocktime" : 1392284453,
"txid" : "aaaaaaaaaaaaaaaaabbbbbbbbbbbbbbbbbbbbbbbxxxxxxxxxxxxxxxxxxxx",
"time" : 1388888888,
"timereceived" : 1388888888,
"details" : [
{
"account" : "abc",
"address" : "address1",
"category" : "receive",
"amount" : 0.1
},
{
"account" : "abc",
"address" : "address1",
"category" : "receive",
"amount" : 0.2
}
]
}

```

When I check this transaction on blockchain.info. The site shows a single output to "address1" and the amount is 0.3.

When I try to replicate this situation with QT using Add Recipient, it does not allow me to enter the same address twice. I assume the sender was able to do this using sendrawtransaction.

Is it normal? Is it a non-standard transaction? Shouldn't this transaction be rejected by miners?

**Tags:** transactions

> **Comments:**
> **username_1**: I do not see why you need to hide the information. If this is a genuine transaction you can provide the blockchain.info URL and we can look into it. It's already public knowledge.  
> **username_0**: I don't want to expose a possible weakness in our solution. I also don't want to associate my SE account with my company.  
> **username_1**: It's likely any weaknesses will get exposed whatever you do to try to conceal them. It's arguably more useful to be open when you are developing - at least you won't suffer a zero-day exploit.  
> **username_0**: It is. It's also likely that exposing the weakness publicly will speed up the exposure -if it exists. The actual tx data is irrelevant to the question.  
> **username_2**: Although this's a quite old question, I think it's relative or duplicated with a more earlier question [Can a single transaction have multiple outputs going to the same address?](https://bitcoin.stackexchange.com/questions/7603/can-a-single-transaction-have-multiple-outputs-going-to-the-same-address)  
> **username_3**: Does this answer your question? [Can a single transaction have multiple outputs going to the same address?](https://bitcoin.stackexchange.com/questions/7603/can-a-single-transaction-have-multiple-outputs-going-to-the-same-address)  

---

## 2 answers

### Answer by username_4 on 2014-02-17. Score: 3

It definitely seems weird to have two outputs towards the same address, but if it was picked up by your bitcoind node, then miners will probably accept it, because they're also using bitcoind.

It would be interesting to read the raw scripts of the outputs. Most likely, as you say, it was created by someone using the raw commands.

One scenario that I could think for someone doing this is that **you'd want the receiver to claim the outputs in separate transactions**. If there was a single 0.3 output, the receiver would need to claim all 0.3 to use them.

However, I'm not sure when this would be useful.

> **Comments:**
> **username_0**: Thanks. But I really need a more definitive answer on this. I'll end up writing a bunch of code according to the answer :) Can this be legally done or is it my client that just messed things up? Like I said, bc.info shows a single output to that address where the amount is the sum of the two outputs I see.  
> **username_5**: It would be useful for creating change in advance. If it was all in one output, and you then spent 0.14 BTC, that would generate change of 0.16 BTC that would be difficult to spend without fees for a while. As two outputs, you would get change of 0.04 BTC that would be hard to spend, but you'd still have the other output that would be "old" and hence easier to spend without fees.  

---

### Answer by username_6 on 2022-02-27. Score: 2

The standard RPC apis (createrawtransaction, createpsbt, walletcreatefundedpsbt, send) of bitcoind do not allow duplicated target address in the same transaction, however it is 100% allowed by the consensus rule, and will be accepted by bitcoind if you can construct the raw transaction without using the RPC apis.

It is a very useful feature when you are maintaining a master tx-fee account to cover all of the transactions for your clients. By splitting the balance into many small utxos, only one utxo is consumed / touched by a transaction, and other utxos are available for other transactions at any time; otherwise, if the master tx-fee account keeps all of its balance in a single utxo, it can only serve one transaction (providing its tx-fee) at a time, then have to wait enough confirmations before it is available to pay tx-fee for another transaction.


---

