I noticed that the sweep_all command warns when it is about to merge outputs from the same transaction, which I appreciate, as that would kind of break the point of ring signatures and make my transactions traceable, after all. But then it provides no alternative... I'm trying to spend by amount, in the hopes that the wallet will always pick the largest output, but that's not a fail-proof solution, as the wallet could very well merge smaller ones instead.

Are there any plans to implement something like sweep_output command, or a transfer command where you can pick the outputs, or in the worst case, something like raw transactions in Bitcoin?

PS: That actually raises another question. I bought some Monero and the exchange credited me, in the same transaction, two different outputs, both with hidden amounts. What's the point? I understand this was necessary before RingCT, but now that the amounts are hidden, why would the exchange wallet create more than one output for me?


  • Are you sure both outputs were for you? A transaction will usually create one output for you, and a second output for change that is returned to the sender.
    – knaccc
    Aug 14, 2017 at 16:44
  • There was a wallet bug at some point which caused this, and some exchanges are possibly still running this version, wasting blockchain space. This should be solved soon, since everyone will need to update their software before the fork in mid september.
    – user36303
    Aug 16, 2017 at 11:35

2 Answers 2


The TX would only link those 2 outputs together if they come from same TX. If they come from different TX-es, no problem - that's where ring signature has you covered as it will be ambiguous from which TXes are the outputs getting spent.

Even if in 1 TX the ring is "broken", just make another TX after it and already the trail is fuzzed. 2nd output is usually the change so it shouldn't belong to your wallet anyway. I think that even when you send to yourself there will be 2 outputs (2nd one of 0 value, but can tell which one it is)


If you're dead set on spending a particular output, you can limit monero-wallet-cli to selecting only a single output with set min-outputs-count 1000.

See this answer for a bit more information on the subject.

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.