Yahoo Finance Scraper
Get Yahoo Finance data without an API key: search tickers, real-time quotes, and OHLCV price history for stocks, ETFs, FX and crypto as JSON.
How it works
- 1Open it on Apify
Hit Run on Apify — it opens the tool in the cloud, no install.
- 2Set the inputs
Adjust
mode,query,symbols(sensible defaults are pre-filled). - 3Click Run
The tool runs on Apify’s cloud and collects the data for you.
- 4Export the results
Download as JSON, CSV or Excel, or pipe straight into your app, Google Sheets, or an AI agent.
Pricing
$0.001 per item = $1 per 1,000
| You are charged for | When | Price |
|---|---|---|
| Item returned | Charged per quote/history row returned. | $0.001 |
Pay-per-event pricing: you are billed per result, not per subscription — a run that returns nothing costs nothing beyond the start fee. Billing is handled by Apify on your own account. These are the live Apify store prices, in effect since 2026-06-12, and they are what you are actually charged.
Inputs
| Field | What it does | Type |
|---|---|---|
mode | What to fetch. "search" = find ticker symbols by name (uses Query). "quote" = current price snapshot for each Symbol. "history" = OHLCV price history for each Symbol over Range/Interval. | string |
query | Company or asset name to search ticker symbols for, e.g. "apple", "vanguard s&p 500", "bitcoin". Only used when Mode is "search". | string |
symbols | One or more ticker symbols to fetch, e.g. AAPL, MSFT, ^GSPC (S&P 500 index), EURUSD=X (FX), BTC-USD (crypto). Used by "quote" and "history" modes. | array |
range | How far back the price history goes (history mode). Longer ranges return more rows. | string |
interval | The candle size / sampling interval for history. Intraday intervals (1m, 5m) only work with short ranges (about 1d-1mo). | string |
maxItems | Maximum number of result rows to return and charge for (caps history bars and search results). Quotes return one row per symbol. | integer |
notionConnector | Optional. Write each item as a page into your Notion when the run finishes. Authorize a Notion connector once in Settings → API & Integrations → MCP connectors, then pick it here. Leave empty to skip (default) — results are always saved to the dataset regardless. | string |
notionParentId | Optional. The Notion data source ID of the database to write into (only used if a Notion connector is set). Leave empty to create the pages privately in your workspace instead. | string |
What you get
A structured dataset — each result includes fields like:
changePctclosecurrencydateexchangefiftyTwoWeekHighfiftyTwoWeekLowhighindustrylowmarketTimenameopenpreviousClosesymbolpricevolumeExport every run as JSON, CSV or Excel, or send it to your app, a database, Google Sheets, or an AI agent.
3 ready-to-run use cases
Yahoo Finance Ticker Symbol Lookup by Company Name
Don't know the ticker? Search any company, fund, or ETF by name on Yahoo Finance and get back matching stock symbols, exchange, and quote type.
AAPL Live Stock Quote from Yahoo Finance API
Real-time AAPL quote with current price, currency, daily change, and 52-week high/low in a single row. Re-run any time for a fresh Apple stock snapshot.
TSLA Historical Daily Price Data, 1 Year OHLCV
One year of daily open, high, low, close, and volume bars for Tesla (TSLA), ready to drop into a backtest, chart, or quant model from Yahoo Finance.
Related tools in News & Finance Data
Other ready-to-run tools in the same category — all pay-per-use on the Apify cloud.
CoinGecko Crypto Market Scraper
Scrape CoinGecko crypto market data with no API key: top coins by market cap, price, volume, 24h/7d change, supply, and ATH/ATL. Export to JSON, CSV, or Notion.
SEC EDGAR Filings Scraper
Pull SEC EDGAR filings as clean rows: form, company, date, accession number, and a direct document link. Search all filings or fetch by ticker/CIK.
Google News Scraper
Monitor Google News by keyword or topic and get structured articles with the real publisher URL, source, date, and snippet. No login, no API key.
GDELT Worldwide News Scraper
Search global news with the GDELT 2.0 API. Get articles with title, URL, domain, country, language, and date. Filter by keyword, timespan, country. No API key.
Where this tool sits
- Categories
- News & Finance Data
- Platforms
- Finance & Markets
Yahoo Finance Scraper
Scrape Yahoo Finance with no API key and no login. Three modes:
- search — find ticker symbols by name (e.g. "apple" → AAPL).
- quote — current price snapshot for one or more symbols.
- history — OHLCV price history (candles) over a range/interval.
Works for stocks, ETFs, indices (^GSPC), FX (EURUSD=X) and crypto (BTC-USD).
It calls Yahoo's public JSON endpoints directly (query1/query2.finance.yahoo.com) — no HTML parsing, no scraping fragility.
Input
| Field | Type | Default | Notes | ||
|---|---|---|---|---|---|
mode | string | quote | search \ | quote \ | history |
query | string | — | Search text (search mode), e.g. apple | ||
symbols | array | — | Tickers (quote/history mode), e.g. ["AAPL","MSFT","BTC-USD"] | ||
range | string | 1mo | 1d,5d,1mo,3mo,6mo,1y,5y,max (history) | ||
interval | string | 1d | 1m,5m,1d,1wk,1mo (history; intraday needs short range) | ||
maxItems | integer | 100 | Caps history rows / search results | ||
proxyConfiguration | object | { "useApifyProxy": false } | Optional; only needed if Yahoo rate-limits your IP (429) |
Examples
{ "mode": "search", "query": "apple", "maxItems": 20 }
{ "mode": "quote", "symbols": ["AAPL", "MSFT", "BTC-USD"] }
{ "mode": "history", "symbols": ["AAPL"], "range": "1mo", "interval": "1d" }
Output
search rows:
{ "symbol": "AAPL", "name": "Apple Inc.", "exchange": "NASDAQ", "quoteType": "EQUITY", "sector": "Technology", "industry": "Consumer Electronics" }
quote rows:
{ "symbol": "AAPL", "price": 201.0, "currency": "USD", "exchange": "NMS", "previousClose": 198.0, "changePct": 1.52, "fiftyTwoWeekHigh": 260.1, "fiftyTwoWeekLow": 169.2, "marketTime": "2026-06-11T20:00:00.000Z" }
history rows (one per bar):
{ "symbol": "AAPL", "date": "2026-05-12T13:30:00.000Z", "open": 210.9, "high": 211.3, "low": 206.7, "close": 207.0, "volume": 51000000 }
Every successful row has ok: true. Failures and empty results come back as ok: false rows with an errorCode (RATE_LIMITED, NOT_FOUND, NO_RESULTS, BAD_INPUT, NETWORK, …) and are never charged.
Pricing
$1.00 per 1,000 rows ($0.001 each), with no run-start fee. Flat rate — no volume tiers, no plan gates — and one item charge per successful row.
A row is a row in every mode: a search hit, a quote snapshot, or one OHLCV bar. A 10-symbol quote run is 10 rows ($0.01); one year of daily candles for a single ticker is about 250 rows ($0.25). maxItems is a hard cap on rows, so it doubles as your spend cap.
Diagnostic, empty, rate-limited and NOT_FOUND rows are not charged, and because there is no start fee a run that returns only diagnostics costs nothing at all.
Notes
- Yahoo rejects generic User-Agents — the actor always sends a browser-like UA and rotates it per retry.
- Yahoo rate-limits aggressively. On HTTP 429 the actor backs off and retries; persistent limits surface as
RATE_LIMITEDrows. Enable Apify Proxy if you hit this under high volume. - Invalid symbols surface as
NOT_FOUNDrows (other symbols in the batch still return data).