MarketBeat Analyst Ratings & Price Target Scraper
Pricing
from $3.00 / 1,000 results
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
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
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,forecastedUpsidePercentanalystCount,buyCount,holdCount,sellCountstrongBuyRatingsCurrent,buyRatingsCurrent,holdRatingsCurrent,sellRatingsCurrent,strongSellRatingsCurrentforecastUrl,scrapedAt
Rating history record (recordType: "ratingHistory", one per analyst action):
ticker,exchange,date,brokerage,brokeragePerformanceStars,analystaction,oldRating,newRating,priceTarget,upsideDownsidePercentdetailsUrl,forecastUrl,scrapedAt
Input
| Field | Type | Default | Description |
|---|---|---|---|
tickers | array | – (required) | Ticker symbols to fetch; suggested value ["AAPL"] |
exchange | select | – (required) | Exchange the tickers trade on; suggested value NASDAQ |
includeRatingHistory | boolean | true | Also emit individual rating-action records |
maxRatingsPerTicker | integer | 50 | Cap 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.