Skip Navigation

When i churn/mix multiple account's XMR and then combine the outputs into a single account, i have compromised my anonymization effort?

Hello,

if I am using several Monero receiving accounts (like “cash”, “work”, “trading”, “mining”, “donations”) and for each of the account i have secondary account into which i repeatedly sweep my receiving account's balance in order to churn/mix my XMR (e.g. cash -> cash2nd).

What if:

A) I "combine" the XMR again in the second "level" of my XMR accounts (account called common3rd):

 undefined
    
cash     -> cash2nd    -> common3rd
work     -> work2nd    -> common3rd
trading  -> trading2nd -> common3rd -> 3rd party (big payment which would combine most/all outputs)

  

B) I split each churning/mixing transaction into several a small outputs:

 undefined
    
cash -> output 1 - cash2nd
     -> output 2 - work2nd
     -> output 3 - trading2nd
and then spend from all these 2nd accounts in one big transaction

  

Is better (anonymity-wise) A or B and why or you suggest better direction?

11 comments
  • The more outputs you have/use, to more traceable you get. The more churning you do, the less traceable you become

    I would advise to mix your outputs at different moments rather than all at once in a final big transaction, as those kind of transactions really stand out. If you’ve made enough churning it shouldn’t be a concern anyways but 🤷

    On the other hand, mixing outputs early will also make you more traceable (but will lower the cost of churning, as churning many times many individual outputs is expensive), so I’m not sure it’s the best option either

    • The more outputs you have/use, to more traceable you get

      Thanks for your input. ChatGPT says "using more outputs in your transactions can potentially lead to unintentional traceability if those outputs are later used in a larger transaction. This is why it is important to carefully plan and manage how you use outputs in your transactions to maximize privacy." So it confirms what you have said.

      So I guess that I should avoid manually adding multiple outputs in aim to decrease chance of a tracking, I am saying that since i am usually getting small transactions and spending in big ones (which would "consolidate" small outputs and more less invalidate my anonymization effort). So I guess i will do just churning with single output to my secondary wallet and in case i want to "join" funds from "home" and "work" accounts, I can do:

      C)

      3rd party -> work -> work2nd

      KYC'ed 3rd party -> home -> home2nd -> home3rd -> work2nd

      and then spend big transaction from work2nd (or maybe i can skip the step "home3rd -> work2nd" and source the big transaction from various accounts, yet someone claimed last year "It seems that at the present moment, neither the Monero GUI/RPC/CLI wallets implement the ability to transfer from multiple addresses." and I can confirm I am unable to find it in Monero GUI [btw. it is very slow to sync (even tens of minutes if not ran for 2 weeks+), i am NOT running node and i am using Tor proxy inside it]. Feedback to what I have written is much appreciated.

      • Seems good!

        About the Monero software, try using Feather Wallet. It gives you more infos about your outputs (you can select each one individually), handles everything better, and usually syncs faster (with remote nodes). I advise using Tor nodes (Tor support built-in) or using a VPN

        Use a trusted remote node, as they’re currently pretty much able to track which outputs are used as decoys, as your client asks for them

        Locally syncing by downloading the blockchain is still the best way as you will leak less things, but is super slow. Pick your poison (or run your own remote node!)

11 comments