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
| Consensus | Rating, consensus price target with high/low range, and upside percent — current, per ticker |
| The event feed | Every upgrade, downgrade, initiation and price-target change as discrete events with firm and analyst, back to 2012 |
| Estimates | EPS and revenue estimates ahead of the report, with 30-day revision counts up and down |
| Guidance | Company guidance actions — raised, lowered, maintained — as dated, screenable state |
| Screening | Every analyst field is a SQL column: recent upgrades, target upside over 20%, bullish consensus — one call, whole market |
| Flags | Named 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
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
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.
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.
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.
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.
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
What people are saying.
“dude. whoah.”
“Tickerbot is insane. It turns Claude into a quant.”
“Best value for hobbyists and advanced traders alike.”
get started
Free plan. Every ticker, every signal, real-time data, all-time history.