Blog /Exchanges

How to List an ERC-20 Token on an Exchange: DEX and CEX Guide

How to list an ERC-20 token on an exchange: making the contract exchange-ready, creating Uniswap pools, getting tracked, and what CEXs check before integrating.

9 min read by Fibonacci Capital

To list an ERC-20 token on an exchange, you take one of two routes. On a decentralized exchange such as Uniswap, listing is permissionless: you create a pool pairing your token with ETH or a stablecoin, deposit both sides, and the ratio you deposit sets the opening price. On a centralized exchange, listing is an application: the venue reviews the project, and if it approves, its engineers integrate your contract into their deposit, withdrawal and accounting systems. Either way, the work that decides whether the listing goes well happens before the listing itself — in the contract, in how you seed liquidity, and in the information you hand to exchanges and data aggregators.

This guide covers the ERC-20-specific parts of that work: what makes a contract easy or hard to list, how to launch a DEX pool without handing value to bots, and what a CEX integration team will ask you for.

Step Zero: Make the Contract Exchange-Ready

Most listing problems with ERC-20 tokens are contract problems discovered too late. A token that deviates from standard behaviour can break AMM pools, fail exchange deposit systems, or simply get flagged as risky by traders who check the code before buying.

Verify the source code

Publish and verify your contract source on Etherscan before anything else. An unverified contract is a red flag for traders, it prevents you from updating your token profile on the explorer, and most centralized exchanges will not review a token whose code they cannot read.

Stick to standard behaviour

The ERC-20 standard is small: balances, transfers, approvals and the events that go with them. Every feature you add on top is something an exchange has to evaluate and a trader has to trust. The table below covers the features that cause the most friction.

Contract featureEffect on DEX listingEffect on CEX listingRecommendation
Fee-on-transfer (tax)Not supported by some AMM designs, including Uniswap v3; can break aggregator routingBreaks deposit accounting; many venues declineAvoid unless the tax is central to the product
Rebasing balancesPools lose track of real reservesBalances change without transfers, which complicates custodyAvoid, or list a non-rebasing wrapped version
Blacklist or freeze functionTraders read it as honeypot riskMust be disclosed; exchange will ask who controls itControl via multisig and document the policy
Pause functionSame perception riskMust be disclosedTimelock it, or remove it after launch
Owner-controlled minting without a capMajor red flagHeavy scrutiny, often a blockerHard cap, or governance-controlled with a timelock
Upgradeable proxyToken logic can change after listingExchange needs upgrade notice and control detailsMultisig plus timelock; disclose it up front
Unusual decimalsDisplay and precision errors in some interfacesExtra integration checksUse 18 unless there is a specific reason not to

Building on a widely used, audited implementation such as OpenZeppelin's ERC-20 avoids most of these issues by default. If you do need custom logic, get it audited — our guide to smart contract audits before launch covers what a useful audit looks like.

Move admin keys off a single wallet

Before you list anywhere, transfer ownership and any privileged roles from the deployer address to a multisig. Exchanges ask who holds admin rights, and "one developer's hot wallet" is not an answer that survives due diligence.

Listing an ERC-20 Token on a DEX, Step by Step

1. Choose the pair and the pool design

Most ERC-20 launches pair the token with WETH or a major stablecoin. A stablecoin pair gives holders a price that does not move with ETH; an ETH pair taps the deepest routing on Ethereum. Pick the one your buyers already hold.

Then choose the pool design. A full-range, constant-product pool (the Uniswap v2 model) is simple: liquidity is active at every price and needs no maintenance. Concentrated liquidity (Uniswap v3 and later) is far more capital-efficient, but you choose a fee tier and a price range, and if the price leaves your range your liquidity stops trading. For a volatile new token, concentrated liquidity without active management can leave the pool empty exactly when the market moves. Newer designs with hooks add flexibility and add complexity with it.

2. Set the opening price deliberately

The first liquidity you add sets the price. Deposit 1,000,000 tokens against 100,000 USDC and the pool opens at $0.10 per token. Multiply that by total supply and you have the fully diluted valuation the market sees on day one — so the ratio should reflect your pricing decision, not whatever tokens happened to be in the treasury wallet.

If the opening price is meaningfully off from where the token trades elsewhere, or from what private-round buyers paid, arbitrageurs will close the gap immediately at your expense.

3. Size the liquidity for real trades

Pool depth determines slippage. On a full-range constant-product pool, a single buy equal to 1% of the pool's token reserve moves the price by roughly 2%; a buy equal to 5% moves it by roughly 11%. Work out the trade sizes you expect in the first days and size the pool so those trades do not produce price jumps that scare off the next buyer. Our article on how much liquidity a token needs at launch walks through that sizing in more detail.

4. Protect the launch from snipers

Bots watch for new pools and buy in the same block the liquidity lands, then sell into the first genuine demand. Practical defences:

  • Add liquidity through a private transaction relay rather than the public mempool
  • Do not publish the pool address before liquidity is live
  • Be careful with anti-bot logic in the contract. Transfer limits and blocklists are the same admin powers that traders and exchanges scrutinise. If you use them, make them time-limited, self-disabling and disclosed

