DexScreener Scraper — DEX Pairs, Prices, Boosts & Trending avatar

DexScreener Scraper — DEX Pairs, Prices, Boosts & Trending

Pricing

from $0.003 / result record

Go to Apify Store
DexScreener Scraper — DEX Pairs, Prices, Boosts & Trending

DexScreener Scraper — DEX Pairs, Prices, Boosts & Trending

Scrape DexScreener DEX token & pair market data across every chain — prices, liquidity, volume, transactions, FDV, market cap, boosts, token profiles and new pairs — with derived trading-signal analytics on every record. 6 modes, no login, no API key.

Pricing

from $0.003 / result record

Rating

0.0

(0)

Developer

Yuliia Kulakova

Yuliia Kulakova

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Categories

Share

DexScreener Scraper — token pairs, prices, liquidity, volume, boosts & trading analytics (no key)

Pull DEX token & pair market data across every chain DexScreener covers — prices, liquidity, volume, transactions, price change, FDV, market cap, boosts and freshly-profiled tokens — and get derived trading signals computed on top of every record. Built for crypto traders, analysts, and model/bot builders who need clean, structured DEX data without wiring up an API key, a login, or a headless browser.

Every mode runs on DexScreener's official, free, keyless public API (api.dexscreener.com). No API key. No cookies. No wallet.

DexScreener Scraper

Enjoying this Actor? If it's useful, please leave a ⭐️ rating and a short review — it genuinely helps. Something not working right? Open an issue on the Actor's Issues tab — I actively maintain this Actor and respond fast to fix problems and help you get things working.


Key features

6 scraping modes

ModeWhat it returns
searchFree-text search by token symbol / name / contract / pair address. Multiple queries, merged & de-duplicated.
pair-detailsExact pair lookup by chainId + pairAddress (or bare pairAddresses + chain). Optional paid-order history.
token-pairsEvery liquidity pool/pair a token contract trades in (deepest-liquidity pool flagged).
trending-boostsBoosted / promoted (paid-trending) tokens — top (by total boost) or latest, enriched with live pair data.
latest-token-profilesFreshly profiled tokens (description / icon / website / socials), enriched with live pair data.
new-pairs-by-chainFreshest profiled/boosted tokens on the chosen chain(s), newest first, with a maxPairAgeHours cutoff. (DexScreener exposes no public "all-new-pairs" endpoint, so newly profiled/boosted tokens are used as the freshness proxy.)

Full market fields on every recordpriceUsd, priceNative, liquidity (usd/base/quote), volume (m5/h1/h6/h24), txns (buys/sells per timeframe), fdv, marketCap, priceChange (m5/h1/h6/h24), token metadata, image/website/socials.

Derived trading analytics competitors don't ship — every record includes an analytics block computed from the market data:

  • buyPressure — buys / (buys + sells), 0..1, per timeframe
  • buySellRatio — buys / sells, per timeframe
  • volumeToLiquidity — turnover (volume ÷ liquidity), a churn/risk signal
  • volumePerTxn — average trade size (USD)
  • priceChangeMomentum — h1 − h6 (short vs mid trend)
  • priceChangeAcceleration — (h1 − h6) − (h6 − h24)
  • volumeTrend — recent pace vs realized 24h volume
  • liquidityToMarketCap, fdvToMarketCap — depth and dilution ratios
  • trendingScore — a transparent composite heat score from public fields (see FAQ)

Plus paid-order/boost history (includeOrders), token profiles, and full client-side filters & ranking (rankBy / order, min/max liquidity / volume / market cap / FDV / price-change / txns / pair age, dexIds, labels, quoteSymbols, requireSocials, requireBoosted). Nested or flat (spreadsheet/CSV-friendly) output.


Input

Set mode and the fields that mode needs. Convenience: query merges into queries, chain merges into chains. All numeric filters default to absent (no filtering).

