Binance Market Data Scraper — Ticker & Klines avatar

Binance Market Data Scraper — Ticker & Klines

Pricing

from $4.00 / 1,000 ticker row emitteds

Go to Apify Store
Binance Market Data Scraper — Ticker & Klines

Binance Market Data Scraper — Ticker & Klines

Pull public Binance spot-market data — 24hr ticker stats and OHLCV candlesticks (klines) — for a list of trading-pair symbols in one run. We handle the retries, rate-limit backoff, and proxy routing so the data lands. Keyless, no API key or account needed. Built on the public Binance REST API.

Pricing

from $4.00 / 1,000 ticker row emitteds

Rating

0.0

(0)

Developer

DevilScrapes

DevilScrapes

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Categories

Share


🎯 What this scrapes

Binance publishes spot-market data on a documented, keyless REST API — no account, no signature, no API key. This Actor takes a list of trading pairs (e.g. BTCUSDT, ETHUSDT), pulls 24hr ticker stats and/or OHLCV candlesticks for each, and writes one typed row per ticker snapshot and one per candle. Leave the symbol list empty and it falls back to a bounded top-movers mode — the most active pairs by 24h quote volume, up to your cap. We absorb rate limits and transient errors with backoff so the run finishes clean.

🔥 Features

  • 🔁 Retries with exponential backoff on 408 / 429 / 503 and network errors — up to 5 attempts, Retry-After honoured.
  • 🚫 Fail-loud on a rate-limit ban — a 418/451 response stops the run immediately instead of digging the hole deeper.
  • 🌐 Apify Proxy routing on every request — a fresh exit IP if Binance ever throttles a shared range.
  • 🧩 Fault isolation per symbol — one bad or delisted pair is skipped and logged, the rest of your run still lands.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, ISO-8601 timestamps, rowType-discriminated ticker/kline shapes.
  • 💰 Two-tier Pay-Per-Event pricing — richer ticker rows and bulk kline rows are priced separately, never blended.

💡 Use cases

  • Quant/algo research — pull OHLCV klines for a symbol universe, feed straight into a backtest pipeline.
  • Crypto dashboards — schedule a run for your watchlist, pipe ticker snapshots to a spreadsheet or BI tool.
  • Portfolio pipelines — one typed row per coin, no hand-rolled Binance client to maintain.
  • Top-movers monitoring — leave symbols empty to snapshot the most active pairs by 24h quote volume.

⚙️ How to use it

  1. Click Try for free at the top of the page.
  2. Fill in the input form — most fields have sensible defaults.
  3. Click Start. Output streams into the run's dataset.
  4. Export from Storage → Dataset as JSON, CSV, or Excel — or fetch via the Apify API.

For no-code workflows: install the Apify node for n8n or the Apify module for Make, connect your Apify token, and point it at DevilScrapes/binance-market-data-scraper.

📥 Input

