USDT P2P Arbitrage: The Complete Guide (2026)

How USDT P2P arbitrage works, the five strategies traders use, a worked calculation, the risks that eat profit and a safe way to start.

Updated October 6, 2026·11 min read

P2P arbitrage means buying USDT from one person at a lower price and selling it to another at a higher price on the P2P marketplaces of exchanges such as Binance, Bybit and OKX. Profit is the difference (the spread) between the two prices minus everything it costs to move money and coins between them.

That sentence is the whole idea. The rest of this guide is about what decides whether it earns real money: where spreads come from, which strategies exist, how to count honestly and what can go wrong.

What P2P trading is, in short

On a P2P marketplace users publish ads: "Selling USDT at 45.60 ₴, bank transfer, limit from 1,000 to 50,000 ₴". Anyone can take an ad and open an order. The exchange locks the seller's coins in escrow, the buyer pays the seller directly (by card, bank transfer or a payment app), and when the seller confirms the money arrived the exchange releases the coins to the buyer. The exchange never touches the fiat; it only guarantees the crypto side.

Two things follow for arbitrage. First, every ad has its own price, so the same USDT has hundreds of prices at once on each exchange. Second, the price depends on the payment method: the same USDT costs different amounts through different banks.

Why P2P spreads exist

On an ordinary spot exchange a price gap between two venues disappears in seconds because bots instantly move money back and forth. P2P does not work like that, so gaps live for minutes and hours:

  • Fiat moves slowly and by hand. Every trade needs one person to send a bank transfer and another to confirm it. No bot can close a gap that needs a human on both sides.
  • Each exchange is its own market. The P2P books of Binance, Bybit and OKX hold different traders, different liquidity and different urgency.
  • Payment methods split the market. Sellers who accept only one bank form a smaller pool than those who accept ten, and smaller pools price differently.
  • Someone pays for speed and convenience. A person who needs hryvnia right now on a particular card accepts a worse rate.
Worth remembering: P2P arbitrage is less "free money" and more a small service business. You provide liquidity and take on risk, and the spread is your fee.

Five strategies

1. Between exchanges (taker → taker)

You buy USDT from a seller's ad on exchange A, transfer it to exchange B and sell it to a buyer's ad there. This is what most people call a P2P bundle. It is simple and fast (both legs run as soon as counterparties respond), but you pay the full spread on both sides and a fee for moving the coin between exchanges. A step-by-step way to find such a bundle is in the separate guide.

2. Within one exchange (maker)

Instead of taking other people's ads, you publish your own: a buy slightly above the best buyers and a sell slightly below the best sellers. Every time both fill, you keep the difference. No transfers between exchanges are needed. Most full-time traders work this way, but it is slower and harder than it looks: you wait for counterparties, keep your price competitive and sometimes need merchant status. The roles are compared in the article on maker vs taker.

3. Between payment methods

On the same exchange the same USDT can sell for more to buyers paying through one bank than it costs from sellers who accept another. If you have accounts at both banks, you buy through the cheaper method and sell through the dearer one. The catch: you need real verified accounts and matching limits. More in the payment methods overview.

4. P2P → spot → P2P

You buy USDT on P2P, swap it on the exchange's spot market for another asset (USDC, BTC, another stablecoin) and sell that asset on P2P where its local price is relatively higher. The spot swap is instant and cheap, so it adds a route rather than a delay. It does add price risk if the intermediate asset is volatile.

5. Between currencies

You buy with one fiat currency and sell for another, earning on the gap between the P2P rate and the bank rate. This is the hardest option because you need accounts in two countries and a clear grasp of currency rules in each. Treat it as advanced.

A worked example: honest arithmetic

The numbers below are illustrative, but every result is computed from the prices shown, so check them yourself.

A bundle between exchanges, 2,000 USDT:

Buy on exchange A at 44.90 ₴−89,800.00 ₴
Transfer to exchange B (network fee 1 USDT)1,999 USDT arrived
Sell on exchange B at 45.38 ₴+90,714.62 ₴
Net profit914.62 ₴ (1.02%)

