DexScreener Pair Watchlist Scraper — Real-Time DEX Data avatar

DexScreener Pair Watchlist Scraper — Real-Time DEX Data

Pricing

from $2.50 / 1,000 results

Go to Apify Store
DexScreener Pair Watchlist Scraper — Real-Time DEX Data

DexScreener Pair Watchlist Scraper — Real-Time DEX Data

Real-time DEX pair data by pair (LP/pool) address. Bulk-resolve hundreds of pairs across all chains. Price USD, liquidity, FDV, market cap, 24h volume, transactions, price change. For bots, watchlists, arbitrage. Batched 30 addresses/request. No API key.

Pricing

from $2.50 / 1,000 results

Rating

0.0

(0)

Developer

Logiover

Logiover

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

2 hours ago

Last modified

Share

DexScreener Pair Watchlist Scraper — Real-Time Bulk DEX Pair Data Export

DexScreener Pair Watchlist Scraper — Real-Time DEX Data

Real-time DEX pair data export from a watchlist of pair (LP / pool) addresses, across every chain DexScreener indexes. Bulk-resolve hundreds — or thousands — of specific DEX listings in a single run. Returns price USD, liquidity USD, FDV, market cap, full volume + transaction breakdown (24h / 6h / 1h / 5m), price changes, base/quote token identity, pool creation date and metadata.

Built for algorithmic trading bots, arbitrage detection systems, portfolio dashboards, alert/notification services, risk monitoring tools and DeFi audit pipelines that monitor specific LP/pool addresses rather than entire token universes.

🟢 No API key. No proxy. No login. Pure public REST API. Batched up to 30 pair addresses per request.


🚀 Why this scraper

When you're running a trading bot, building a portfolio dashboard, or detecting arbitrage opportunities, you typically don't care about ALL pairs for a token — you care about specific listings (this Uniswap V3 pool, that Raydium concentrated-liquidity pool, this Aerodrome stable pair).

That's because:

  • A single token can have 5–30 pool listings across DEXes and chains
  • You probably only have liquidity / open positions in 1–3 of them
  • You want price + depth for THOSE specific pools, not noise from the others

This scraper takes pool addresses directly and returns one row per pool — exactly what trading bots, dashboards and alerters consume.

It also handles batching (30 pairs/request), rate-limit-safe concurrency, HTTP 429 backoff, and flat output — so your code stays simple.


✨ Key features

FeatureWhat it gives you
📦 Batched mode (30 addresses/request)Hundreds of pairs in seconds, not minutes
🌐 Multi-chain in one runMix EVM and Solana addresses freely; each chain batched independently
🎯 Liquidity / volume filtersDrop dead pools from output
Concurrent + rate-limit safe300 req/min budget with exponential backoff
📊 Full window breakdown24h, 6h, 1h, 5m volume + transactions + price change
🗃️ Flat ready-to-use rows40+ columns, no nested JSON
💾 JSON, CSV, Excel exportsDirect from Apify Dataset
🔓 Public API onlyNo auth, no proxy, no scraping

🎯 Built for these use cases

1. Trading bot watchlists

You're running an algo bot with positions in 50–500 specific pools. Refresh prices, liquidity, volume and transaction counts every N minutes. This scraper batches your watchlist into 1–20 requests instead of 500.

2. Cross-DEX arbitrage detection

Same token, different pools — compare prices. Pull PEPE/WETH on Uniswap V2, V3, Sushiswap and Curve in one batch. Detect spread opportunities.

3. Cross-chain arbitrage

Same token bridged to multiple chains. Compare WIF on Solana/Raydium vs Solana/Meteora vs Solana/Orca, or PEPE on Ethereum/Uniswap vs Base/Aerodrome. Pull all in one run.

4. Portfolio dashboards

User has positions in 30 LP tokens — you need to compute their USD value, P&L and 24h change. Resolve all 30 pair addresses in 1 batched request.

5. Alert & notification services

Set up Apify scheduled runs to detect: "liquidity dropped > 30%", "price moved > 10% in 1h", "no transactions for 30 minutes" (potential abandoned pool).

6. Risk monitoring

Track liquidity drains on pools where your protocol holds positions. Early warning system.

7. Compliance & accounting

Snapshot prices at month-end for all your protocol's LP positions. Build a verified pricing audit trail.

8. Smart-contract integration testing