FieldTypeDefaultDescription
modeenumsearchsearch / pair-details / token-pairs / trending-boosts / latest-token-profiles / new-pairs-by-chain
querystringSOLsearch: single term (symbol / name / address). Merged into queries.
queriesarray[]search: multiple terms; results merged & de-duplicated.
chainstringSingle chain id (token-pairs / new-pairs / pair-details). Merged into chains.
chainsarray[]One or more chain ids (token-pairs source chains, new-pairs chains, search result filter).
tokenAddressesarray[]token-pairs: token contract/mint address(es), ≤30 per batch.
pairsarray[]pair-details: "chainId/pairAddress" entries.
pairAddressesarray[]pair-details: bare pair addresses (paired with chain).
boostTypeenumtoptrending-boosts: top (by total boost) or latest.
rankByenumvolumeH24Sort key — see Ranking below.
orderenumdescdesc (highest first) or asc.
timeframeenumh24Timeframe for the volume/txns/price-change filters: m5 / h1 / h6 / h24.
minLiquidityUsd / maxLiquidityUsdnumberLiquidity (USD) bounds.
minVolumeUsd / maxVolumeUsdnumberVolume (USD, selected timeframe) bounds.
minMarketCap / maxMarketCapnumberMarket cap (USD) bounds.
minFdv / maxFdvnumberFDV (USD) bounds.
minPriceChange / maxPriceChangenumberPrice-change % (timeframe) bounds (use negatives for drops).
minTxnsintegerMin total txns (buys + sells) in timeframe.
minBuys / minSellsintegerMin buys / sells in timeframe.
minPairAgeHours / maxPairAgeHoursnumberPair age (hours) bounds.
dexIdsarray[]Keep only these DEXes (e.g. raydium, orca, uniswap, pancakeswap, meteora).
labelsarray[]Keep only these pair labels (e.g. v2, v3, v4, CLMM, DLMM).
quoteSymbolsarray[]Keep only pairs quoted in these tokens (e.g. SOL, USDC, WETH).
requireSocialsbooleanfalseKeep only tokens with website/socials/info.
requireBoostedbooleanfalseKeep only currently boosted tokens.
includeOrdersbooleanfalseAttach paid-order/boost history (/orders/v1).
includeAnalyticsbooleantrueAttach the derived analytics block.
flatbooleanfalseEmit flat one-row-per-pair records (analytics hoisted to top level).
maxItemsinteger100Max output records for the run.
maxItemsPerQueryinteger0Cap results per query / chain / source (0 = no cap).
proxyConfigurationobject{ useApifyProxy: false }Optional. Public API works direct; proxy available for scale/geo.

Ranking (rankBy):

volumeH24, volumeH6, volumeH1, volumeM5, liquidityUsd, marketCap, fdv, priceUsd, txnsH24, txnsH6, txnsH1, txnsM5, buysH24, sellsH24, priceChangeH24, priceChangeH6, priceChangeH1, priceChangeM5, pairAgeHours, boostAmount, buyPressureH24, volumeToLiquidity, trendingScore
. Ranking is applied client-side over the fetched records, then maxItems is applied.

Example inputs

Search across chains for a token, sorted by 24h volume

{
"mode": "search",
"queries": ["SOL", "PEPE"],
"rankBy": "volumeH24",
"minLiquidityUsd": 25000,
"maxItems": 50
}

All pools of a token contract

{
"mode": "token-pairs",
"chain": "solana",
"tokenAddresses": ["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"],
"rankBy": "liquidityUsd"
}

Exact pair details with paid-order history

{
"mode": "pair-details",
"pairs": ["solana/5miPLrTZrMWqN5ubb22GPCjjyZgbQMB5jei7zNwDweZ8"],
"includeOrders": true
}

Boosted (paid-trending) tokens, enriched with live pair data

{
"mode": "trending-boosts",
"boostType": "top",
"minLiquidityUsd": 10000,
"maxItems": 50
}

Output

One dataset record per pair (or per token, for freshly profiled/boosted tokens with no live pool yet). Every mode emits the same core pair fields + analytics. Set flat: true for a denormalized one-row-per-pair shape.

Core pair record — real, trimmed

