MarketBeat Analyst Ratings & Price Target Scraper avatar

MarketBeat Analyst Ratings & Price Target Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
MarketBeat Analyst Ratings & Price Target Scraper

MarketBeat Analyst Ratings & Price Target Scraper

Scrape MarketBeat.com analyst ratings pages for any stock ticker - consensus rating, consensus price target, forecasted upside, rating breakdown, and the full history of individual analyst rating actions (brokerage, analyst, action, rating change, price target, upside/downside). No login required.

Pricing

from $3.00 / 1,000 results

Rating

0.0

(0)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 hours ago

Last modified

Share

Scrape MarketBeat.com analyst-ratings & price-target pages for any stock ticker. Returns the Wall Street consensus rating, consensus price target, forecasted upside/downside, the buy/hold/sell breakdown, and the full visible history of individual analyst rating actions (brokerage, action, rating change, price target, upside/downside). No login, no API key, no proxy required.

What this actor does

  • Consensus summary — consensus rating (e.g. "Moderate Buy"), consensus price target, forecasted upside %, analyst count, buy/hold/sell breakdown
  • Rating history — one record per individual analyst rating action: date, brokerage, analyst, action, old→new rating, price target, upside/downside %, details link
  • Multi-ticker, multi-exchange — batch any number of tickers on one exchange per run
  • Typed not-found records — tickers MarketBeat has no page for are returned as error records, never silently dropped
  • Empty fields are omitted

Output

Consensus summary record (recordType: "consensusSummary"):

  • ticker, exchange, consensusRating, consensusPriceTarget, forecastedUpsidePercent
  • analystCount, buyCount, holdCount, sellCount
  • strongBuyRatingsCurrent, buyRatingsCurrent, holdRatingsCurrent, sellRatingsCurrent, strongSellRatingsCurrent
  • forecastUrl, scrapedAt

Rating history record (recordType: "ratingHistory", one per analyst action):

  • ticker, exchange, date, brokerage, brokeragePerformanceStars, analyst
  • action, oldRating, newRating, priceTarget, upsideDownsidePercent
  • detailsUrl, forecastUrl, scrapedAt

Input

FieldTypeDefaultDescription
tickersarray– (required)Ticker symbols to fetch; suggested value ["AAPL"]
exchangeselect– (required)Exchange the tickers trade on; suggested value NASDAQ
includeRatingHistorybooleantrueAlso emit individual rating-action records
maxRatingsPerTickerinteger50Cap on rating-history records per ticker (1–200)

Example: mega-cap tech consensus + history

{
"tickers": ["AAPL", "MSFT", "NVDA"],
"exchange": "NASDAQ",
"includeRatingHistory": true,
"maxRatingsPerTicker": 50
}

Example: consensus only, no history

{
"tickers": ["T"],
"exchange": "NYSE",
"includeRatingHistory": false
}

Use cases

  • Investment research — pull Wall Street consensus rating and price target before making a trade decision
  • Sentiment tracking — monitor how a stock's buy/hold/sell breakdown shifts over time
  • Brokerage comparison — see which brokerages are bullish vs. bearish on a given ticker
  • Portfolio screening — batch-fetch consensus ratings across a watchlist of tickers
  • Financial content & newsletters — source fresh analyst-rating data for market commentary

Data source

Data is parsed directly from MarketBeat's public, freely accessible stock forecast pages (marketbeat.com/stocks/{exchange}/{ticker}/forecast/). No account or subscription is required to view this data.

FAQs

Do I need a MarketBeat account? No — the consensus rating, price target, and visible rating-action history are all publicly accessible without login.

What happens for an invalid ticker/exchange combination? MarketBeat redirects to a generic listing page for unknown tickers; this actor detects that redirect and emits a tickerNotFound error record instead of failing silently.

Why do some rating-history rows have no price target? MarketBeat itself doesn't always publish a price target for every individual analyst action (e.g. a coverage initiation without a stated target) — those fields are simply omitted rather than filled with a placeholder.