FieldTypeRequiredDefaultNotes
symbolsarrayno["BTCUSDT", "ETHUSDT", "SOLUSDT"]Binance spot symbols, max 50. Empty triggers bounded top-movers mode.
maxSymbolsintegerno20Row cap when symbols is empty — top N pairs by 24h quote volume.
dataTypesarrayno["ticker", "klines"]Which data to pull per symbol: ticker, klines, or both.
intervalstringno"1h"Candlestick interval (klines only): 1m, 5m, 15m, 30m, 1h, 4h, 1d, 1w.
klinesLimitintegerno100Candles per symbol (Binance's own max is 1000).
startTimeintegerno—Optional ms-epoch kline window start.
endTimeintegerno—Optional ms-epoch kline window end.
proxyConfigurationobjectno{"useApifyProxy": true}We route every request through Apify Proxy and rotate exit IPs on any block.

Example input

{
"symbols": ["BTCUSDT", "ETHUSDT", "BNBUSDT", "SOLUSDT", "XRPUSDT"],
"dataTypes": ["ticker", "klines"],
"interval": "1h",
"klinesLimit": 100,
"proxyConfiguration": {
"useApifyProxy": true
}
}

📤 Output

Two flat row shapes in one dataset, told apart by rowType — never one row with a nested klines list, so PPE bills each candle as its own result.

FieldTypeNotes
rowTypestringDiscriminator: ticker or kline.
symbolstringBinance trading-pair symbol, e.g. BTCUSDT.
priceChangenumber | nullTicker only — 24h absolute price change.
priceChangePercentnumber | nullTicker only — 24h percent price change.
lastPricenumber | nullTicker only — last traded price.
openPrice / highPrice / lowPricenumber | nullTicker only — 24h open/high/low.
volumenumber | nullTicker/kline — base-asset volume.
quoteVolumenumber | nullTicker only — quote-asset volume.
tradeCountinteger | nullTicker only — number of trades in the 24h window.
intervalstring | nullKline only — candlestick interval, e.g. 1h.
open / high / low / closenumber | nullKline only — candle OHLC.
numberOfTradesinteger | nullKline only — number of trades in the candle.
openTime / closeTimestring | nullISO-8601 UTC — period/candle open/close time.
scrapedAtstringISO-8601 UTC timestamp when this row was recorded.

Example output

{
"rowType": "ticker",
"symbol": "BTCUSDT",
"priceChange": 1234.50,
"priceChangePercent": 2.15,
"lastPrice": 58900.10,
"openPrice": 57665.60,
"highPrice": 59100.00,
"lowPrice": 57200.00,
"volume": 18234.55,
"quoteVolume": 1062345678.90,
"openTime": "2026-09-09T00:00:00Z",
"closeTime": "2026-09-10T00:00:00Z",
"tradeCount": 1284933,
"scrapedAt": "2026-09-10T12:00:00Z"
}
{
"rowType": "kline",
"symbol": "BTCUSDT",
"interval": "1h",
"openTime": "2026-09-10T11:00:00Z",
"open": 58700.00,
"high": 58950.00,
"low": 58650.00,
"close": 58900.10,
"volume": 312.45,
"closeTime": "2026-09-10T11:59:59Z",
"numberOfTrades": 5421,
"scrapedAt": "2026-09-10T12:00:00Z"
}

💰 Pricing

Pay-Per-Event — two result rates, because one /klines call can return up to 1000 candles and pricing them at the ticker rate would make a single call cost roughly $4:

EventUSDWhat it is
actor-start$0.20One-off warm-up charge per run
ticker-result$0.004Per ticker row written (≈ $4.00 / 1 000)
kline-result$0.0015Per kline (candle) row written (≈ $1.50 / 1 000)

No subscription, no minimum, no card to start — Apify gives every new account $5 of free credit.

🚧 Limitations

  • Spot market only — no futures, margin, or options data.
  • No authenticated endpoints — balances, orders, and account data are out of scope by design.
  • /ticker/price and /exchangeInfo are not implemented in this version.
  • No technical indicators (RSI, MACD, etc.) — raw OHLCV only; compute indicators downstream.

❓ FAQ

Do I need a Binance account or API key?

No. Every endpoint this Actor calls is public, keyless spot-market data — no account, no signature, no rate-limit tier to buy into.

Does this support futures, margin, or options?

No — spot market only in this version. Futures/margin/options are a separate product surface on Binance's side.

Can I get historical data further back than the klines limit?

Set startTime/endTime to page through history — klinesLimit caps each call at up to 1000 candles per request.

What happens if I request klines with no symbols?

Klines requires at least one symbol — the Actor validates this before charging you anything. Ticker alone can run with an empty symbol list (top-movers mode).

Why are ticker and kline rows priced differently?

A single klines request can return up to 1000 candles. Pricing them at the ticker rate would make one call cost roughly $4 — the lower kline rate keeps bulk OHLCV affordable.

💬 Your feedback

Spotted a bug, hit a weird edge case, or need a new field? Open an issue on the Actor's Issues tab in Apify Console — we ship fixes weekly and we read every report.