Run a quick scrape before each deploy to verify that the LP pools your contract depends on still have expected liquidity/structure.


📥 Inputs

FieldTypeRequiredDescription
pairsstring[]✅ YesList of chainId:pairAddress entries. Example: ethereum:0x5628F3bb1f352f86Ea173184ffEe2E34b8fc2dc8, solana:T5mZpKou42YF3ssrQyrxFJZDL4zvBKg8u1HxqBfDyoo. Mix chains freely.
useBatchbooleanNoUse batched endpoint (default true). 30 addresses per request, much faster. Disable for single-pair requests (debug only).
minLiquidityUsdintNoSkip pairs below this USD liquidity. Default 0.
minVolume24hUsdintNoSkip pairs below this 24h USD volume. Default 0.
maxConcurrencyintNoParallel requests (1–30). Default 8.

Example inputs

Multi-chain watchlist:

{
"pairs": [
"ethereum:0x5628F3bb1f352f86Ea173184ffEe2E34b8fc2dc8",
"solana:T5mZpKou42YF3ssrQyrxFJZDL4zvBKg8u1HxqBfDyoo",
"base:0x1131DB5977242a03eBeaD1aCD18F80A9A29e5922",
"bsc:0x172fcD41E0913e95784454622d1c3724f546f849"
]
}

Filter to actively-traded pairs only:

{
"pairs": ["solana:T5mZpKou42YF3ssrQyrxFJZDL4zvBKg8u1HxqBfDyoo"],
"minLiquidityUsd": 10000,
"minVolume24hUsd": 5000
}

Large watchlist (500 pairs, all Solana):

{
"pairs": [
"solana:address1...",
"solana:address2...",
"solana:address3..."
]
}

📤 Output (per pair)

{
"chainId": "ethereum",
"dexId": "uniswap",
"pairAddress": "0x5628F3bb1f352f86Ea173184ffEe2E34b8fc2dc8",
"url": "https://dexscreener.com/ethereum/0x5628...",
"baseTokenAddress": "0xcab254f1a32343f11ab41fbde90ecb410cde348a",
"baseTokenName": "Froge",
"baseTokenSymbol": "FROGE",
"quoteTokenAddress": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2",
"quoteTokenName": "Wrapped Ether",
"quoteTokenSymbol": "WETH",
"priceUsd": 0.000456,
"priceNative": 0.0000000812,
"liquidityUsd": 145000,
"liquidityBase": 1500000000,
"liquidityQuote": 25.5,
"fdv": 312000,
"marketCap": 312000,
"volumeH24": 89000,
"volumeH6": 22000,
"volumeH1": 4500,
"volumeM5": 150,
"priceChangeH24": 4.2,
"priceChangeH6": -1.1,
"priceChangeH1": 0.5,
"priceChangeM5": 0.0,
"txnsH24Buys": 142,
"txnsH24Sells": 138,
"txnsH6Buys": 34,
"txnsH6Sells": 38,
"txnsH1Buys": 6,
"txnsH1Sells": 8,
"txnsM5Buys": 0,
"txnsM5Sells": 0,
"pairCreatedAt": "2024-10-31T15:35:59.000Z",
"imageUrl": "https://cdn.dexscreener.com/...",
"websites": [],
"socials": [],
"labels": ["v3"],
"boosts": null,
"scrapedAt": "2026-05-16T08:42:00.000Z"
}

⚙️ How it works

  1. Parses chainId:pairAddress entries and groups them by chain
  2. Batches each chain group into chunks of 30 addresses
  3. Issues concurrent batched requests to api.dexscreener.com/latest/dex/pairs/{chain}/{addrs}
  4. Applies optional filters (liquidity, volume)
  5. Streams flat rows directly into the Apify Dataset

Public API only. Built-in HTTP 429 exponential backoff.


⚡ Performance

WorkloadTimeAPI calls
10 pairs (mixed chains)~1 second3–5
100 pairs~5 seconds4–10
500 pairs~20 seconds20–50
1000 pairs~40 seconds35–70
5000 pairs~3.5 minutes170–340

Batched mode pays off most when many addresses share the same chain. For maximum throughput, group your watchlist by chain in the input.


💰 Cost model

Pay-Per-Result — billed only on the actual pair rows saved. Filtered pairs (below liquidity/volume thresholds) are not billed.

