Yahoo Finance Scraper — Quotes, History, Financials & News
Pricing
$0.40 / 1,000 results
Yahoo Finance Scraper — Quotes, History, Financials & News
Yahoo Finance data for stocks, ETFs, indices, crypto, FX and futures: quotes, price history, profiles, key stats, financial statements, analyst targets, earnings, news, screeners and ticker search.
Pricing
$0.40 / 1,000 results
Rating
0.0
(0)
Developer
Trevor Ortega
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Get Yahoo Finance data for any ticker: stocks, ETFs, indices, crypto, currencies, futures and mutual funds. One run gives you live quotes, historical prices with dividends and splits, company profiles, key statistics, income statements, balance sheets, cash flows, analyst ratings and price targets, earnings dates and estimates, and the latest news headlines. It also exports market lists (most active, gainers, losers, trending, 52-week movers, screeners for ETFs, funds and crypto) and runs ticker search.
The data comes from the same JSON API that finance.yahoo.com uses. There is no browser and no API key, and runs are fast: 5 tickers with every section take about 4 seconds. You pay per result.
What data does Yahoo Finance Scraper extract?
Each ticker becomes one result with the sections you turn on:
| Section | Fields |
|---|---|
| Quote | price, change, changePercent, previousClose, open, dayLow, dayHigh, volume, averageVolume3Month, marketCap, sharesOutstanding, fiftyTwoWeekLow/High, fiftyDayAverage, twoHundredDayAverage, trailingPE, forwardPE, epsTrailingTwelveMonths, epsForward, priceToBook, bookValue, dividendRate, dividendYieldPercent, bid, ask, pre/post-market price and change, earningsDate, averageAnalystRating, marketState, regularMarketTime. Crypto adds circulatingSupply, maxSupply and volume24Hr. ETFs and funds add netAssets, netExpenseRatio and ytdReturn. Futures add expireDate, openInterest and underlyingSymbol. |
profile | sector, industry, fullTimeEmployees, description, website, phone, address, officers (name, title, age, pay, as Yahoo lists them), governanceRisk. ETFs and funds add fund (family, category, expense ratio), topHoldings, sectorWeightingsPercent and assetAllocationPercent. Crypto adds coin name, start date and whitepaper. |
statistics | enterpriseValue, enterpriseToRevenue, enterpriseToEbitda, pegRatio, priceToSalesTrailing12Months, beta, margins, returnOnAssets, returnOnEquity, totalCash, totalDebt, debtToEquity, currentRatio, freeCashflow, revenueGrowth, earningsGrowth, floatShares, sharesShort, shortRatio, heldPercentInsiders, heldPercentInstitutions, payoutRatio, exDividendDate, lastSplitFactor, fiscal dates, allTimeHigh. Ratios are fractions (0.27 = 27%). |
analysts | recommendationKey, recommendationMean, numberOfAnalysts, targetMeanPrice, targetMedianPrice, targetHighPrice, targetLowPrice, recommendationTrend (strong buy to strong sell, last 4 months), ratingChanges (25 latest upgrades and downgrades with firm and price target), estimates (EPS and revenue estimates for this and next quarter and year, EPS trend and revisions). |
earnings | nextEarningsDate, earningsCallDate, EPS and revenue estimates, epsHistory (actual vs estimate and surprise % for the last 4 quarters), quarterlyEps, yearlyRevenueEarnings, quarterlyRevenueEarnings, exDividendDate, dividendDate. |
financials | incomeStatement, balanceSheet and cashFlow, annual and/or quarterly. Each statement is a list of periods (periodEnd, periodType, currency) with every line item Yahoo shows, such as totalRevenue, grossProfit, operatingIncome, ebitda, netIncome, dilutedEPS, totalAssets, totalDebt, stockholdersEquity, operatingCashFlow, capitalExpenditure and freeCashFlow. |
history | One bar per day, week, month or intraday interval with date, open, high, low, close, adjClose and volume, plus dividends and splits in the range. |
The other result types are:
- News headline (
type: "news"):symbol,title,publisher,link,publishedAt,relatedTickers,thumbnailUrl,uuid. - Market list row (
type: "listQuote"):list,rank, and the same quote fields as above. - Search match (
type: "searchResult"):query,rank,symbol,name,quoteType,exchange,sector,industry. - Price bar (
type: "priceBar", when One row per price bar is on):symbol,date, OHLC,adjClose,volume, anddividendorspliton the bar where one happened.
How to scrape Yahoo Finance stock data
- Enter tickers in Tickers, for example
AAPL,MSFT,SPY,^GSPC,BTC-USD,EURUSD=X,GC=F,SAP.DEor7203.T. Yahoo Finance quote URLs work too. - Choose the sections you need. Quote, profile, statistics, analysts and earnings are on by default. Financial statements, historical prices and news are opt-in.
- Optionally add Market lists (gainers, losers, most active, trending and others) or Ticker search queries.
- Click Start, then download the results as JSON, CSV or Excel, or read them through the API.
Input example
{"tickers": ["AAPL", "NVDA", "SPY", "BTC-USD"],"includeFinancials": true,"financialsPeriod": "both","includeHistory": true,"historyStart": "2024-01-01","historyInterval": "1wk","includeNews": true,"maxNewsPerTicker": 10,"lists": ["day_gainers", "most_actives"],"maxResultsPerList": 25,"maxItems": 500}
Output example
A ticker result, shortened. Statement and history lists are cut to one entry here.
{"type": "ticker","symbol": "AAPL","name": "Apple Inc.","quoteType": "EQUITY","exchange": "NasdaqGS","currency": "USD","price": 336.64,"change": -3.78,"changePercent": -1.11039,"volume": 37821157,"marketCap": 4912984883200,"fiftyTwoWeekLow": 243.42,"fiftyTwoWeekHigh": 345.34,"trailingPE": 38.605507,"epsTrailingTwelveMonths": 8.72,"dividendYieldPercent": 0.32,"earningsDate": "2026-11-02T20:00:00Z","profile": {"sector": "Technology","industry": "Consumer Electronics","fullTimeEmployees": 150000,"website": "https://www.apple.com","officers": [{ "name": "Mr. Timothy D. Cook", "title": "Executive Chairman of the Board", "yearBorn": 1961 }]},"statistics": { "enterpriseValue": 4935528218624, "beta": 1.069, "profitMargins": 0.27618998, "returnOnEquity": 1.4875101 },"analysts": { "recommendationKey": "buy", "numberOfAnalysts": 39, "targetMeanPrice": 328.09, "targetHighPrice": 405.0 },"earnings": { "nextEarningsDate": "2026-11-02T20:00:00Z", "epsEstimateAvg": 1.9822 },"financials": {"annual": {"incomeStatement": [{ "periodEnd": "2025-09-30", "periodType": "12M", "currency": "USD", "totalRevenue": 416161000000, "grossProfit": 195201000000, "netIncome": 112010000000 }]}},"historyInterval": "1d","history": [{ "date": "2026-09-09", "open": 315.49, "high": 319.15, "low": 309.9, "close": 315.34, "adjClose": 315.34, "volume": 65640000 }],"dividends": [],"splits": [],"url": "https://finance.yahoo.com/quote/AAPL/","scrapedAt": "2026-10-10T01:09:14Z"}
A news headline:
{"type": "news","symbol": "AAPL","uuid": "7b0832eb-8bfa-315e-a3bd-5f68341692fb","title": "Why Apple (AAPL) Stock Is Trading Lower Today","publisher": "StockStory","link": "https://finance.yahoo.com/markets/stocks/articles/why-apple-aapl-stock-trading-231510875.html","publishedAt": "2026-10-09T23:15:10Z","relatedTickers": ["AAPL"],"newsQuery": "AAPL"}
How to download historical stock prices from Yahoo Finance
Turn on Historical prices. Set History from to a date (2015-01-01) or a period (5 years, 6 months, ytd, max) and pick an interval: daily, weekly, monthly or intraday (1 hour down to 1 minute). Closing prices are split-adjusted. adjClose is also adjusted for dividends, the same as Yahoo's "Adj Close" column. By default the bars are a history list inside each ticker result, so a full price history of one ticker costs one result. Turn on One row per price bar for a flat table, which is easier in CSV or Excel. In that mode each bar is one result.
Intraday data only goes back as far as Yahoo keeps it: 7 days for 1-minute bars, 60 days for 5 to 30 minutes, and 2 years for 1-hour bars.
How to get financial statements, analyst ratings and earnings
Turn on Financial statements and choose annual, quarterly or both. You get the same line items as the Financials, Balance Sheet and Cash Flow tabs on Yahoo Finance: usually 4 fiscal years or the last 5 quarters. Analyst ratings and price targets and Earnings are on by default. They share a single request per ticker with the profile and statistics, so they add no extra cost. Statements exist for stocks only. ETFs, funds and crypto get their own profile data instead.
How to get top gainers, losers and most active stocks
Pick one or more entries in Market lists: most active, top gainers, top losers, trending tickers, most added to watchlists, 52-week gainers and losers, undervalued growth stocks, growth technology stocks, undervalued large caps, aggressive small caps, most shorted stocks, top ETFs, most active ETFs, top mutual funds, and all, most active or top-gaining cryptocurrencies. Each entry is one result with its full quote. Results per list controls how many you get, up to the length of the list. Yahoo serves 250 entries per request.
Monitor changes on a schedule
Turn on Only new or changed items and save the input as a task with a daily or hourly Schedule in Apify. The actor then remembers which news headlines earlier runs returned and outputs only new ones. Headlines that were already delivered are not output again and are not charged. New items carry changeType: "new". Ticker results, list rows and search results are snapshots, so they are output on every run. If several schedules use the same tickers, give each one its own Monitoring key.
Does it need a Yahoo account or API key?
No. The actor uses Yahoo Finance's public web endpoints with the cookie and "crumb" that every visitor gets. Each proxy IP gets its own cookie and crumb, and throttled IPs are replaced automatically. Apify's default datacenter proxy is enough. No login is needed.
How much does it cost?
You pay $0.40 per 1,000 results, plus a small amount of Apify platform usage. A result is one ticker with all the sections you chose, one headline, one list row, one search match, or one price bar in row mode. There is no start fee. Use Max results to cap a run.
Integrations and API
Call the actor from Python, Node.js or any HTTP client with the Apify API, schedule it, or connect it to Google Sheets, Zapier, Make or n8n. AI agents can call it through the Apify MCP server. See the API tab for code snippets.
Is it legal to scrape Yahoo Finance?
The actor reads only public data that finance.yahoo.com shows to every visitor without logging in. That covers market data, company filings data and news headlines, plus the names and titles of company officers as Yahoo publishes them. It does not log in or access anything private. Market data and news remain the property of Yahoo and its data providers. You are responsible for using the data in line with Yahoo's terms and the law that applies to you. Many uses, such as research and personal analysis, are fine. Redistributing data commercially may need a license.
Support
Missing a field, or a ticker that doesn't work? Open an issue in the Issues tab. Issues are usually answered within a day.