The analyst ratings API.

Analyst coverage in the two shapes it’s actually used: the current consensus — rating, price target, upside, estimates — as columns on every ticker’s row, and the discrete events underneath — every upgrade, downgrade, initiation and target change, back to 2012. Screen on the state, read the history, or get pushed when either changes.

Free plan. Every ticker, every signal, real-time data, all-time history.

what you get

The capability, itemized.

ConsensusRating, consensus price target with high/low range, and upside percent — current, per ticker
The event feedEvery upgrade, downgrade, initiation and price-target change as discrete events with firm and analyst, back to 2012
EstimatesEPS and revenue estimates ahead of the report, with 30-day revision counts up and down
GuidanceCompany guidance actions — raised, lowered, maintained — as dated, screenable state
ScreeningEvery analyst field is a SQL column: recent upgrades, target upside over 20%, bullish consensus — one call, whole market
FlagsNamed conditions precomputed — recent_upgrade, bullish_consensus, target_upside_above_25pct — usable in any screen or alert

Every read runs in three tenses: live, as of any past moment (add ?asof=; no look-ahead, no survivorship bias), or on push — the same query as a webhook that fires when the answer changes. Under it sits the computed table: every US equity plus rates, FX and crypto, every signal precomputed and refreshed continuously, all-time history. Data included — there’s no feed to bring.

one call

The state and the events, one call each.

Recently upgraded names where the street still sees 20%+ upside — asked of the whole market:

POST /v2/scan
{ "q": "recent_upgrade AND analyst_target_upside_pct > 20",
  "columns": "ticker,analyst_consensus_rating,analyst_consensus_target_price,
              analyst_target_upside_pct,analyst_count_total" }

// → { "results": [ { "ticker": "ADI", "analyst_consensus_rating": "buy",
//      "analyst_consensus_target_price": 453.95,
//      "analyst_target_upside_pct": 22.05, "analyst_count_total": 19 }, … ] }

The events underneath are their own read: GET /v2/events?kind=analyst&ticker=NVDA returns each action with firm, analyst, rating and target — the same feed that powers the flags.

Ready to wire it into something? Build a stock alert bot walks it end to end. Reference: analyst events · the schema · the SQL surface.

questions

FAQ

What analyst data does the API include?

Both layers. Per ticker: consensus rating and its numeric value, analyst counts by recommendation, consensus price target with the high/low range and upside percent, EPS and revenue estimates with revision counts, and guidance state. As events: every upgrade, downgrade, initiation and price-target change with firm and analyst attribution, back to 2012.

Can I get an alert when a stock is upgraded?

Yes — the flags are screenable conditions, so recent_upgrade (or any combination, like an upgrade plus a target raise) can drive a webhook: subscribe the screen and the push fires when a ticker starts matching. What an upgrade means for your strategy stays your system’s call — we deliver the state change.

Why does a trading system need computed state?

Because every action it takes — an alert, a screen result, an order — is a condition over derived values: RSI below 30, price above the 200-day average, volume three times normal. Raw data doesn’t contain those. Something has to compute and refresh them for every symbol, continuously, and keep the history so past answers are reproducible. That’s a data pipeline, not a feature — you either build and operate it, or query one that already runs.

How does Tickerbot work with AI agents?

Every call here is also a native tool call: install the MCP server and Claude, ChatGPT, Cursor, or any MCP runtime queries the market directly. Computed state is what makes that work well: hand a model raw data and its context window fills with math to do; hand it computed answers and the context goes to decisions. A scan returns the tickers matching your condition: a list, not a workload.

How does Tickerbot pricing work?

The Free plan needs no card and carries the full data side: every ticker, every signal, real-time data, all-time history and as-of queries, at 10,000 calls a month and 60 a minute. Paid plans start at $29/mo, remove the monthly cap, and raise the rate limit; webhooks and streaming come with them. Data depth is never a tier lever: every plan sees the same table.

in the wild

900K+ calls served, and counting.

What people are saying.

“dude. whoah.”
President, ShopifyHarley Finkelstein
“Tickerbot is insane. It turns Claude into a quant.”
Quantitative Finance MScLounes Vennema
“Best value for hobbyists and advanced traders alike.”
AI Engineer, ImergeRon Reid

get started

Get a key. Run a scan.

Free plan. Every ticker, every signal, real-time data, all-time history.