I've read other questions (and their answers) on this but I still don't see the use for internal addresses. I get that you're supposed to send the change of a transaction there but I don't see how this benefits you, all it does is move your remaining funds on an address, right? And you could just as easily move your funds to a new external address. I understand that the point is to use an address only once, but that can also be done with external addresses.

I hope that somebody can explain what benefits internal addresses have,

Thanks in advance!

2 Answers 2


The separation between internal and external addresses comes from BIP32.

Using a different chain for each permits you to give out an xpub for just the external ones to an auditor. They would then be able to observe your incoming payments, but not your spending.

  • Another question: when sending some BTC to somebody should you prioritize internal or external funds? My guess would be external because then you'd get more internal funds making your transaction history more private, but I'm not certain
    – timgfx
    Feb 15, 2019 at 18:29

In order to keep track of who sent you how much money you make sure to hand out an address only once and make a note of who you handed out the address to in your wallet software. This way all funds sent to a particular address are attributed to a particular party. Now if your wallet was using external chain addresses for change you wouldn't be able to track who sent you how much.

As for why there is change at all it's because unspent outputs can only be spent in their entirety so if you don't want to send the entire amount to the recipient you have to receive the excess as change back to yourself. There are two related articles on the wiki about this called change and coin analogy that you might want to read.

  • Ah, so you mean that you give one receiving address to one person that they will use whenever they need to send you money so you have addresses per person that sends you money instead of an address per transaction (receive + send)?
    – timgfx
    Feb 15, 2019 at 18:25
  • @timgfx ideally it's per transaction. The point is that you attribute payments based on the address where they are sent so if your wallet starts sending change to external addresses that'll only confuse things for you.
    – Abdussamad
    Feb 16, 2019 at 19:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.