5. Lock or commit the LP position

Your LP tokens (or position NFT, on concentrated liquidity pools) represent the ability to pull the pool. Traders check whether that position is locked. Lock it in a timelock contract or hold it in a publicly documented multisig with a stated policy. An unlocked LP position controlled by a single wallet is one of the first things token scanners flag.

6. Make the token discoverable

A live pool is not the same as a findable token. After launch:

  • Update your Etherscan token profile with logo, website and social links. This requires a verified contract and is usually submitted from the contract owner address
  • Apply to CoinGecko and CoinMarketCap. Both need an active trading market, working website and explorer links, and a clear circulating supply methodology
  • Get onto token lists that wallets and swap interfaces use, so users do not see an "unknown token" warning
  • Publish the official contract address on every channel you control. Impostor tokens with the same ticker appear quickly after a launch, and DEX aggregators route on addresses, not names

Listing an ERC-20 Token on a CEX: What the Integration Team Needs

The application and commercial side of centralized listings — what exchanges assess, how fees work, and how tiers differ — is covered in our guide to crypto exchange listing requirements. Once a listing is approved, the technical integration is where ERC-20 specifics matter.

Expect the exchange's integration team to ask for:

  • Contract address, explorer link and confirmation the source is verified
  • Name, symbol and decimals exactly as they appear on-chain
  • Whether the contract is a proxy, and who holds upgrade and admin roles
  • Any transfer fees, restrictions, pause or blacklist functions
  • Minting and burning authority, and maximum supply
  • Every network the token exists on, the canonical contract address on each, and the bridge used between them
  • A circulating supply breakdown with the addresses of treasury, team, investor and locked wallets
  • Audit reports
  • A named technical contact for incident and upgrade notifications

Get multichain deposits right

If your token exists on Ethereum and one or more Layer 2 networks, the exchange may support only one network at launch. A bridged version of your token is a different contract at a different address, and users who deposit on an unsupported network can lose funds or wait weeks for manual recovery. Tell your community exactly which network each exchange supports, and repeat it in every listing announcement.

Sequence deposits before trading

Exchanges typically open deposits before trading starts. That window is when your market maker's inventory needs to arrive, API keys and sub-accounts need to be tested, and the order book needs to be seeded. A listing where deposits open and the market maker is still waiting on a multisig signature is a listing that opens with an empty book.

DEX First, CEX First, or Both at Once?

ApproachWorks well whenMain risk
DEX firstEarly community, DeFi-native product, you want on-chain price discovery before approaching CEXsThin pool, snipers, and a price history that exchanges will review
CEX firstStrong exchange relationship, audience that trades on centralized venuesSlower timeline, higher cost, no on-chain market until later
Both at TGEYou have liquidity to support both venues properlyPrice gaps between venues get arbitraged against the thinner one

When a token opens on a DEX and a CEX at the same time, arbitrage links the two prices within seconds. If the CEX order book is deep and the DEX pool is shallow, arbitrageurs trade against the pool until prices match, and the pool absorbs the loss. Set the DEX opening price to match the CEX reference price, size both venues for expected flow, and make sure someone is actively managing the relationship between them. This cross-venue coordination is a core part of what Fibonacci Capital handles for token teams at launch.

ERC-20 Listing Checklist

Contract

  • Source verified on Etherscan
  • Standard ERC-20 behaviour, no undisclosed transfer fees or rebasing
  • Admin roles on a multisig, upgrades behind a timelock
  • Audit completed and published

DEX launch

  • Pair and pool design chosen for your holders
  • Opening price matches your pricing decision and other venues
  • Liquidity sized for expected trade sizes
  • Liquidity added via private relay
  • LP position locked or held under a documented policy

Discoverability

  • Etherscan token profile updated
  • CoinGecko and CoinMarketCap applications submitted
  • Official contract address published on all channels

CEX integration

  • Integration pack ready: addresses, decimals, roles, supply breakdown, audits
  • Supported networks confirmed and communicated
  • Market maker inventory deposited and API access tested before trading opens

From Listing to a Healthy Market

Getting an ERC-20 token listed is mostly a checklist. Keeping it trading with tight spreads and real depth once the launch attention fades is the harder part, and it depends on liquidity being managed across every venue the token trades on, not only on the day it opens. At Fibonacci Capital we work with token teams from contract readiness through DEX pool setup, CEX integration and ongoing market making.

If you are preparing to list an ERC-20 token and want the liquidity plan built alongside the listing, talk to us about launch support.

Topics

#exchange listing #ERC-20 #DEX #CEX #token launch
Published on September 11, 2026
Share on X
Ready to optimize your token's market?

Fibonacci Capital provides expert market making, liquidity management, and token launch support.

Get in Touch
© 2025 GTech Software Solutions Inc. All rights reserved.