Yahoo Finance Scraper - Quotes, Financials, Options & History
Pricing
from $0.36 / 1,000 tickers
Yahoo Finance Scraper - Quotes, Financials, Options & History
Scrape Yahoo Finance by ticker, search or screener: price, market cap, P/E, EPS, dividends, statements, earnings, analyst targets, holders, insiders, SEC filings, transcripts, options with Greeks, OHLCV history and news. Monitor mode. $0.36 per 1,000 tickers, no start fee.
Pricing
from $0.36 / 1,000 tickers
Rating
0.0
(0)
Developer
Top Api
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
2 days ago
Last modified
Categories
Share
What does Yahoo Finance Scraper do?
Yahoo Finance Scraper extracts stock, ETF, fund, index, crypto, currency and futures data from finance.yahoo.com and turns a list of tickers (or a search, a Yahoo screener or a trending list) into one structured row per ticker: the live quote plus the data sections you pick, from company profile and key statistics to full financial statements, analyst targets, holders, SEC filings, earnings-call transcripts, options with Greeks, price history and news. Built for investors, quant and fintech developers, analysts and AI agents who need Yahoo Finance data on a schedule without maintaining their own scraper.
Also known as: Yahoo Finance API, Yahoo stock scraper, yfinance alternative, stock quote API, stock data scraper.
- One row per ticker, everything you pick inside it: quote (90 Yahoo fields: price, change, volume, market cap, P/E, EPS, dividend, 52-week range, pre/post market), profile, statistics, statements, earnings, analysts, holders, insiders, SEC filings, transcripts, insights, similar symbols, news, options, history, dividends and technical indicators.
- Every financial-statement line item: income statement, balance sheet and cash flow from Yahoo's fundamentals series, annual (about 4 years), quarterly (5 quarters) and trailing 12 months: 160 annual line items for Apple on our test run.
- Bulk and discovery: 1,000 tickers per run is routine (Yahoo's quote endpoint answers 1,000 symbols in one call); 29 Yahoo screeners, trending tickers by country, the market summary, symbol search up to 1,000 matches, company names and ISINs resolved to tickers.
- Rows when you need them: price bars, option contracts, headlines and section records (statement periods, holders, insider trades, rating changes, filings, transcripts) can each come as rows of their own for spreadsheets and backtests.
- Monitor mode: every scheduled run returns each ticker's change since the last run, and only the headlines, filings, rating changes, insider trades and transcripts that are new; alert-only mode delivers just the movers; webhook and Telegram notifications.
- yfinance layout: one switch reshapes each row into the
stock_info,price_info,history,financials,dividends,splits,news,recommendations,holders,optionsandearningsblocks yfinance-based tools expect. - No login, no cookies, no Yahoo API key. Pay only for delivered rows: no start fee.
- Export anywhere: JSON, CSV, Excel, XML, RSS; Apify API, schedules, webhooks, Make, Zapier, n8n, Google Sheets; callable from AI agents through Apify's MCP server.
What data can you get from Yahoo Finance?
💲 Price, change, change % (regularMarketPrice) | 📊 Volume, avg. volume, bid/ask | 🏦 Market cap, enterprise value |
| 📈 P/E (trailing, forward), PEG, P/S, P/B | 🧮 EPS (TTM, forward, current year) | 💵 Dividend rate, yield, ex-date, payout ratio |
| 📅 52-week range, 50/200-day averages | 🌙 Pre-market and after-hours price | 🏢 Sector, industry, employees, officers, address, website |
| 📑 Income statement, balance sheet, cash flow (every line item) | 🗓️ Earnings history, estimates, GAAP and non-GAAP, next earnings date | 🎯 Analyst recommendations, price targets, upgrades/downgrades |
| 👥 Institutional and fund holders, holder breakdown | 🕴️ Insider holders and insider transactions | 📄 SEC filings with exhibit links |
| 🎙️ Earnings-call transcripts (list + full text of the newest call) | 🔍 Technical outlook, valuation, research report list | 🧩 Similar symbols with score |
| 📰 News headlines with summary (+ full article text) | 🧾 Options chain with Greeks (delta, gamma, theta, vega, rho) | 🕯️ OHLCV history from 1-minute to monthly bars |
| 💸 Dividends and splits since listing | 📐 SMA, EMA, RSI, MACD, ATR, volatility, returns 1d-5y | 🏷️ Fund holdings, fund profile, fund performance (ETFs, mutual funds) |
On a 100-ticker run with the default sections (run q3gegHwqfT2LpTKiT), 99 of 100 rows carried sector, industry, analyst target and next earnings date (the 100th was the SPY ETF, which has none of those); on a 300-ticker run with every section (run agAFB16dILLzGepM0), every row carried statements, holders, insights, news, options, history and technicals.
How to scrape Yahoo Finance with Yahoo Finance Scraper
- Create a free Apify account: $5 of monthly credit, no card needed.
- Open Yahoo Finance Scraper and click Try for free.
- Paste your symbols into Tickers (or fill Search Yahoo Finance, pick a Yahoo screener, or add a country to Trending tickers in), then tick the Data sections you want.
- Click Start. A 3-ticker run finishes in about 2 seconds; 100 tickers with the default sections in about 9 seconds.
- Open the Storage tab and Export as JSON, CSV or Excel, or add a schedule so it runs for you.
⬇️ Input
Every field is optional: with nothing filled in, the actor runs a 3-ticker sample (AAPL, MSFT, BTC-USD). The form opens with those tickers and the default sections.
| Parameter | Type | Description |
|---|---|---|
| 🔍 What to scrape | ||
tickers | List | Yahoo symbols, finance.yahoo.com/quote links, company names or ISINs: AAPL, BRK-B, SAP.DE, 7203.T, SPY, ^GSPC, BTC-USD, EURUSD=X, GC=F, apple, US0378331005. BRK.B-style class shares are matched to Yahoo's BRK-B. |
startUrls | Request list | Quote links or a remote text/CSV file of them; same as Tickers. |
searchQueries | List | Words to find symbols and headlines by: each match is a search-result row, each headline a news row. |
screeners | Multi-select | 29 Yahoo lists plus trending tickers: day gainers/losers, most active, trending, most shorted, undervalued growth, 52-week gainers/losers, most watched, top ETFs and mutual funds, crypto lists, highest options open interest, and more. Each listed symbol becomes a ticker row. |
screenerRegion | Select | Market for day gainers, day losers and most active (21 markets, by Yahoo's own criteria for its US lists). Default US. |
trendingRegions | List | Country codes for Yahoo's trending tickers (US, GB, DE, IN...), up to 100 each. |
marketSummary | Boolean | Add the ~15 indices, futures, rates and currencies at the top of finance.yahoo.com. Default false. |
maxDiscoveryResults | Integer | Symbols per screener or trending list, in Yahoo's order (1-1,000). Default 25. |
| 🧩 Data to include | ||
sections | Multi-select | quote, profile, statistics, financials, earnings, analyst, ownership, insiders, secFilings, transcripts, calendar, insights, similar, news, options, history, dividends, technicals. Default: quote, profile, statistics, analyst, earnings. |
financialsPeriod | Select | annual, quarterly, trailing, both (annual + quarterly), all. Default annual. |
maxNewsPerTicker | Integer | Headlines per ticker (0-60; Yahoo serves about 48). Default 10. |
ratingChangesPerTicker | Integer | Newest analyst upgrades/downgrades kept per ticker (Yahoo has 971 for Apple). Default 25. |
secFilingsPerTicker | Integer | Newest SEC filings kept per ticker. Default 20. |
transcriptsPerTicker | Integer | Newest earnings-call transcripts listed per ticker. Default 8. |
modules | List | Advanced: any extra Yahoo quoteSummary module name, added to each ticker row. |
| 📈 Price history | ||
historyRange | Select | 1d ... 10y, max, or all (every daily bar since listing: 11,556 for Apple). Default 1mo. |
historyInterval | Select | 1m to 3mo. Default 1d. |
historyStartDate, historyEndDate | Date | 2026-01-01 or a period back from today (30 days, 6 months). Override the period. |
historyFormat | Select | nested (bars inside the ticker row), series (column arrays inside the row), rows (one row per bar). Default nested. |
includePrePost | Boolean | Intraday only: add pre-market and after-hours bars, each marked with its session. |
adjustedPrices | Boolean | Scale OHLC by the adjusted-close factor. adjClose is always included on daily and longer bars. |
includeEvents | Boolean | Dividend amount and split ratio on the bar where they happened. Default true. |
maxBarsPerTicker | Integer | Keep the most recent N bars. 0 = all. |
comparisons | List | Benchmarks whose closes ride along with each bar, e.g. ^GSPC, QQQ (up to 10). |
| 🧾 Options chain | ||
optionExpirations | Integer | Expirations to read, nearest first; 0 = all. Default 1. |
optionDates | List | Only these expirations (2026-12-18); dates Yahoo does not list are named in requestedDatesNotListed. |
optionMinDays, optionMaxDays | Integer | Days-to-expiration window. |
optionType | Select | both, call, put. |
optionMinStrike, optionMaxStrike | Number | Strike bounds. |
optionStrikeRangePercent | Number | Only strikes within this % of the underlying price. |
optionStrikesAroundPrice | Integer | Keep N strikes below and N above the price. |
optionMoneyness | Select | all, itm, otm. |
optionMinVolume, optionMinOpenInterest, optionMinImpliedVolatility | Number | Liquidity and IV floors, applied before anything is stored or charged. |
includeGreeks | Boolean | Delta, gamma, theta (per day), vega and rho (per point) and a theoretical price by Black-Scholes-Merton with the 13-week T-bill rate (^IRX) and the dividend yield. Default true. |
optionsFormat | Select | nested (chains inside the ticker row) or rows (one row per contract). |
maxOptionContracts | Integer | Stop after N contracts per ticker. |
| 🔎 Search | ||
searchType | Select | all, equity, etf, mutualfund, index, future, currency, cryptocurrency. |
maxSymbolsPerQuery | Integer | Search-result rows per search (up to 1,000; past the first 7, Yahoo's symbol lookup is paged in). Default 10. |
maxNewsPerQuery | Integer | Headline rows per search (up to ~50). Default 10. |
scrapeSearchMatches | Boolean | Also add each search's best symbol to the tickers ("apple" gets you AAPL's ticker row). |
| ➕ Extra data (paid add-on, $0.00072 per full text) | ||
includeArticleText | Boolean | The full text of each headline's article on finance.yahoo.com. Partner-site links are marked external, not charged. |
includeTranscriptText | Boolean | Speaker, role, timestamp and text of every turn of the newest earnings call. |
maxTranscriptTexts | Integer | Transcripts per ticker that get their text. Default 1 (see Limits). |
| 🔁 Monitoring | ||
monitorMode | Boolean | Remember earlier runs: ticker rows come back with previousPrice and changeSinceLastRunPercent; headlines, filings, rating changes, insider trades and transcripts only when new. |
monitorStoreName | String | Named key-value store that keeps the memory. Default yahoo-finance-monitor. |
monitorKey | String | Name for a watch, so two schedules with the same tickers stay separate. |
sinceDate | Date | Only headlines, filings, rating changes, insider trades and transcripts on or after this day. |
onlyMovers | Boolean | Deliver a ticker only when it moved at least the threshold (since the last delivered run in monitor mode, else today). |
alertThresholdPercent | Number | The move that counts, e.g. 5. Default 5. |
webhookUrl | String | We POST a JSON summary (counts, movers, dataset id) when a run delivers anything. |
telegramBotToken, telegramChatId | String | Your bot sends a message when a run delivers anything. |
| 📦 Output | ||
layout | Select | yahoo (Yahoo's own field names) or yfinance (the yfinance-style blocks). |
newsFormat | Select | nested or rows (one row per headline). |
sectionsAsRows | Boolean | Statement periods, holders, insider trades, rating changes, earnings quarters, estimates, filings and transcripts as rows of their own. |
compactOutput | Boolean | ~40 core fields per ticker, for AI agents and quick looks. |
maxItems | Integer | Hard cap on all rows of the run; also caps your cost. 0 = no cap. |
lang, region | String | Language and region of names and news (en-US, de-DE; US, GB...). |
| ⚙️ Advanced | ||
proxyConfiguration | Proxy | Not needed: Yahoo answers directly. If Yahoo slows a run down, the actor moves to Apify's datacenter proxy by itself. |
maxConcurrency | Integer | Tickers read at once. Default 8. |
maxRunSeconds | Integer | Stop starting new tickers after N seconds and finish cleanly. |
The input names used by other Yahoo Finance actors also work (symbols, start_date/end_date, range/interval, includeNews, includeOptions, historyAsRows, maxNewsResults, dataTypes, onlyNewOrChanged and more), so an existing integration can switch with its input unchanged.
Input JSON
{"tickers": ["AAPL", "MSFT", "NVDA", "SPY", "BTC-USD"],"sections": ["quote", "profile", "statistics", "financials", "analyst", "news", "options"],"financialsPeriod": "both","maxNewsPerTicker": 5,"optionExpirations": 2,"optionStrikesAroundPrice": 10}
Pick the sections before anything else
The price is per ticker row whatever you pick, but each extra section is one more request per ticker and a bigger row. A price poll needs only quote; a research pull can take everything.
Use rows for spreadsheets, nesting for apps
Bars, contracts and headlines inside the ticker row keep one row per symbol (easy for apps and APIs). historyFormat: rows, optionsFormat: rows, newsFormat: rows and sectionsAsRows give one flat row per bar, contract, headline or record, which is what CSV, Excel and backtests want.
Give large runs 1 GB of memory
Apify gives a run a CPU share proportional to its memory. A 300-ticker run with the default sections took 179 s at 128 MB and 21 s at 1,024 MB for the same platform cost. For hundreds of tickers or many sections, set Memory to 1024 MB.
⬆️ Output
A ticker row (excerpt; real values from run q3gegHwqfT2LpTKiT, sections shortened):
{"rowType": "ticker","input": "AAPL","matchedBy": "ticker","symbol": "AAPL","longName": "Apple Inc.","quoteType": "EQUITY","exchange": "NMS","currency": "USD","regularMarketPrice": 339.5,"regularMarketChangePercent": -1.00309,"marketCap": 4954723975168,"trailingPE": 38.933487,"sector": "Technology","industry": "Consumer Electronics","targetMeanPrice": 328.35025,"recommendationKey": "buy","nextEarningsDate": "2026-11-02","assetProfile": { "fullTimeEmployees": 150000, "companyOfficers": ["... 10 officers ..."] },"financialData": { "currentPrice": 339.5, "totalRevenue": 466822987776, "...": "..." },"upgradeDowngradeHistory": { "totalAvailable": 971, "history": ["... 25 newest ..."] },"marketTime": "2026-10-20T20:00:01.000Z","url": "https://finance.yahoo.com/quote/AAPL/"}
Row types
rowType | One row is | Charged as |
|---|---|---|
ticker | One symbol: the quote plus every section you picked | ticker |
priceBar | One OHLCV bar (historyFormat: rows) | price-bar |
option | One option contract with Greeks (optionsFormat: rows) | option-contract |
news | One headline (from a search, or newsFormat: rows) | news |
searchResult | One symbol found by a search | search-result |
record | One statement period, holder, insider trade, rating change, earnings quarter, estimate, SEC filing or transcript (sectionsAsRows) | record |
notFound | An input Yahoo does not know (reason says why) | not charged |
Fields
Quote fields are Yahoo's own names; every field Yahoo's quote endpoint returns is kept (about 90 per stock). Fill rates below are counted on real runs: 100 large US stocks with the default sections (run q3gegHwqfT2LpTKiT) and 300 stocks with every section (run agAFB16dILLzGepM0).
| Field / section | What it is | Fill |
|---|---|---|
symbol, longName, exchange, currency, quoteType | Identity | 100% |
regularMarketPrice, regularMarketChange(Percent), regularMarketVolume, regularMarketDayHigh/Low, regularMarketPreviousClose, regularMarketOpen | The session's quote | 100% |
bid, ask, bidSize, askSize, averageDailyVolume3Month/10Day | Book and volume | 100% |
fiftyTwoWeekHigh/Low/Range, fiftyDayAverage, twoHundredDayAverage (+ change %) | Ranges and averages | 100% |
preMarketPrice, postMarketPrice (+ change, time) | Extended hours, when Yahoo has them | when trading |
marketCap, sharesOutstanding, bookValue, priceToBook | Size and book | 100% on the 300-stock run |
trailingPE, forwardPE, epsTrailingTwelveMonths, epsForward, epsCurrentYear | Earnings multiples (no P/E for loss makers) | 70%, 98%, 100% |
dividendRate, dividendYield, trailingAnnualDividendYield, dividendDate | Dividends (yield in %) | 100% on payers |
earningsTimestamp(Start/End), earningsCallTimestampStart/End (+ ...Iso) | Next earnings window | as Yahoo lists it |
sector, industry, country, website, fullTimeEmployees, longBusinessSummary | Headline profile fields | 97-100% (stocks) |
beta, enterpriseValue, profitMargins, grossMargins, returnOnEquity, totalRevenue, freeCashflow, debtToEquity | Headline statistics | 93-100% |
targetMeanPrice/Median/High/Low, recommendationKey, recommendationMean, numberOfAnalystOpinions | Analyst consensus | 98-100% (covered stocks) |
nextEarningsDate, exDividendDate, payoutRatio | Calendar | next earnings 99%; dividend dates on payers |
assetProfile | Address, phone, website, officers with pay, governance risk scores | 100% |
summaryDetail, defaultKeyStatistics, financialData, equityPerformance | Yahoo's statistics tables | 100% |
financials.annual/quarterly/trailing.incomeStatement/balanceSheet/cashFlow | Statement periods, newest first, every line item Yahoo has | 100% |
earnings, earningsHistory, earningsTrend (+ GAAP / non-GAAP variants), calendarEvents | Earnings history, estimates, revisions | 100% |
recommendationTrend, upgradeDowngradeHistory | Rating trend and rating changes (firm, grades, price targets) | 100%, 98% |
institutionOwnership, fundOwnership, majorHoldersBreakdown, netSharePurchaseActivity | Holders | 100% |
insiderHolders, insiderTransactions | Insiders | 93% |
secFilings | Date, type, title, Yahoo link, exhibit links | 98% |
earningsCallTranscripts | Title, fiscal period, date, link (+ turns with text) | 92% |
insights | Short/intermediate/long-term outlook, support, resistance, valuation, research reports, significant developments | 100% |
similar | Symbols people also look at, with score | 100% |
news[] | uuid, title, publisher, link, publishedAt, summary, relatedTickers, thumbnail (+ articleText) | 100% (summary 73% of headlines) |
options | expirationDates, strikes, chains[] with calls and puts | 100% of optionable stocks |
history | range, interval, bars[] (date, open, high, low, close, adjClose, volume, dividend, split, session) | 100% |
dividends[], splits[] | Every dividend and split since listing | 44% (dividend payers) |
technicals | SMA 20/50/200, EMA 12/26, MACD, RSI 14, ATR 14, 1-year volatility and max drawdown, returns 1d-5y, price vs SMA, golden cross | 100% |
previousPrice, changeSinceLastRun(Percent), isNew | Monitor mode deltas | monitor runs |
failedSections | Sections Yahoo did not answer for this ticker (the rest of the row is still delivered) | rare |
Option contract: contractSymbol, optionType, strike, expirationDate, daysToExpiration, lastPrice, bid, ask, mid, spread, change, percentChange, volume, openInterest, impliedVolatility, inTheMoney, lastTradeDate, contractSize, currency, underlyingPrice, greeks {delta, gamma, theta, vega, rho, theoreticalPrice}. Price bar: symbol, date, time, interval, open, high, low, close, adjClose, volume, dividend, split, session, provisional (the current session's bar, filled with Yahoo's last price), comparisons. Search result: query, rank, symbol, shortName, longName, exchange, quoteType, sector, industry, score, price for lookup matches.
yfinance layout (layout: "yfinance"): ticker, stock_info {symbol, name, sector, industry, market_cap, current_price, previous_close, day_high, day_low, volume, pe_ratio, dividend_yield, beta}, price_info, history {period, interval, start, end, data[]}, financials {income_statement, balance_sheet, cash_flow}, dividends, splits, news, recommendations, holders {major_holders, institutional_holders, mutualfund_holders}, options {expiration_date, calls, puts, available_expirations}, earnings {annual/quarterly earnings, annual/quarterly net income}. All 74 field paths of the most-run yfinance-style Yahoo actor are present and filled (offline check on captured Apple data).
How can I use Yahoo Finance data?
- 📊 Portfolio dashboards: a scheduled quote run for your watchlist into Google Sheets or a database every few minutes.
- 🧮 Fundamental screens and valuation models: every statement line item, annual and quarterly, for hundreds of tickers in one run.
- 🤖 Backtests and quant research: daily or intraday OHLCV rows with adjusted closes, dividends and splits, plus technical indicators.
- 🧾 Options analytics: chains with Greeks, filtered by moneyness, strike window, days to expiration, volume and open interest.
- 📰 News and event monitoring: new headlines, SEC filings, rating changes and insider trades per ticker since the last run, pushed to a webhook or Telegram.
- 🎙️ Earnings research: the newest earnings call as speaker turns, next to estimates, surprises and analyst targets.
- 🧠 AI agents: compact ticker rows through Apify's MCP server for chat assistants and LLM pipelines.
How much does it cost to scrape Yahoo Finance?
Pay per delivered row, no start fee, nothing charged for not-found symbols or for anything a filter removed:
| Event | Price |
|---|---|
| Ticker row (quote + all the sections you picked) | $0.00036 |
| Price bar row | $0.00009 |
| Option contract row | $0.00009 |
| News headline row | $0.00018 |
| Search result row | $0.00018 |
| Section record row | $0.00045 |
| Full text add-on (article or transcript) | $0.00072 |
| Tickers | Cost |
|---|---|
| 10 | $0.0036 |
| 100 | $0.036 |
| 1,000 | $0.36 |
| 10,000 | $3.60 |
A watchlist of 20 tickers polled every 15 minutes during US market hours (26 runs a day) costs about $0.19 a day. Apify's free plan includes $5 of monthly credit.
Integrations, API, scheduling & MCP
- Schedules: Console → Schedules → add this actor with your input (cron, e.g. every 5 minutes on weekdays). Turn on Monitor mode to get the change since the last run on every ticker and only new headlines and filings.
- Webhooks and alerts: Apify webhooks on run success, or this actor's own
webhookUrl/ Telegram inputs, which fire only when a run delivered something. - API: start runs and read datasets with the Apify API, from Python or JavaScript.
- MCP: add the actor to Claude, Cursor or any MCP client through Apify's MCP server; use
compactOutputfor small rows. - No-code: Make, Zapier, n8n, Google Sheets, Airtable, Slack, Keboola and every Apify integration.
More scrapers from TopApi
- Bing Search Scraper: search results, news and People Also Ask for any company or ticker.
- Website Content Crawler: investor-relations pages and filings as clean text or Markdown for RAG.
- Twitter Profile Scraper: followers and bios of company and executive accounts.
- Trustpilot Reviews Scraper: customer reviews and ratings next to a company's financials.
- Facebook Search Posts Scraper: public posts mentioning a brand or ticker.
- Website Technology Scraper: the tech stack behind a company's website.
See every actor on our profile.
Limits & empty runs
- News: Yahoo serves about 48 headlines per ticker; the summary comes from Yahoo's RSS feed and is present on about 3 in 4 headlines (73% on our test). Article text is read only for finance.yahoo.com articles; some are teasers of partner articles (
articleTextStatus: teaser_only, not charged). - Transcripts: Yahoo shows the newest earnings call in full to everyone; older calls are behind Yahoo's paid plan, so they are listed (title, date, link) and marked
paywalled, never charged as text. - ESG scores: Yahoo no longer returns them (checked on Apple, Microsoft, Exxon, JPMorgan and Vodafone); governance risk scores in
assetProfileare kept. - Intraday history: 1-minute bars for about the last 30 days (read in Yahoo's 7-day windows), 2-90 minute bars for 60 days, hourly for 2 years; a longer request is cut to that window and says so in
history.note. - Statements: about 4 annual periods, 5 quarters and trailing 12 months, as Yahoo publishes them; no trailing balance sheet exists.
- Quotes are as Yahoo shows them, with the exchange's delay in
exchangeDataDelayedBy. - Speed: Yahoo answers fast but limits a shared IP when a run asks too much at once; the actor slows down by itself and, only if that persists, moves to Apify's datacenter proxy. A 300-ticker run with every section took 171 s at 1 GB of memory.
- Never charged: symbols Yahoo does not know (
notFoundrows say why), rows a filter removed, rows pastmaxItemsor your spending limit, headlines, filings and other items an earlier monitor run already delivered, and tickers that movers mode held back. In monitor mode every ticker row is still delivered and charged (it carries the change since the last run).
FAQ
How much does Yahoo Finance Scraper cost?
$0.00036 per ticker row with every section you choose, so 1,000 tickers cost $0.36. Bars and option contracts are $0.00009 each, headlines and search results $0.00018, section records $0.00045. There is no start fee.
How many tickers can Yahoo Finance Scraper handle in one run?
As many as you list. Yahoo's quote endpoint takes 1,000 symbols per call; we have run 300 tickers with every section in under 3 minutes at 1 GB of memory. Screeners give up to 1,000 symbols each.
Can I run Yahoo Finance Scraper on a schedule?
Yes. Create an Apify schedule with your watchlist; with Monitor mode each run shows the change since the last run and only new headlines, filings, rating changes, insider trades and transcripts. Only tickers that moved turns it into a price alert.
Can I use Yahoo Finance Scraper with the Apify API or Python?
Yes: call it with apify-client for Python or JavaScript, or over plain HTTP, and read the dataset as JSON or CSV.
Can AI agents use Yahoo Finance Scraper through MCP?
Yes, through Apify's MCP server. Turn on Compact ticker rows for about 40 core fields per ticker.
Do I need a Yahoo account, cookies or a Yahoo Finance API key?
No. The actor reads the same public JSON Yahoo's own website uses, as a signed-out visitor.
Does Yahoo Finance Scraper give the same fields as yfinance?
With Row layout: yfinance blocks each row has the stock_info, price_info, history, financials, dividends, splits, news, recommendations, holders, options and earnings blocks yfinance-based tools expect.
Why did Yahoo Finance Scraper return no rows?
The status message says why: the symbol is unknown to Yahoo (notFound row), no ticker moved past your movers threshold, a news-only monitor found no new headline, or your spending limit was reached. None of these is charged.
Which markets and asset types does Yahoo Finance Scraper cover?
Everything Yahoo Finance lists: US and international stocks (use Yahoo's suffix: .L, .DE, .T, .TO, .NS, .HK...), ETFs, mutual funds, indices, crypto, currencies and futures. Statements, analysts and holders exist for companies; funds get holdings and fund profile; crypto and currencies get the quote and history.
Your feedback
Found a gap or need another Yahoo Finance field? Open an issue on the Issues tab; we read every one.

