Hitting any snags? We’ve got your back - reach out and we’ll help you get this working.

Why Monitor New Pools?

New liquidity pools are where the action happens in DeFi. They signal new token launches, liquidity migrations, and fresh trading opportunities. Being first to spot them can be a serious advantage.

What you can catch early:

  • New token launches before they hit major trackers
  • Arbitrage opportunities between pools
  • Liquidity migrations to better DEXes
  • Emerging projects before they explode

TL;DR: Jump to Step 2 if you want to start pulling new pools immediately.


Step 1: Pick Your Networks

First, see what blockchains you want to monitor using the Networks API:

curl "https://api.dexpaprika.com/networks" | jq '.[] | {id: .id, name: .display_name}'

Step 2: Get Newest Pools

Here’s the money shot - getting pools sorted by creation date using the Network Pools API:

curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=10" | jq

What These Parameters Do:

ParameterEffectPro Tip
orderBy=created_atSort by when pool was madeOnly way to find truly new pools
sort=descNewest firstUse asc for historical analysis
limit=10How many pools backMax is 100, but 10-20 is usually enough
page=0PaginationIncrease for deeper history

What You Get:

{
  "pools": [
    {
      "id": "0x462229e7fc9e6cab0ebbd643cc6dfef2a5261ee9",
      "dex_name": "Uniswap V2",
      "created_at": "2025-06-09T09:28:35Z",
      "volume_usd": 767.17,
      "transactions": 5,
      "tokens": [
        {
          "symbol": "🧸TEDDYS",
          "name": "🧸TeddySwap",
          "fdv": 18769.56
        },
        {
          "symbol": "WETH", 
          "fdv": 6617036250.33
        }
      ]
    }
  ]
}

Red flags to watch for:

  • Crazy high FDV on new tokens (possible honeypot)
  • Zero transactions after hours (might be a test pool)

Focus on Specific DEXes

Want to monitor just Uniswap or Raydium? First get the DEX list using the Network DEXes API:

curl "https://api.dexpaprika.com/networks/ethereum/dexes" | jq '.[] | {id: .id, name: .name}'

Then filter new pools by DEX using the DEX Pools API:

curl "https://api.dexpaprika.com/networks/ethereum/dexes/uniswap_v3/pools?orderBy=created_at&sort=desc&limit=10" | jq

Multi-Chain Monitoring

Real pros monitor multiple chains simultaneously. Here’s how:

Ethereum

curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=5" | jq '.pools[] | {chain: "ethereum", pool: .id, created: .created_at, volume: .volume_usd, tokens: [.tokens[].symbol]}'

Solana

curl "https://api.dexpaprika.com/networks/solana/pools?orderBy=created_at&sort=desc&limit=5" | jq '.pools[] | {chain: "solana", pool: .id, created: .created_at, volume: .volume_usd, tokens: [.tokens[].symbol]}'

Base

curl "https://api.dexpaprika.com/networks/base/pools?orderBy=created_at&sort=desc&limit=5" | jq '.pools[] | {chain: "base", pool: .id, created: .created_at, volume: .volume_usd, tokens: [.tokens[].symbol]}'

Pro tip: Use different limits based on chain activity. Solana might need limit=20 because of memecoin amounts, while Ethereum limit=5 catches the important stuff.


Smart Filtering Strategies

Only High-Activity Pools

Skip the dead pools - focus on ones with real trading:

curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=50" | jq '.pools[] | select(.volume_usd > 1000 and .transactions > 10) | {id: .id, created: .created_at, volume: .volume_usd, txns: .transactions}'

Last 24 Hours Only

Filter by timestamp to get super fresh pools:

# Get pools from last 24 hours (adjust date as needed)
curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=100" | jq --arg yesterday "$(date -d '1 day ago' -Iseconds)" '.pools[] | select(.created_at > $yesterday) | {id: .id, age: .created_at, volume: .volume_usd}'

New Token Launches

Look for pools where the tokens themselves are brand new:

curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=20" | jq '.pools[] | select(.tokens[] | .added_at > "2025-01-25T00:00:00Z") | {pool: .id, pool_age: .created_at, new_tokens: [.tokens[] | select(.added_at > "2025-01-25T00:00:00Z") | .symbol]}'

Production Monitoring Setup

Simple Monitoring Script

Here’s a bash script that checks for new pools every 5 minutes:

#!/bin/bash

# Monitor new pools across multiple chains
CHAINS=("ethereum" "solana" "base")
MIN_VOLUME=5000

while true; do
    echo "🔍 Checking for new pools at $(date)"
    
    for chain in "${CHAINS[@]}"; do
        echo "--- $chain ---"
        
        # Get new pools with decent volume
        curl -s "https://api.dexpaprika.com/networks/$chain/pools?orderBy=created_at&sort=desc&limit=10" | \
        jq --argjson min_vol $MIN_VOLUME '.pools[] | select(.volume_usd > $min_vol) | {
            pool_id: .id,
            chain: "'$chain'",
            created: .created_at,
            volume: .volume_usd,
            tokens: [.tokens[].symbol]
        }'
    done
    
    echo "⏰ Sleeping for 5 minutes..."
    sleep 300
done

Alert on High-Volume New Pools

Catch the big moves automatically:

# Check for new pools with serious volume
NEW_POOLS=$(curl -s "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=20" | jq '.pools[] | select(.volume_usd > 50000)')

if [ -n "$NEW_POOLS" ]; then
    echo "🚨 HIGH VOLUME NEW POOL DETECTED!"
    echo "$NEW_POOLS"
    # Add your notification here (Discord webhook, Slack, email, etc.)
    # curl -X POST "YOUR_DISCORD_WEBHOOK" -d "{\"content\": \"New high-volume pool: $NEW_POOLS\"}"
fi

Troubleshooting Common Issues

”No New Pools Found”

Check if you’re looking at the right timeframe:

# See when the last pool was created
curl "https://api.dexpaprika.com/networks/ethereum/pools?orderBy=created_at&sort=desc&limit=1" | jq '.pools[0].created_at'

“Too Much Spam”

Filter out low-quality pools:

# More restrictive filtering
curl "https://api.dexpaprika.com/networks/solana/pools?orderBy=created_at&sort=desc&limit=50" | jq '.pools[] | select(.transactions > 20 and .volume_usd > 5000 and (.tokens[0].fdv < 100000000 or .tokens[1].fdv < 100000000))'

“Missing Opportunities”

You might need to check more frequently or cast a wider net:

# Check multiple DEXes on one chain
for dex in uniswap_v3 uniswap_v2 sushiswap; do
    echo "=== $dex ==="
    curl -s "https://api.dexpaprika.com/networks/ethereum/dexes/$dex/pools?orderBy=created_at&sort=desc&limit=3" | jq '.pools[0] | {dex: "'$dex'", created: .created_at, tokens: [.tokens[].symbol]}'
done

What’s Next?

Need Help?