← back to blog

Guide: OTC vs DEX vs CEX: where to sell airdrop tokens in 2026

Guide: OTC vs DEX vs CEX: where to sell airdrop tokens in 2026

you farmed the airdrop, the tokens landed, and now you have a narrow window to convert them into something real. this is where most operators lose money, not on the farming itself, but on the exit. i’ve watched people take a $40,000 position and walk away with $18,000 because they dumped on a low-liquidity DEX pool with no price impact awareness and no plan B.

this guide is for operators running multi-wallet airdrop campaigns who already hold tokens and need to move them efficiently. whether you have 20 wallets with $500 each or 200 wallets averaging $3,000 each, the right venue depends on size, token liquidity, your KYC situation, and how fast the price is moving. i’ll walk through each venue with concrete steps, not theory.

by the end you’ll know exactly which route to take for a given position, how to execute it without wrecking the price on yourself, and what to do when the obvious option isn’t available.


what you need

  • wallets: metamask, rabby, or frame for EVM chains. phantom for solana. each should already hold the airdrop tokens
  • CEX accounts: binance, okx, or coinbase with KYC completed and withdrawal limits verified. know your tier limits before you need them
  • OTC access: Cumberland DRW, Wintermute OTC, or Binance OTC portal (minimum trade size varies, typically $50k+ for institutional desks, $10k+ for Binance OTC)
  • DEX aggregators: 1inch (EVM), Jupiter (solana), paraswap, or cowswap for MEV protection
  • price data: coingecko or coinmarketcap open in a tab, plus dexscreener for DEX-listed tokens
  • gas: at least 0.05 ETH per active EVM wallet for gas. on solana, 0.1 SOL per wallet is safe
  • a spreadsheet: track each wallet address, token amount, approximate USD value at claim, and which venue you’re routing it through
  • VPN or residential proxies: if you’re operating across multiple wallets, consistent IP hygiene matters. the multiaccountops.com blog has solid writeups on fingerprinting risks when connecting multiple wallets to the same CEX

step by step

step 1: audit your full position before doing anything

before you touch a single token, run a full audit. export your wallet list, query on-chain balances using a block explorer or a script, and total your real position.

# example using cast (foundry) to check token balance
cast call <TOKEN_ADDRESS> \
  "balanceOf(address)(uint256)" \
  <WALLET_ADDRESS> \
  --rpc-url https://mainnet.infura.io/v3/<YOUR_KEY>

for each token, note: total supply, circulating supply at TGE, whether the project has a vesting cliff, and current 24h DEX volume. if 24h DEX volume is under $500k, you are a large actor regardless of how small your wallet stack feels.

if it breaks: token not showing on explorer means it may be on a different chain than expected. double-check the contract address against the official project announcement.

step 2: categorize tokens by size and liquidity tier

split your holdings into three buckets:

  • tier 1 (small, liquid): under $5,000 per wallet, token is listed on a major CEX with real order book depth. route to CEX.
  • tier 2 (medium, DEX-listed): $5,000 to $50,000 total position, token has $1M+ daily DEX volume. use a DEX aggregator.
  • tier 3 (large or illiquid): $50,000+ total, or token has thin liquidity anywhere. contact OTC desk first.

this is not a hard rule, it’s a starting framework. a $20,000 position in a token with $200k daily volume is still a tier 3 problem because your sell will move the market by 10%.

if it breaks: you find yourself in a grey zone between tier 2 and 3. when in doubt, go OTC for anything where your position exceeds 2% of 24h volume.

step 3: for tier 3 positions, contact an OTC desk

the major OTC desks i’ve actually used or have direct reports on: Binance OTC (accessible via binance.com portal, lower minimums), Cumberland DRW (institutional, $100k+ practical minimum), and Wintermute OTC (market maker with competitive quotes, good for new token listings). for smaller ops, Kraken OTC and OKX OTC are accessible at lower size.

the process: you submit an RFQ (request for quote) with the token, amount, and settlement preference (USDT, USDC, or fiat wire). the desk responds with a price, typically within minutes for liquid tokens. if you accept, settlement happens over-the-counter without touching the open order book.

the advantage: zero price impact, no front-running bots, and you don’t tank the token for everyone farming the same project. the cost is typically a 0.5% to 1.5% spread versus mid-market, plus counterparty KYC requirements.

keep in mind: OTC desks require full KYC/AML documentation. this is not optional and i’m not going to tell you to work around it. this is not legal advice, but Singapore MAS requirements for digital payment token services are covered at mas.gov.sg if you want to understand your local obligations.

if it breaks: desk declines your token because it’s not in their coverage list. move to a DEX aggregator and break the sell into smaller tranches over multiple hours.

step 4: for tier 2 positions, use a DEX aggregator with slippage settings

for EVM chains, i default to 1inch or cowswap. cowswap specifically routes through a batch auction mechanism that provides MEV protection per their documentation, meaning you’re less likely to get sandwiched by bots.

for solana, Jupiter is the standard aggregator. set max slippage to 0.5% for liquid tokens, 1% for mid-tier. if you can’t fill at that slippage, you’re in tier 3 territory.