{
"recordType": "pair",
"mode": "search",
"chainId": "solana",
"dexId": "pumpswap",
"dexLabels": [],
"pairAddress": "2uF4Xh61rDwxnG9woyxsVQP7zuA6kLFpb3NvnRQeoiSd",
"url": "https://dexscreener.com/solana/2uF4Xh61rDwxnG9woyxsVQP7zuA6kLFpb3NvnRQeoiSd",
"baseToken": { "address": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn", "name": "Pump", "symbol": "PUMP" },
"quoteToken": { "address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "name": "USD Coin", "symbol": "USDC" },
"priceUsd": 0.003904,
"priceNative": 0.003904,
"priceChange": { "m5": 0.75, "h1": 0.72, "h6": -2.02, "h24": -7.79 },
"volume": { "m5": 39532.33, "h1": 418917.44, "h6": 1082318.21, "h24": 2811206.31 },
"txns": {
"m5": { "buys": 82, "sells": 3 },
"h1": { "buys": 550, "sells": 118 },
"h6": { "buys": 1971, "sells": 645 },
"h24": { "buys": 7172, "sells": 1901 }
},
"liquidity": { "usd": 21177427.97, "base": 2715067096, "quote": 10575503 },
"fdv": 3262447185,
"marketCap": 3262447185,
"pairCreatedAt": "2025-07-14T16:55:49.000Z",
"pairAgeHours": 10039.836,
"info": {
"imageUrl": null, "header": null, "openGraph": null,
"websites": [ { "label": null, "url": "https://pump.fun" } ],
"socials": [ { "type": "twitter", "url": "https://x.com/pumpfun" } ]
},
"boosts": null,
"profile": null,
"orders": null,
"analytics": {
"totalTxns": { "m5": 85, "h1": 668, "h6": 2616, "h24": 9073 },
"buySellRatio": { "m5": 27.3333, "h1": 4.661, "h6": 3.0558, "h24": 3.7728 },
"buyPressure": { "m5": 0.9647, "h1": 0.8234, "h6": 0.7534, "h24": 0.7905 },
"volumePerTxn": { "m5": 465.0862, "h1": 627.1219, "h6": 413.7302, "h24": 309.8431 },
"volumeToLiquidity": { "m5": 0.0019, "h1": 0.0198, "h6": 0.0511, "h24": 0.1327 },
"liquidityToMarketCap": 0.006491,
"fdvToMarketCap": 1,
"priceChangeMomentum": 2.74,
"priceChangeAcceleration": -3.03,
"volumeTrend": 3.5764,
"trendingScore": 2.7754,
"boostAmount": null
},
"scrapedAt": "2026-09-06T00:45:59.283Z"
}

The boosts, profile and orders blocks populate when relevant (boosted tokens, profile modes, includeOrders). Freshly profiled/boosted tokens with no live pool yet come back as a lighter recordType: "token" record (address + profile/boost + a note, market fields null).

Field reference

  • Top level: recordType (pair | token), mode, chainId, dexId, dexLabels[], pairAddress, url, baseToken{address,name,symbol}, quoteToken{…}, priceUsd, priceNative, priceChange{m5,h1,h6,h24}, volume{m5,h1,h6,h24}, txns{m5,h1,h6,h24:{buys,sells}}, liquidity{usd,base,quote}, fdv, marketCap, pairCreatedAt, pairAgeHours, info{imageUrl,header,openGraph,websites[],socials[]}, boosts{active,total}, profile{description,icon,header,links[],cto}, orders[{type,status,paymentTimestamp}], analytics{…}, scrapedAt.
  • analytics: totalTxns, buySellRatio, buyPressure, volumePerTxn, volumeToLiquidity (each per timeframe), liquidityToMarketCap, fdvToMarketCap, priceChangeMomentum, priceChangeAcceleration, volumeTrend, trendingScore, boostAmount.
  • token-pairs mode only: the deepest-liquidity pool per token contract is flagged with isDeepestPool: true.

Nulls are preserved (never coerced to 0) so absent data stays honest.


Pricing

Pay-per-result. You are charged per record (a pair or token row) pushed to the dataset — no charge for empty runs. The exact per-record price is shown on the Actor's Store page. Because filtering and ranking happen before records are emitted, use maxItems, the min/max filters and chains to pay only for the data you want. There is no separate cost for the DexScreener data itself — the actor uses free, keyless endpoints (you still pay your own Apify platform usage).


Use cases

  • Trending / new-token discoverytrending-boosts (paid-trending tokens), latest-token-profiles and new-pairs-by-chain to surface what's being promoted and what just launched.
  • Liquidity & volume scanning — filter by minLiquidityUsd, minVolumeUsd, volumeToLiquidity, dexIds and quoteSymbols to find tradable, non-churny pools.
  • Signal feeds for bots & models — schedule runs and consume buyPressure, buySellRatio, priceChangeMomentum / priceChangeAcceleration, volumeTrend and trendingScore as features.
  • Token due diligence — pull pair-details / token-pairs for a contract: liquidity depth, FDV/MC dilution (fdvToMarketCap), socials, and paid-order/boost history.

Honest limitations

We would rather under-promise:

  • Built on the official public API. Every mode uses DexScreener's official, documented, free public API (api.dexscreener.com, published rate limits, no key). The actor respects those rate limits (300 req/min for search/pairs/tokens, 60 req/min for boosts/profiles/orders), so very large multi-chain pulls take proportionally longer.
  • search returns up to ~30 pairs per query. That is DexScreener's own search-endpoint cap. Use several queries, or token-pairs for a specific contract, to go wider.
  • new-pairs-by-chain is a freshness proxy. DexScreener has no public "all-new-pairs" endpoint, so this mode surfaces newly profiled/boosted tokens on the chain (newest first), which is the closest keyless signal for fresh launches — not an exhaustive list of every new pool. Narrow it with maxPairAgeHours.
  • Token-only records. A freshly profiled/boosted token with no live tradable pool yet returns a lighter recordType: "token" record (market fields null) rather than being dropped.
  • Not affiliated with DexScreener. On-chain market data (prices, liquidity, volume) is factual. This actor is for informational/analytical use; follow DexScreener's ToS and your local law. Crypto is volatile — nothing here is financial advice.

FAQ

Do I need an API key, login, or wallet? No. Every mode works keyless and login-free. proxyConfiguration is optional (the public API answers directly); enable a proxy only for scale or geo needs.

What chains are supported? Any chain id DexScreener returns is accepted (free-text pass-through). Common ones include solana, ethereum, base, bsc, arbitrum, polygon, avalanche, optimism, sui, ton, tron, hyperevm, linea, blast, sei, unichain, berachain, and more.

What is analytics.trendingScore? A transparent composite heat score computed from public fields (roughly log10(1+volume24) × turnover × buy-pressure × recency). It is a convenience ranking heuristic to sort by momentum — clearly our own derived metric, not any exchange's internal score. Turn the whole block off with includeAnalytics: false.

Nested vs flat output? Default output is nested (analytics grouped under analytics). Set flat: true for a denormalized one-row-per-pair shape (analytics and key numerics hoisted to the top level) — ideal for CSV/Excel.

How do I control cost / result count? Use maxItems (whole-run cap), maxItemsPerQuery (per query/chain/source cap), and the min/max filters so only the records you want are emitted and charged.