Obtain every price target analysts published for each company: per date and analyst company the target (adjusted for stock splits), the share price when it was published and the upside it implied at that moment. Following the targets over time shows how analysts revise their expectations, and unlike today’s consensus each row only uses what was known on its date.

Automatically filtered to this Toolkit instance’s start_date and end_date.

Also known as: price target changes, analyst target revisions, price target news.

Price Target History in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_price_target_history as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["NVDA"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2025-11-01",
    end_date="2025-11-30",
)

toolkit.get_price_target_history()

Or, after setting up the Finance Toolkit MCP, ask:

Which price targets did analysts set for Nvidia in November 2025?

Which returns:

  Price Target Price When Posted Implied Upside
(‘2025-11-03’, ‘Loop Capital Markets’) 350 202.49 0.7285
(‘2025-11-14’, ‘Wells Fargo’) 265 186.52 0.4208
(‘2025-11-20’, ‘Barclays’) 275 194.17 0.4163
(‘2025-11-20’, ‘Bernstein’) 275 186.52 0.4744
(‘2025-11-20’, ‘Deutsche Bank’) 215 186.52 0.1527
(‘2025-11-20’, ‘Evercore ISI’) 352 184.615 0.9067
(‘2025-11-20’, ‘Jefferies’) 250 195.096 0.2814
(‘2025-11-20’, ‘KeyBanc’) 275 189.96 0.4477
(‘2025-11-20’, ‘Mizuho Securities’) 245 184.615 0.3271
(‘2025-11-20’, ‘Morgan Stanley’) 235 186.52 0.2599
(‘2025-11-20’, ‘Raymond James’) 272 180.64 0.5058
(‘2025-11-20’, ‘Robert W. Baird’) 275 186.52 0.4744
(‘2025-11-20’, ‘Susquehanna’) 250 186.52 0.3403

Parameters

get_price_target_history accepts the following parameters.

ParameterTypeDescriptionExample
overwriteboolDefines whether to overwrite the existing data. Defaults to False.True
roundingintDefines the number of decimal places to round the data to. Defaults to None, which uses the rounding of the Toolkit (4 unless set otherwise).2
show_columnslist[str] | NoneA list of column names to keep in the result. Invalid names are reported and ignored. Defaults to None, which keeps every column.None, which keeps every column
Share