Cost of single vs multiple outputs to the same address


A transaction can have multiple outputs pointing to the same address however it's not clear to me if and how this affects the transaction's priority and cost?

As an example, let's consider these two simple cases:

  • Case A: Two outputs pointing to the same address use the same input in a 50/50 split.
  • Case B: Two outputs pointing to the same address use two different inputs of equal amounts.

Doug Peters

Posted 2014-04-01T00:48:12.313

Reputation: 1 326



A transaction that has multiple output scripts that point to the same address would be no different from a transaction in which every output script pointed to a different address. So when you have two outputs to the same transaction, all that matters is that you have 2 outputs and the size of those outputs (byte-wise).

Transaction priority is calculated as follows:

priority = sum(input_value_in_base_units * input_age)/size_in_bytes

As you can see, only the tx size matters and the input value and age. None of these are influenced by the address to which coins are sent.

Steven Roose

Posted 2014-04-01T00:48:12.313

Reputation: 11 183

But the cost would be smaller if the two outputs in the question's example merge into a single output, right? – Doug Peters – 2014-04-01T23:12:01.403

Well, yes. The cost is related to the priority. But for a 2-output tx, the cost will almost always be zero. – Steven Roose – 2014-04-02T01:48:19.590