# on 1inch: set slippage to 0.3%-0.5% for liquid tokens
# check the "price impact" field before confirming
# if price impact > 1%, reduce the trade size

split large DEX sells into multiple transactions. selling $30k in one shot versus 5x $6k sells over 2-3 hours will net you meaningfully different prices on most mid-cap tokens. there’s no magic number, but i generally don’t exceed $10k per single DEX transaction unless the 24h volume is above $5M.

if it breaks: transaction reverts due to slippage. the token price moved while your tx was pending. increase slippage tolerance slightly or wait for a calmer period. on congested chains, increase gas to reduce pending time.

step 5: for tier 1 positions, sell via CEX limit orders

if the token is listed on binance, okx, or coinbase and your total position is under $5k equivalent per wallet, CEX is the simplest route. deposit the tokens, place limit orders slightly below the current ask to get fills quickly without market selling.

avoid hitting the market order button for anything above $500. limit orders give you price certainty and reduce your contribution to downward price pressure.

on binance spot, the trading fee is 0.1% (or lower with BNB discount). coinbase advanced trade is 0.6% taker for lower-volume users, which adds up. know your fee tier before routing.

if it breaks: token isn’t available for withdrawal to the CEX, or the network isn’t supported. you’ll need to bridge the token first. use official bridges only, not random third-party services.

step 6: bridge if the token is on a chain the CEX doesn’t support

many airdrop tokens launch on L2s or app-chains before hitting major CEX support. if you need to move tokens from arbitrum, base, or a lesser-known L2 to ethereum mainnet before depositing, use the official canonical bridge for that chain. bridging times range from minutes (optimistic rollup fast withdrawals via third-party liquidity providers like Stargate) to 7 days (canonical optimism/arbitrum bridge with no fast exit).

budget for bridging cost in your exit math. on ethereum mainnet, bridging and swapping can cost $20-80 in gas depending on congestion. on L2s it’s under $1.

if it breaks: bridge transaction stuck. check the bridge’s status page, not twitter. most canonical bridges have an official claims interface for stuck transactions.

step 7: track your cost basis per wallet for tax purposes

this is not tax advice. but you need records. i keep a spreadsheet with: wallet address, claim date, token quantity, USD value at claim (using coingecko historical price data), sale date, sale price, venue, and net proceeds. this takes 10 minutes per airdrop campaign and saves significant headaches later.

if it breaks: you didn’t record the claim date price. coingecko provides historical OHLCV data via their public API going back years. you can reconstruct it, but it’s easier to log it at the time.

step 8: verify all proceeds arrived and reconcile

after every venue exit, verify the USDT/USDC landed in your destination wallet or CEX account. reconcile total proceeds against your starting position. price slippage, fees, and gas all eat into the number, and the final figure is usually 3-8% below your theoretical “at market price” calculation. that’s normal. above 10% loss to friction is a sign your routing was suboptimal.


common pitfalls

selling everything on day 1 with market orders. token unlocks attract bots and momentum traders. the first 24-48 hours after TGE or cliff unlock are typically the worst time to use market orders on DEXs. set limit orders or use OTC.

ignoring vesting schedules for other recipients. if the project has a 1-year cliff for team tokens, your sell window before team unlocks may be shorter than you think. read the tokenomics docs, not just the farming announcement.

depositing to a CEX before the token is listed. some operators deposit tokens to a CEX hoping it’ll list. if the CEX doesn’t support the token, it disappears into an unsupported asset limbo. always verify deposit support before sending.

treating all wallets as independent. if you created wallet clusters with consistent fingerprints, a CEX may flag multiple deposits from linked wallets as a single actor and freeze withdrawals pending review. keeping your wallet operations compartmentalized from the start, including browser fingerprinting practices covered at antidetectreview.org/blog/, reduces this risk.

ignoring gas costs on high-volume campaigns. if you’re exiting 100 wallets on ethereum mainnet, gas alone at 20 gwei can cost $2,000+. factor this into your target sell price. sometimes batching via a smart contract or moving to a cheaper chain first makes sense.


scaling this

10 wallets: manual execution is fine. do it one at a time, check slippage each trade, use a single aggregator per chain.

100 wallets: manual is painful. write a script to batch-check balances and price impact before you start. execute in parallel across 5-10 wallets simultaneously, not all at once. at this scale you’ll definitely need proper IP and browser isolation, and an OTC desk relationship for any tokens where your aggregate position is significant.

1000 wallets: you need automation for the exit, not just the farming. scripts that route small amounts to CEX via API, mid-size to aggregators, and flag anything above threshold for OTC review. you also need multiple OTC desk relationships because one desk may not absorb your full volume on a new token. expect to spend 2-3 days on a full exit at this scale, not hours.


where to go next


Written by Xavier Fok

disclosure: this article may contain affiliate links. if you buy through them we may earn a commission at no extra cost to you. verdicts are independent of payouts. last reviewed by Xavier Fok on 2026-05-19.

need infra for this today?