A typical trading bot watchlist of 100 pairs running every 5 minutes = ~28,800 rows/day. Plan accordingly.


🔄 Schedule for continuous monitoring

  • Every 1 minute — high-frequency trading bots
  • Every 5 minutes — most algo bots
  • Every 15 minutes — portfolio dashboards
  • Every hour — alert services
  • Daily — accounting snapshots

Pair with Apify Webhooks or scheduled tasks. Pipe output into your DB, Slack, Discord, custom API.


🆚 Token vs pair — which scraper to use?

You haveUse
Token contract addresses + want all pairs across all chains/DEXesdexscreener-token-pairs-scraper
Pair / LP addresses + want current data for those specific listingsthis scraper
Free-text symbols / namesdexscreener-search-pairs-scraper

If you want to monitor a SPECIFIC pool (e.g. only your protocol's official Uniswap V3 pool, not the V2 or Sushi versions), you need the pair address — that's this scraper. If you want to enumerate ALL pools for a token, use the token-pairs scraper.


🛠️ FAQ

What's a pair address? The on-chain pool / LP contract address for a specific token pair on a specific DEX. Example: 0x5628F3bb1f352f86Ea173184ffEe2E34b8fc2dc8 is the Uniswap V3 FROGE/WETH pool on Ethereum. Solana pairs use base58 addresses like T5mZpKou42YF3ssrQyrxFJZDL4zvBKg8u1HxqBfDyoo.

Where do I find pair addresses?

  • From any DexScreener URL: dexscreener.com/{chain}/{pairAddress}
  • From our dexscreener-token-pairs-scraper (token → all pair addresses)
  • From our dexscreener-search-pairs-scraper (query → matching pair addresses)
  • On-chain (look up token's factory contract for created pools)

How fresh is the data? Real-time. DexScreener indexes on-chain events typically within seconds.

Can I get historical OHLCV / chart bars? Not from this snapshot scraper. To build a time series, schedule this scraper at your desired interval and aggregate downstream.

Why does my run sometimes return fewer rows than I asked for? Pairs that no longer exist (rugged, removed from DexScreener) silently return 0 rows. Check the run log for HTTP 404 for ... warnings.

Does this respect DexScreener's rate limits? Yes — built-in concurrency cap and exponential backoff on HTTP 429 keep the scraper well under the 300 req/min soft limit. Batched mode dramatically reduces the request count too.

Can I mix chains in one run? Yes. Just use the chainId:pairAddress format for each entry. The scraper groups by chain internally and batches each group independently.

What chain IDs are supported? Every chain DexScreener indexes: solana, ethereum, bsc, polygon, base, arbitrum, avalanche, optimism, fantom, cronos, pulsechain, sui, ton, tron, sei, aptos, hyperevm, monad, sonic, berachain, linea, mantle, scroll, zksync, blast, world, mode, manta and more.

Can I export to CSV / Excel? Yes — Apify Dataset supports JSON, CSV, Excel, HTML and JSONL.


ScraperPurpose
dexscreener-token-pairs-scraperToken address → ALL pairs (multi-chain).
dexscreener-search-pairs-scraperFree-text query → matching pairs.
dexscreener-pair-watchlist-scraperYou are here. Pair address → current data.
dexscreener-boosted-tokens-scraperCurrently boosted/promoted tokens + marketing spend.
dexscreener-pair-security-scraperDeep security audit, holders, locks, CG/CMC metadata.

🔑 Keyword cloud

Core: dexscreener pair api, dex pool data, lp address resolver, dex pair tracker, real-time dex prices, dex pool scraper, defi watchlist api, dex monitor, trading bot data, dex listings real-time.

Per DEX: uniswap pair data, uniswap v3 tracker, raydium pair scraper, pumpswap tracker, meteora pool data, orca pair api, aerodrome tracker, pancakeswap pool scraper, sushiswap data, curve pool tracker, quickswap data.

Per chain: solana pool tracker, ethereum lp data, base pool monitor, bsc pair scraper, polygon dex data, arbitrum pair api, avalanche pool data.

Per use case: trading bot api, arbitrage detection data, cross-chain arbitrage, defi portfolio monitor, lp position tracker, alert service api, risk monitoring api, defi compliance reporting, smart contract testing api.

Per audience: dex data for traders, on-chain data for analysts, pool data for developers, defi api for builders, market data for indexers, real-time crypto for dashboards.