Note what the transfer fee did. Without it the profit would be 960.00 ₴ (1.07%). One USDT of fee took 45.38 ₴, and that is before any bank fees on the fiat side. The spread on the screen is never the profit. Every leg has a cost, and an honest calculation counts all of them and flags the unknown ones separately.

A maker on one exchange: say the best buyers offer 44.80 ₴ and the best sellers ask 45.30 ₴. You post a buy at 44.85 ₴ and a sell at 45.25 ₴. If both fill you take 0.40 ₴ on every USDT, about 0.9% of 44.85 ₴, or 1,200 ₴ on 3,000 USDT. But only if both trades actually happen and prices do not move in the meantime.

Check your own numbers

Realistic returns

In practice the spread between exchanges' best prices on a calm day is often a fraction of a percent, and it can widen during volatility, at night or when liquidity is thin. After transfer fees, bank fees and lost time, far less than the "pretty" percentages remains. So:

  • count profit on the real amount rather than the per-unit price: a fee in USDT eats a smaller share of a larger sum;
  • judge the net result per hour of work, not the percentage on screen;
  • do not build expectations on the best spread of the day: it is rare and often turns out to be bait (see fake ads).

Risks that actually cost money

  • Fake and manipulative ads. The cheapest price in the book is often a trap: a tiny limit, a new merchant or a demand to move to an outside chat.
  • Rate moves between legs. While you wait for a transfer or a confirmation the market can shift and eat the spread.
  • Bank restrictions. Banks can block or review transfers that look suspicious. Use only your own accounts and never accept payments from third parties.
  • Network or address mistakes. Sending USDT on the wrong network can mean losing the funds.
  • Exchange limits and verification. Volumes and available payment methods depend on your verification level.
  • Regulatory and tax questions. Rules differ by country and change. Check them with a qualified professional.

How to assess a counterparty

Before opening an order, check:

  • the number of trades (ideally hundreds, not a handful) and the completion rate;
  • profile age and feedback;
  • whether the ad's limit fits your amount, since a very narrow limit at a very attractive price is a warning sign;
  • the payment method: it must match your own account.

These are exactly the signals MetaRates uses to filter out unreliable ads: by default we hide sellers with few trades or a low completion rate, and prices that deviate sharply from the market median.

Tools that help

  • Prices from all exchanges in one list instead of three apps: the MetaRates rate table.
  • A bundle calculator that accounts for fees and shows the net result, above or on the home page.
  • Rate alerts, so you do not have to watch the market around the clock.
  • Your own spreadsheet or notes with actual trade results: the best way to learn real returns.

A step-by-step plan for beginners

  1. Create and verify an exchange account and link your own payment methods.
  2. Start with small amounts to learn the process and see the real fees and delays.
  3. Compare prices on several exchanges and choose a "buy → sell" pair.
  4. Calculate the net result in the calculator with all fees.
  5. Check counterparties by rating, trade count and limits.
  6. Run both legs without rushing: never release coins before payment is confirmed.
  7. Record the result and compare it with your calculation. Scale up only when the process works consistently.
Disclaimer. This material is for information only and is not financial advice. The result depends on your experience, fees, limits and market speed; losses are possible.

Frequently asked questions

It is buying USDT cheaper from one person and selling it for more to another on exchange P2P marketplaces. Profit equals the price difference minus fees and transfer costs.

It depends on the amount, the market spread, fees and your time. The spread is often a fraction of a percent and even less remains after fees, so there is no guaranteed income and losses are possible.

In the cross-exchange strategy yes, and it costs a network fee. In the single-exchange maker strategy no transfers are needed, but you spend time waiting for counterparties.

Trades run through exchange escrow, but risks remain: fake ads, rate moves, bank restrictions and transfer mistakes. Check counterparties and start with small amounts.

One that accounts for the transfer fee and the trade fee and shows the net result. Such a calculator is available on the MetaRates home page and in this article.

Check the numbers on live prices

Open MetaRates: P2P orders from six exchanges, an arbitrage calculator and rate alerts.

Create account

This material is for information only and is not financial advice.