Obtain the analysts’ price targets of each company and the measures they are read with. A price target is the share price an analyst expects in about twelve months; the consensus target relative to today’s price shows how much upside analysts see, the range of the targets how much they disagree, and the change in the average target whether they have been raising or cutting their targets.

The rows are:

  • Target Consensus, Target Median, Target High and Target Low: the current targets.
  • Price: the latest traded share price (the quote).
  • Upside: Target Consensus / Price − 1.
  • Dispersion: (Target High − Target Low) / Target Consensus. Dispersion in analysts’ forecasts is a measure of disagreement, studied for earnings forecasts by Diether, Malloy and Scherbina (2002).
  • Revision Momentum: Last Quarter Average / Last Year Average − 1, positive when the targets published over the last quarter are higher than those of the last year.
  • Last Month, Last Quarter, Last Year and All Time Count and Average: the number of targets published in each window and their average.

The targets are today’s: they are not filtered to this Toolkit instance’s start_date and end_date. The targets as they were published over time come from get_price_target_history.

Also known as: analyst price target, consensus price target, target upside.

Price Targets in Python or via the MCP

Install the Finance Toolkit with:

pip install financetoolkit -U

Then call get_price_targets as shown below.

from financetoolkit import Toolkit

toolkit = Toolkit(
    ["AAPL", "NVDA", "MSFT"],
    api_key="FINANCIAL_MODELING_PREP_KEY",
    start_date="2025-01-01",
    end_date="2025-12-31",
)

toolkit.get_price_targets()

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

What price targets do analysts have for Apple, Nvidia and Microsoft, and how much upside do they imply?

Which returns:

  AAPL NVDA MSFT
Target Consensus 344.46 339.17 611.74
Target Median 355 325 625
Target High 400 515 750
Target Low 245 210 440
Price 344.17 181.6 535.93
Upside 0.0008 0.8677 0.1415
Dispersion 0.45 0.8993 0.5068
Revision Momentum 0.0557 0.0891 0.0824
Last Month Count 12 0 20
Last Month Average 349.42 nan 643.95
Last Quarter Count 18 25 30
Last Quarter Average 348.65 332.32 629.23
Last Year Count 61 83 92
Last Year Average 330.27 305.12 581.32
All Time Count 275 343 299
All Time Average 239.2 152.9 466.96

Parameters

get_price_targets 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 tickers to keep in the result. Invalid names are reported and ignored. Defaults to None, which keeps every ticker.None, which keeps every ticker
Share