DexScreener Token Pairs Scraper — Multi-Chain DEX Export
Pricing
from $2.50 / 1,000 results
DexScreener Token Pairs Scraper — Multi-Chain DEX Export
Bulk lookup of token contract addresses to every live DEX pair on DexScreener — price USD, liquidity, FDV, market cap, 24h volume, transactions, price change. Multi-chain auto-discovery (Solana, Ethereum, Base, BSC + 30 more). Batched 30 addresses/request. No API key.
Pricing
from $2.50 / 1,000 results
Rating
0.0
(0)
Developer
Logiover
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
10 hours ago
Last modified
Categories
Share
DexScreener Token Pairs Scraper — Bulk Multi-Chain DEX Pair Data Export

Bulk lookup of any token contract address to every live DEX trading pair on DexScreener, across every chain DexScreener indexes — in one run, with zero configuration. Price USD, native price, liquidity USD, FDV, market cap, 24-hour / 6-hour / 1-hour / 5-minute volume, buy and sell transaction counts, price change percentages, base token, quote token, DEX, chain, pool creation date, websites and socials — for hundreds of tokens at a time.
Built for crypto algorithmic traders, DEX market makers, on-chain analytics platforms, portfolio dashboards, wallet trackers, tax software, token research teams and indexer pipelines that need DexScreener's pair data at scale — without writing batching, retry and rate-limiting logic by hand.
🟢 No API key. No proxy. No login. No browser automation. Pure public REST API.
🚀 Why this scraper
DexScreener is the de-facto market data layer for decentralized exchanges across Solana, Ethereum, Base, BSC, Polygon, Arbitrum, Avalanche, Optimism, Fantom, Cronos, PulseChain, Sui, TON, Tron, Hyperliquid EVM, Monad, Sonic, Berachain, Sei, Aptos and 30+ more networks. Their public API exposes incredible data — but using it well at scale requires:
- Knowing whether a token is on EVM or Solana (different endpoints)
- Batching to fit within the 300 requests/minute soft limit
- Retrying on HTTP 429 with exponential backoff
- Filtering noise (low-liquidity, dead pools, wrong DEX)
- Flattening deeply nested JSON to spreadsheet-ready rows
- Streaming output to disk/cloud storage before the run ends
This scraper does all of that for you. Feed it a list of token addresses — get back a flat, filtered, sorted dataset of every live pair, ready for Excel, your database, or your trading bot's ingest pipeline.
✨ Key features
| Feature | What it gives you |
|---|---|
| 🌍 Multi-chain auto-discovery | One token address returns pairs across ALL 30+ chains — no need to know in advance which chain a token lives on |
| 📦 Batched mode (30 addresses/request) | When you specify chainId, the scraper switches to the batch endpoint — 30× fewer API calls for large lists |
| 🎯 Rich filtering | Min liquidity, min 24h volume, chain whitelist, DEX whitelist, max pairs per token |
| 📊 Smart sorting | Per-token pairs sorted by USD liquidity descending — top pair = most liquid pair |
| ⚡ Concurrent + rate-limit safe | Built-in 300 req/min throttling, exponential backoff on HTTP 429 |
| 🗃️ Flat ready-to-use rows | 40+ columns, no nested JSON to wrangle |
| 💾 JSON, CSV, Excel exports | Direct Apify Dataset → any format |
| 🔓 Public API only | No auth, no proxy, no scraping, no Cloudflare bypass needed |
🎯 Built for these use cases
1. Algorithmic trading & arbitrage bots
Resolve hundreds of watchlist tokens into actionable price + liquidity across every DEX. Detect cross-DEX or cross-chain arbitrage opportunities. Backtest strategies against full DEX universe.
2. Portfolio dashboards & wallet apps
Turn raw wallet holdings (token contract addresses) into a live portfolio view with prices, USD values, 24-hour change and aggregated liquidity across all pools.
3. On-chain analytics & research
Multi-chain market-share analysis per token. Which DEX dominates trading for a given token? How does liquidity distribute across chains? Track migrations.
4. Tax accounting & compliance reporting
Snapshot pair prices at specific timestamps for cost-basis tracking. Run nightly to build historical price series.
5. Token research & due diligence
For each project under evaluation, pull every DEX listing. Discover hidden listings on smaller DEXes. Verify liquidity claims. See real volume vs. claimed volume.
6. Indexer & data product pipelines
Power your own crypto data API, dashboard or screener with DexScreener as a reliable upstream source. Schedule the scraper to keep your DB fresh.
7. Newsletter & content creation
Daily/weekly snapshots of trending portfolios. "Here's what 50 memecoin tokens did this week" — exported, ready for the data visualization step.
8. NFT & GameFi token tracking
Sub-niches (gaming, AI, RWA, DePIN) often have their tokens on smaller DEXes. Multi-chain auto-discovery surfaces all of them.
📥 Inputs
| Field | Type | Required | Description |
|---|---|---|---|
tokenAddresses | string[] | ✅ Yes | Token contract addresses. EVM (0x...) or Solana (base58). Mix chains freely — auto-discovery handles all of them. |
chainId | string | No | Optional. If you set this AND all addresses are on the same chain, the batched endpoint (30 addrs/call) is used — much faster. Examples: solana, ethereum, bsc, polygon, base, arbitrum, avalanche, fantom, optimism, pulsechain, sui, ton, tron, cronos, hyperevm, monad, sonic, berachain. |
minLiquidityUsd | int | No | Skip pairs below this USD liquidity threshold. Use to filter dead/abandoned pools. Default 0. |
minVolume24hUsd | int | No | Skip pairs below this 24-hour USD volume. Use to focus on actively-traded pairs. Default 0. |
onlyDexes | string[] | No | Whitelist DEX IDs: uniswap, pancakeswap, raydium, pumpswap, meteora, orca, aerodrome, quickswap, sushiswap, curve, etc. |
onlyChains | string[] | No | Whitelist chain IDs. Useful in multi-chain auto mode when you only want certain chains. |
maxPairsPerToken | int | No | Cap pairs per token — top N kept by liquidity desc. 1 = most-liquid pair only. 0 = no cap. |
maxConcurrency | int | No | Parallel requests, 1–30. Default 8. |
Example inputs
Multi-chain auto-discovery (no chainId):
{"tokenAddresses": ["0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2","So11111111111111111111111111111111111111112","0x6982508145454Ce325dDbE47a25d4ec3d2311933"],"minLiquidityUsd": 10000}
Batched mode (same chain, faster):
{"chainId": "solana","tokenAddresses": ["8pMBqLivfaMgjtzmGWTDxnkKbzAEuU5LhfQvhKMKpump","9bvVs7V3dWCMYgd43NojZZKeKNKZ68G9KfaH7xZ8pump","jvKtLFLnNGPM7edS9KEpYqPxuY8HPGTZohLFM4Spump"]}
Most-liquid-pair-only (1 row per token):
{"tokenAddresses": ["0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"],"maxPairsPerToken": 1}
Filter to high-volume Uniswap V3 on Ethereum + Base only:
{"tokenAddresses": ["0x6982508145454Ce325dDbE47a25d4ec3d2311933"],"onlyChains": ["ethereum", "base"],"onlyDexes": ["uniswap"],"minVolume24hUsd": 100000}
📤 Output (per pair)
{"chainId": "base","dexId": "aerodrome","pairAddress": "0x1131DB5977242a03eBeaD1aCD18F80A9A29e5922","url": "https://dexscreener.com/base/0x1131db59...","baseTokenAddress": "0x311935Cd80B76769bF2ecC9D8Ab7635b2139cf82","baseTokenName": "Solana","baseTokenSymbol": "SOL","quoteTokenAddress": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","quoteTokenName": "USD Coin","quoteTokenSymbol": "USDC","priceUsd": 89.20,"priceNative": 89.2098,"liquidityUsd": 445015.59,"liquidityBase": 3977.85,"liquidityQuote": 90152,"fdv": 7998591,"marketCap": 7998591,"volumeH24": 4990198.97,"volumeH6": 1132367.10,"volumeH1": 133951.24,"volumeM5": 2347.84,"priceChangeH24": -3.81,"priceChangeH6": 0.15,"priceChangeH1": -0.23,"priceChangeM5": -0.02,"txnsH24Buys": 3327,"txnsH24Sells": 3529,"txnsH6Buys": 800,"txnsH6Sells": 823,"txnsH1Buys": 74,"txnsH1Sells": 89,"txnsM5Buys": 0,"txnsM5Sells": 2,"pairCreatedAt": "2024-04-12T08:23:11.000Z","imageUrl": "https://cdn.dexscreener.com/...","websites": [{"label": "Website", "url": "https://solana.com/"}],"socials": [{"type": "twitter", "url": "https://x.com/solana"}],"labels": ["v3"],"inputTokenAddress": "0x311935Cd80B76769bF2ecC9D8Ab7635b2139cf82","scrapedAt": "2026-05-16T08:42:00.000Z"}
Full field reference (40+ fields)
| Field | Type | Meaning |
|---|---|---|
chainId | string | Chain identifier (solana, ethereum, base, bsc, etc.) |
dexId | string | DEX identifier (uniswap, raydium, pancakeswap, etc.) |
pairAddress | string | On-chain pool / LP contract address |
url | string | DexScreener pair page URL |
baseToken{Address,Name,Symbol} | string | Base token identity |
quoteToken{Address,Name,Symbol} | string | Quote token identity |
priceUsd | number | Current price in USD |
priceNative | number | Current price denominated in quote token |
liquidityUsd | number | Pool depth in USD |
liquidityBase, liquidityQuote | number | Pool depth in native token amounts |
fdv | number | Fully diluted valuation (price × total supply) |
marketCap | number | Circulating supply market cap |
volumeH24/H6/H1/M5 | number | Trading volume in USD by window |
priceChangeH24/H6/H1/M5 | number | Percent change in window |
txnsH24Buys/Sells etc. | number | Buy and sell tx counts by window |
pairCreatedAt | string | ISO 8601 timestamp of pool creation |
imageUrl | string | Token logo URL |
websites | array | Official websites (name + URL) |
socials | array | Twitter, Telegram, Discord, etc. |
labels | array | Pool labels like v3, stable, concentrated |
inputTokenAddress | string | The address from your input that produced this row |
scrapedAt | string | ISO 8601 timestamp |
⚙️ How it works
- Reads input — your list of token addresses (plus optional chain hint and filters)
- Picks endpoint strategy:
chainIdprovided + ≥2 addresses → batchedtokens/v1/{chain}/{addrs}(30 per call)- Otherwise → per-token
latest/dex/tokens/{address}(multi-chain auto)
- Fires concurrent requests with the rate-limit budget you allow
- Handles HTTP 429 with exponential backoff (1.5s → 3s → 6s → 12s → 24s)
- Filters by chain, DEX, liquidity, volume
- Sorts per-token pairs by liquidity desc; optionally caps at
maxPairsPerToken - Streams flat rows directly into the Apify Dataset
The scraper uses ONLY DexScreener's officially-supported public REST API (api.dexscreener.com). No HTML scraping, no headless browser, no proxy, no anti-bot bypass. Endpoints are documented at docs.dexscreener.com.
⚡ Performance
| Workload | Time | API calls |
|---|---|---|
| 10 addresses, multi-chain auto | ~3 seconds | 10 |
| 100 addresses, multi-chain auto, concurrency 8 | ~20 seconds | 100 |
| 100 addresses, batched (same chain) | ~5 seconds | 4 |
| 1000 addresses, batched | ~45 seconds | 34 |
| 10000 addresses, batched | ~8 minutes | 334 |
DexScreener's tokens and pairs endpoints allow ~300 requests/minute. The scraper stays well within that with concurrency 8.
💰 Cost model
This actor uses Pay-Per-Result pricing — you pay only for the actual pair rows saved (after filters). Pairs that don't pass your liquidity/volume/chain/DEX filters are not billed.
Typical costs (rounded, depending on Apify rates):
- 100 token addresses (multi-chain) → ~500–2000 pair rows → small
- 1000 addresses with
maxPairsPerToken=3→ ~3000 rows - Watchlist refresh (200 tokens, 1 pair each) → 200 rows
🔄 Schedule for continuous monitoring
This scraper plays nicely with Apify's scheduler. Common patterns:
- Every 5 minutes for trading-bot watchlists (latest prices, short-window volume)
- Every hour for portfolio refresh
- Daily for analytics / accounting snapshots
- Weekly for full universe sweep
Use Apify Webhooks to push fresh data into your database / Slack / Discord / your own API.
🛠️ FAQ
Do I need a DexScreener API key? No. The public REST API requires no authentication.
Which chains are supported? Every chain DexScreener indexes — currently 30+: Solana, Ethereum, Base, BSC, Polygon, Arbitrum, Avalanche, Optimism, Fantom, Cronos, PulseChain, Sui, TON, Tron, Sei, Aptos, Hyperliquid EVM, Monad, Sonic, Berachain, Linea, Mantle, Scroll, zkSync, Blast, World, Mode, Manta and others.
Will this break when DexScreener adds a new chain? No. The multi-chain auto-discovery mode dynamically receives whatever chains DexScreener returns. New chains light up automatically.
How fresh is the data? Real-time. DexScreener updates pair stats every few seconds from on-chain events.
Can I get historical OHLCV / chart bars? Not from this scraper — this returns current snapshots. To build a time series, schedule this scraper at the desired interval and aggregate.
What if a token has no live pairs? The token returns 0 rows. The actor doesn't error — it just logs a 0-pair result.
Does it handle tokens that exist on multiple chains? Yes. The multi-chain auto-discovery returns pairs from every chain that token is bridged to.
How is this different from the search scraper?
- Search scraper = free-text query (symbol, name, partial address) → up to 30 matching pairs
- Token-pairs scraper = exact contract address(es) → ALL pairs for that token
If you know exact addresses, use this one (more comprehensive, more reliable).
How is this different from the pair-watchlist scraper?
- Pair-watchlist = pair (LP/pool) address → 1 specific listing
- Token-pairs = token address → ALL pair listings for that token
Use pair-watchlist if you care about a specific DEX listing. Use this if you want every listing.
Can I export to CSV or Excel? Yes. Apify Dataset exports support JSON, CSV, Excel, HTML and JSONL out of the box.
Can I integrate via webhook / API? Yes. Apify provides REST API access to runs and datasets. Trigger from Zapier, Make.com, n8n, custom code, or any HTTP client.
Does this respect DexScreener's rate limits? Yes — built-in concurrency cap (default 8) and exponential backoff on HTTP 429 keep you safely under the 300 req/min soft limit.
What about CoinGecko or CoinMarketCap data?
For deep token metadata (categories, descriptions, official URLs from CG/CMC), see our dexscreener-pair-security-scraper which exposes that data alongside security audit.
📚 Related scrapers in the DexScreener suite
| Scraper | Purpose |
|---|---|
dexscreener-token-pairs-scraper | You are here. Bulk token address → all pair listings (multi-chain). |
dexscreener-search-pairs-scraper | Free-text query (symbol/name) → matching pairs. |
dexscreener-pair-watchlist-scraper | Pair (LP) address → current data for that specific listing. |
dexscreener-boosted-tokens-scraper | Currently boosted/promoted tokens with marketing spend + pair data. |
dexscreener-pair-security-scraper | Deep security audit, holders, locks, CG/CMC metadata. |
🔑 Keyword cloud
Core: dexscreener api, dexscreener scraper, dex pair scraper, multi-chain token data, dex aggregator data, token to pairs lookup, bulk crypto pair lookup, defi data export.
Per chain: solana dex data, solana pair scraper, raydium pair scraper, pumpswap scraper, meteora scraper, orca scraper, ethereum dex pairs, uniswap pair data, sushiswap data, base chain pairs, aerodrome scraper, bsc dex pairs, pancakeswap scraper, polygon dex data, quickswap scraper, arbitrum dex data, avalanche dex pairs, optimism dex data.
Per use case: crypto algorithmic trading data, dex arbitrage data, defi portfolio tracker, crypto wallet enrichment, on-chain analytics data, defi market making data, crypto research data, token discovery api, dex indexer data, defi tax reporting, crypto accounting export.
Per output type: dex price feed, real-time crypto prices, dex liquidity export, dex volume tracker, fdv tracker, market cap api, dex transaction counts, dex price change tracker.
Per audience: crypto data for traders, defi data for analysts, dex data for developers, blockchain data api, web3 market data, crypto data for indexers.