Analyst estimates and revisions
Consensus estimates and their recorded revisions by company and fiscal period.
One row is
Consensus estimates and their recorded revisions by company and fiscal period
Example response
Trimmed real output. No key needed.
GET /v1/datasets/analyst-estimates/sample
Dates reflect the example, not current coverage.
{
"data": {
"providerId": "gloomberb-cloud",
"symbol": "AAPL",
"name": "Apple Inc.",
"currency": "USD",
"exchange": "NasdaqGS",
"priceTarget": {
"high": 405,
"median": 340,
"low": 215,
"average": 328.09384,
"current": 339.345,
"currency": "USD"
},
"recommendationRating": 6.988625000000001,
"recommendations": [
{
"period": "current month",
"strongBuy": 6,
"buy": 19,
"hold": 13,
"sell": 3,
"strongSell": 3
},
{
"period": "last month",
"strongBuy": 6,
"buy": 19,
"hold": 13,
"sell": 3,
"strongSell": 3
},
{
"period": "two months ago",
"strongBuy": 6,
"buy": 19,
"hold": 14,
"sell": 3,
"strongSell": 2
},
{
"period": "three months ago",
"strongBuy": 6,
"buy": 22,
"hold": 14,
"sell": 2,
"strongSell": 2
}
],
"ratings": [
{
"date": "2026-10-01",
"firm": "Morgan Stanley",
"action": "Lowers",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-10-01",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-09-29",
"firm": "Morgan Stanley",
"action": "Maintains",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-09-23",
"firm": "B of A Securities",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-09-18",
"firm": "Evercore ISI Group",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-09-17",
"firm": "B of A Securities",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-09-10",
"firm": "TD Cowen",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-09-10",
"firm": "Rosenblatt",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-09-10",
"firm": "B of A Securities",
"action": "Lowers",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-09-08",
"firm": "HSBC",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-09-08",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-09-02",
"firm": "Morgan Stanley",
"action": "Maintains",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-09-02",
"firm": "DA Davidson",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-09-01",
"firm": "Rosenblatt",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-08-17",
"firm": "Rothschild & Co",
"action": "Upgrade",
"current": "Buy",
"prior": "Neutral"
},
{
"date": "2026-08-10",
"firm": "Jefferies",
"action": "Downgrade",
"current": "Underperform",
"prior": "Hold"
},
{
"date": "2026-08-04",
"firm": "China Renaissance",
"action": "Downgrade",
"current": "Hold",
"prior": "Buy"
},
{
"date": "2026-07-31",
"firm": "JP Morgan",
"action": "Lowers",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-07-31",
"firm": "TD Cowen",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-07-31",
"firm": "DA Davidson",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-07-31",
"firm": "Wells Fargo",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-07-31",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-07-31",
"firm": "Rosenblatt",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-07-31",
"firm": "Barclays",
"action": "Lowers",
"current": "Underweight",
"prior": "Underweight"
},
{
"date": "2026-07-31",
"firm": "Goldman Sachs",
"action": "Lowers",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-07-31",
"firm": "Morgan Stanley",
"action": "Lowers",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-07-30",
"firm": "Baird",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-07-30",
"firm": "Argus Research",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-07-23",
"firm": "Morgan Stanley",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-07-17",
"firm": "HSBC",
"action": "Upgrade",
"current": "Buy",
"prior": "Hold"
},
{
"date": "2026-07-15",
"firm": "Bernstein",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-07-14",
"firm": "Keybanc",
"action": "Downgrade",
"current": "Underweight",
"prior": "Sector Weight"
},
{
"date": "2026-07-13",
"firm": "Citigroup",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-06-25",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-06-25",
"firm": "Evercore ISI Group",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-06-22",
"firm": "KGI Securities",
"action": "Downgrade",
"current": "Hold",
"prior": "Outperform"
},
{
"date": "2026-06-18",
"firm": "B of A Securities",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-06-09",
"firm": "TD Cowen",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-06-09",
"firm": "Maxim Group",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-06-09",
"firm": "Rosenblatt",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-06-09",
"firm": "Morgan Stanley",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-06-09",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-06-05",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-05-26",
"firm": "B of A Securities",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-05-14",
"firm": "Tigress Financial",
"action": "Raises",
"current": "Strong Buy",
"prior": "Strong Buy"
},
{
"date": "2026-05-14",
"firm": "Evercore ISI Group",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-05-08",
"firm": "Wedbush",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-05-01",
"firm": "UBS",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-05-01",
"firm": "Maxim Group",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-05-01",
"firm": "TD Cowen",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-05-01",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-05-01",
"firm": "Barclays",
"action": "Raises",
"current": "Underweight",
"prior": "Underweight"
},
{
"date": "2026-05-01",
"firm": "Wells Fargo",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-05-01",
"firm": "DA Davidson",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-05-01",
"firm": "Rosenblatt",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-05-01",
"firm": "Morgan Stanley",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-05-01",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-04-28",
"firm": "UBS",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-04-21",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-04-21",
"firm": "Rosenblatt",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-04-17",
"firm": "BNP Paribas",
"action": "Upgrade",
"current": "Outperform",
"prior": "Neutral"
},
{
"date": "2026-04-14",
"firm": "B of A Securities",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-03-31",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-03-27",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-03-23",
"firm": "Morgan Stanley",
"action": "Maintains",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-03-23",
"firm": "B of A Securities",
"action": "Lowers",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-03-05",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-03-05",
"firm": "Rosenblatt",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-03-03",
"firm": "Barclays",
"action": "Raises",
"current": "Underweight",
"prior": "Underweight"
},
{
"date": "2026-02-17",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-01-30",
"firm": "Jefferies",
"action": "Raises",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-01-30",
"firm": "Maxim Group",
"action": "Upgrade",
"current": "Buy",
"prior": "Hold"
},
{
"date": "2026-01-30",
"firm": "JP Morgan",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-01-30",
"firm": "TD Cowen",
"action": "Maintains",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-01-30",
"firm": "Barclays",
"action": "Raises",
"current": "Underweight",
"prior": "Underweight"
},
{
"date": "2026-01-30",
"firm": "DA Davidson",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-01-30",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-01-30",
"firm": "Needham",
"action": "Reiterated",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-01-30",
"firm": "Rosenblatt",
"action": "Raises",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2026-01-26",
"firm": "JP Morgan",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2026-01-26",
"firm": "Jefferies",
"action": "Lowers",
"current": "Hold",
"prior": "Hold"
},
{
"date": "2026-01-20",
"firm": "Citigroup",
"action": "Lowers",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2026-01-20",
"firm": "Evercore ISI Group",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-01-13",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-01-12",
"firm": "Wedbush",
"action": "Maintains",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2026-01-09",
"firm": "Evercore ISI Group",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2025-12-17",
"firm": "Morgan Stanley",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2025-12-09",
"firm": "Citigroup",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2025-12-08",
"firm": "Evercore ISI Group",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2025-12-08",
"firm": "Wedbush",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2025-12-05",
"firm": "CLSA",
"action": "Raises",
"current": "Outperform",
"prior": "Outperform"
},
{
"date": "2025-12-02",
"firm": "Loop Capital",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2025-11-04",
"firm": "Rosenblatt",
"action": "Maintains",
"current": "Neutral",
"prior": "Neutral"
},
{
"date": "2025-10-31",
"firm": "Wells Fargo",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2025-10-31",
"firm": "Barclays",
"action": "Raises",
"current": "Underweight",
"prior": "Underweight"
},
{
"date": "2025-10-31",
"firm": "Citigroup",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2025-10-31",
"firm": "JP Morgan",
"action": "Raises",
"current": "Overweight",
"prior": "Overweight"
},
{
"date": "2025-10-31",
"firm": "Goldman Sachs",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
},
{
"date": "2025-10-31",
"firm": "Jefferies",
"action": "Upgrade",
"current": "Hold",
"prior": "Underperform"
},
{
"date": "2025-10-31",
"firm": "TD Cowen",
"action": "Raises",
"current": "Buy",
"prior": "Buy"
}
],
"earningsEstimates": [
{
"date": "2026-09-30",
"period": "current quarter",
"analysts": 27,
"currency": "USD",
"average": 1.97865,
"low": 1.93,
"high": 2.07,
"yearAgo": 1.85,
"growth": 0.0695,
"revisions": {
"up7Days": 1,
"down7Days": 0,
"up30Days": 7,
"down30Days": 14,
"currency": "USD"
},
"trend": {
"current": 1.97865,
"sevenDaysAgo": 1.97754,
"thirtyDaysAgo": 1.97656,
"sixtyDaysAgo": 1.97549,
"ninetyDaysAgo": 2.00836
},
"trendCurrency": "USD"
},
{
"date": "2026-12-31",
"period": "next quarter",
"analysts": 22,
"currency": "USD",
"average": 2.90586,
"low": 2.56,
"high": 3.42,
"yearAgo": 2.84,
"growth": 0.0232,
"revisions": {
"up7Days": 0,
"down7Days": 1,
"up30Days": 1,
"down30Days": 2,
"currency": "USD"
},
"trend": {
"current": 2.90586,
"sevenDaysAgo": 2.90313,
"thirtyDaysAgo": 2.89268,
"sixtyDaysAgo": 2.90908,
"ninetyDaysAgo": 2.94829
},
"trendCurrency": "USD"
},
{
"date": "2026-09-30",
"period": "current year",
"analysts": 39,
"currency": "USD",
"average": 8.82022,
"low": 8.28,
"high": 8.94,
"yearAgo": 7.46,
"growth": 0.1823,
"revisions": {
"up7Days": 1,
"down7Days": 2,
"up30Days": 3,
"down30Days": 2,
"currency": "USD"
},
"trend": {
"current": 8.82022,
"sevenDaysAgo": 8.81945,
"thirtyDaysAgo": 8.81228,
"sixtyDaysAgo": 8.80411,
"ninetyDaysAgo": 8.7595
},
"trendCurrency": "USD"
},
{
"date": "2027-09-30",
"period": "next year",
"analysts": 40,
"currency": "USD",
"average": 9.57579,
"low": 8.69,
"high": 10.67,
"yearAgo": 8.82022,
"growth": 0.0857,
"revisions": {
"up7Days": 0,
"down7Days": 1,
"up30Days": 5,
"down30Days": 3,
"currency": "USD"
},
"trend": {
"current": 9.57579,
"sevenDaysAgo": 9.57829,
"thirtyDaysAgo": 9.56691,
"sixtyDaysAgo": 9.55399,
"ninetyDaysAgo": 9.68261
},
"trendCurrency": "USD"
}
],
"revenueEstimates": [
{
"date": "2026-09-30",
"period": "current quarter",
"analysts": 27,
"currency": "USD",
"average": 113624521680,
"low": 112248100000,
"high": 117219700000,
"yearAgo": 102466000000,
"growth": 0.1089
},
{
"date": "2026-12-31",
"period": "next quarter",
"analysts": 19,
"currency": "USD",
"average": 154392842060,
"low": 131500061129,
"high": 170414000000,
"yearAgo": 143756000000,
"growth": 0.074
},
{
"date": "2026-09-30",
"period": "current year",
"analysts": 40,
"currency": "USD",
"average": 477854311900,
"low": 471800000000,
"high": 484000000000,
"yearAgo": 416161000000,
"growth": 0.14819999
},
{
"date": "2027-09-30",
"period": "next year",
"analysts": 40,
"currency": "USD",
"average": 527983970540,
"low": 497900000000,
"high": 594863000000,
"yearAgo": 477854311900,
"growth": 0.104899995
}
],
"fetchedAt": "2026-10-08T17:00:18.118Z"
},
"meta": {
"dataset": "analyst-estimates",
"asOf": "2026-10-08T17:00:18.118Z",
"source": [
{
"id": "market-data",
"attribution": "Exchange and market data providers",
"licence": "Use subject to Gloom Datasets terms"
}
],
"historyStarts": null,
"coverage": null,
"lastUpdated": "2026-10-08T17:00:18.118Z"
}
}Routes
Base URL https://api.gloom.sh. Send a key with each call; the key's account needs a plan.
GET /v1/analyst-estimates/{symbol}10 credits
Analyst earnings and revenue estimates. Reads the existing dataset service and needs a key on an account with a plan; every plan reads every live dataset in full. Cached market reads can refresh their source data. Unknown, empty and repeated parameters are rejected. History and coverage metadata are null when the stored service cannot establish them.
- Parameter
symbol- In
path, required
- Type
string
^[A-Za-z0-9.:-]{1,32}$- Notes
Company symbol; normalized to uppercase.
- Parameter
exchange- In
query
- Type
string
| Parameter | In | Type | Notes |
|---|---|---|---|
| path, required | string | Company symbol; normalized to uppercase. |
| query | string |
- Credits: 10 (evidence x2)
- Plans: Basic, Desk, Enterprise
GET /v1/analyst-estimates/{symbol}/revisions4 credits
Analyst estimate revision history. Reads the existing dataset service and needs a key on an account with a plan; every plan reads every live dataset in full. Cached market reads can refresh their source data. Unknown, empty and repeated parameters are rejected. History and coverage metadata are null when the stored service cannot establish them.
- Parameter
symbol- In
path, required
- Type
string
^[A-Za-z0-9.:-]{1,32}$- Notes
Company symbol; normalized to uppercase.
- Parameter
exchange- In
query
- Type
string
- Parameter
from- In
query
- Type
date,
YYYY-MM-DD- Notes
Valid calendar date (YYYY-MM-DD). from must be on or before to.
- Parameter
to- In
query
- Type
date,
YYYY-MM-DD- Notes
Valid calendar date (YYYY-MM-DD). from must be on or before to.
| Parameter | In | Type | Notes |
|---|---|---|---|
| path, required | string | Company symbol; normalized to uppercase. |
| query | string | |
| query | date, | Valid calendar date (YYYY-MM-DD). from must be on or before to. |
| query | date, | Valid calendar date (YYYY-MM-DD). from must be on or before to. |
- Credits: 4 (history x2)
- Plans: Basic, Desk, Enterprise
Meta fields
- Field
dataset- Here
The dataset id
- In the example
"analyst-estimates"
- Field
asOf- Here
The observation date established by the service; otherwise null
- In the example
"2026-10-08T17:00:18.118Z"
- Field
source- Here
Attribution and usage terms of each source
- In the example
1 source
- Field
historyStarts- Here
Earliest stored history when established by the service; otherwise null.
- In the example
null, not stated yet
- Field
coverage- Here
Service-established coverage; null when unavailable.
- In the example
null
- Field
lastUpdated- Here
The source update time established by the service; otherwise null
- In the example
"2026-10-08T17:00:18.118Z"
| Field | Here | In the example |
|---|---|---|
| The dataset id |
|
| The observation date established by the service; otherwise null |
|
| Attribution and usage terms of each source | 1 source |
| Earliest stored history when established by the service; otherwise null. | null, not stated yet |
| Service-established coverage; null when unavailable. | null |
| The source update time established by the service; otherwise null |
|
Sources
- Source
Exchange and market data providers
- Usage terms
Use subject to Gloom Datasets terms
| Source | Usage terms |
|---|---|
Exchange and market data providers | Use subject to Gloom Datasets terms |
Errors
These routes can answer 400, 401, 402, 403, 404, 429, 503. See Errors for the codes.
Gloom Datasets reads stored data only: a call never starts a collection.