USDT is one token in name only. It's issued on several networks, and the two you'll meet most are ERC-20 (Ethereum) and TRC-20 (Tron). Same value, very different cost and speed — and they are not interchangeable when you send them.
The short answer
- TRC-20 (Tron): low fees, fast confirmations. Best for most transfers and swaps.
- ERC-20 (Ethereum): the most widely supported, but fees rise with Ethereum congestion.
- Pick the network your USDT is already on — you can't send TRC-20 to an ERC-20 address.
Fees and speed
On Tron, a USDT transfer is cheap and confirms in seconds to a minute. On Ethereum, the same transfer costs a gas fee that swings with network load and confirms a bit slower. If you're choosing where to hold or move USDT, TRC-20 is usually the cheaper rail; ERC-20 wins on universal acceptance.
They are not the same address
An ERC-20 address (starts 0x…) and a TRC-20 address (starts T…) are different formats on different chains. Sending USDT on the wrong network — or to the wrong address type — means it doesn't arrive and usually can't be recovered. Always match the network end to end.
Swapping either on 0trace
0trace supports USDT on both Ethereum and Tron (and other networks). When you create an order, you pick the exact network you're sending from — ERC-20 or TRC-20 — and the deposit address is generated for that chain. No account, no KYC. The rate is a live float, quoted on our side.
Which should you swap to Monero?
Either works. If you already hold USDT on Tron, keep it simple and swap TRC-20 → XMR — it's the cheapest to move. If your USDT sits on Ethereum, swap ERC-20 → XMR rather than paying extra to bridge it first.