VeilSwap
← All posts
Privacy2026-11-037 min read

Why Your XRP Deposit Address Is Shared With Strangers

Of 146 orders, 137 had their own deposit address and nine sat on two shared ones - both on tag chains. We read the XRP account on-chain: 227 deposits in 10h50m, all tagged, all different.

On 3 November 2026 at 10:04 UTC the production database held 146 orders and 137 distinct deposit addresses. Nine of those orders sat on an address that another order had already used, and both addresses involved belong to the same kind of chain. Seven XRP orders, placed between 6 and 26 October, all pointed at rKKbNYZRqwPgZYkFWvqNUFBuscEyiFyCE. Four ATOM orders pointed at cosmos1hgp84me0lze8t4jfrwsr05aep2kr57zrk4gecx. Everything else was fresh: 49 of 49 USDT-TRX orders got their own address, 13 of 13 BTC, 12 of 12 USDT-TRON, 10 of 10 ETH, 6 of 6 XMR, 5 of 5 TRX, 4 of 4 LTC, 3 of 3 BCH, 3 of 3 ADA. The reuse was not random. It happened on exactly the two chains where an order is identified by a number written inside the transaction rather than by the address it is sent to. (BCH to XMR guide)

The reason is mechanical. On Bitcoin, Monero or an EVM chain the deposit address is the routing key: a payment to your address can only be your payment, so the pool derives a new one per order and the ledger does the bookkeeping for free. XRP and Cosmos work the other way round. An XRP payment carries a DestinationTag, a 32-bit integer field in the transaction body; a Cosmos bank send carries a memo, a free-text string in the same place. The pool can therefore publish one deposit account and hand each order a number, and it is the number, not the address, that says who is paying. Fresh addresses would buy nothing there, because the tag would still be the only thing separating two payers. What sharing saves is address derivation and consolidation. What it costs is that your destination becomes a public place that hundreds of other people also use.

We read that XRP account straight from the ledger. It has RequireDestinationTag set to true, the account-level flag that makes an untagged payment fail instead of arriving silently. Its balance at 14:00 UTC was 21,309.198964 XRP and its sequence, the count of transactions it has sent, was 64,083,497. Then the part that matters. Between 03:06:50 and 14:01:51 UTC, 10 hours and 50 minutes, it received 227 payments. All 227 carried a DestinationTag, all 227 tags were different, and they ran from 1,445,952 to 998,772,380. The median gap between two deposits was 110 seconds. Median size was 50 XRP, the mean 1,332.9, the total 302,567.4 XRP, the largest 37,000, the smallest 0.934303. In the same window 173 payments left the account, the pool sweeping deposits onward. One address, 227 strangers, one every two minutes.

This changes what a deposit address means. On a fresh-address chain your payment is an output that belongs to you and to nobody else: the pool knows which order it pays, and the rest of the world sees a transfer to an address with no history. On a shared-address chain you are one of 227 payments in eleven hours, which is real cover, and you are also wearing a name badge. The tag is written in plaintext in the transaction body, it is unique, and the whole inflow of the account is public. Anyone holding your tag - from the order page, a screenshot, a support mail, a wallet history - can pick your exact payment out of those 227 by amount and time, and can then look at its immediate neighbours, the deposits 110 seconds before and after. The crowd hides the transfer. The tag unhides it.

Five ways this goes wrong. First, sending XRP without the tag: because this account requires one, the transaction is included in a ledger and fails with tecDST_TAG_NEEDED. The 10-drop fee is burned, no XRP moves, and your order quietly expires while you believe you have paid. Second, sending ATOM without the memo: Cosmos does not enforce it, the bank module is perfectly happy, and the coins land in the shared account with no key attached. Recovery then depends on a human matching your hash against hundreds of deposits by amount and time. Third, writing address and tag in one field, the way some wallets display them: the address parser either rejects the string or truncates it. Fourth, copying the tag with a leading zero or a trailing space - a tag is an integer, and 0633316478 is not the same string as 633316478. Fifth, reusing a tag from an earlier order, or paying twice against the same one: both payments arrive under a single key and cannot be told apart. (how Monero fees work)

What our side does, and what it costs right now. Of 433 assets across 62 networks, six are flagged as needing an extra id - XRP, ATOM, XLM, HBAR, STX and NEIRO on Ethereum, 1.4% of the catalogue. The order response carries a depositExtraId field next to the address, and the order page prints it as its own row labelled Memo / Tag with a copy button, in all four languages. Twelve of the 146 orders in the database had one, 8.2%, and every one of those was on a tag chain. None of that stops you from sending without it; on a shared address the chain, not the site, decides what happens. At 14:04 UTC on 3 November, 100 XRP quoted 0.19302352 XMR and 1,000 XRP quoted 2.00893603. With XRP at 1.28 and XMR at 624.54 those are 5.8% and 2.0% below spot, the gap being a fixed cost per order. 100 ATOM quoted 0.21424328 XMR, also 5.8% below spot. The floors were 10.93 XRP and 9.94 ATOM; the ceilings 131,275 XRP against 2,576 ATOM.

A six-step routine for tag chains. One: treat the address and the tag as a single destination, never as two separate things to remember. Two: copy the tag from the order page, not from an earlier order, and check that it is neither empty nor zero. Three: paste it into the tag, memo or destination-tag field of your wallet, not into the address field, and confirm the wallet shows both before you sign. Four: if the wallet offers to save the address, save the pair, because a saved address without its tag is a trap for next time. Five: never reuse a tag - each order carries its own, and an old tag pays an order that has already expired. Six: for a large amount, read the account flag first. On XRPL an explorer shows RequireDestinationTag, and that one boolean tells you whether a mistake costs a fee or the whole transfer. (how Monero fees work)

The boundary. A shared deposit address is neither a leak nor a bug. It is what a chain looks like when the routing key lives inside the transaction instead of in the address, and every large venue that handles XRP works this way. The practical rules follow from that: your privacy on the deposit leg rests on the tag not travelling with your identity, so treat the tag the way you treat the order link - a secret that has to reach the pool and nothing else. The tell is worth remembering too. A site that hands you the same address on two different orders is telling you the routing happens somewhere other than the address, and that somewhere is a field you must not lose. Every price here is a snapshot from 3 November 2026; the live quote on the page governs.

Frequently asked questions

Can I send XRP to the deposit address without the tag?

No. That account has RequireDestinationTag set, so an untagged payment is included in a ledger but fails with tecDST_TAG_NEEDED: the 10-drop fee is burned and no XRP moves. Your order stays unpaid and then expires. The same mistake on ATOM is worse, because Cosmos accepts a send with no memo and the coins land in a shared account with nothing tying them to your order.

Why is the tag different for every order?

Because the address is shared. One XRP deposit account took 227 payments in 10 hours 50 minutes on 3 November 2026, and all 227 tags were different - that is how the pool knows which payment belongs to which order. The tag is the order key, so it changes when the order changes. Reusing an old tag pays an order that has already expired.

Is a shared deposit address worse for privacy?

It cuts both ways. You are one of 227 payments in eleven hours rather than a lone transfer, which is real cover. But the tag is plaintext in the transaction and unique to you, so anyone holding it can isolate your exact payment and see the deposits immediately before and after. Never publish the tag, and never send it through a channel you would not use for the order link.

Keep reading

All articles →

Ready to swap?

No account · No KYC · No email

Exchange now
Why Your XRP Deposit Address Is Shared With Strangers