Back to Twelve Data in Google Sheets
SheetXAI logo
Twelve Data logo
Twelve Data · Google Sheets Guide

Pull Analyst Consensus and Price Targets Into a Google Sheet Morning Briefing Dashboard

2026-05-15
5 min read

The Scenario

Monday morning. You cover 25 stocks. Your morning briefing goes to the investment committee at 8 AM. By 7:15, you need a table with analyst consensus ratings — buy/hold/sell counts, the mean price target, and whether EPS estimates have been moving up or down in the past 30 days — for every name in your coverage universe.

The person who used to pull this by hand left the firm last month. There's no replacement yet. It's now your job until something changes.

The bad version:

  1. Open a financial data terminal or the Twelve Data API console, pull the analyst recommendations for the first ticker, count the buy/strong buy/hold/sell/strong sell entries, note the mean price target, and paste five numbers into the right row.
  2. Separately hit the EPS revision endpoint for the same ticker, count the upward and downward revisions in the past 30 days, and add two more columns.
  3. Do this for all 25 tickers — 175 manual data entries before 7:15 AM, and that's before you've had time to actually read what the numbers mean.

The briefing doesn't get skipped. The process just gets worse.

The Easy Way: One Prompt in SheetXAI

SheetXAI is an AI agent inside your Google Sheet. It reads the 25 tickers in column A and, through its built-in Twelve Data integration, fetches analyst recommendations and EPS revision data for each name and writes the fields into the correct columns.

Fetch analyst consensus recommendations from Twelve Data for each ticker in column A. Write strong buy count into column B, buy count into column C, hold count into column D, sell count into column E, strong sell count into column F, and mean price target into column G. Then fetch EPS revision data for the past 30 days and write the number of upward revisions into column H and downward revisions into column I.

What You Get

  • Columns B through F: the raw count of analyst recommendations by rating category.
  • Column G: the mean price target across all active analyst ratings.
  • Column H: upward EPS revisions in the past 30 days.
  • Column I: downward EPS revisions in the past 30 days.
  • Any ticker with no analyst coverage noted in column B with NO COVERAGE so you don't mistake a blank for a missing pull.

What If the Data Is Not Quite Ready

If you want to add the consensus rating label (Strong Buy / Buy / Hold / Sell / Strong Sell) based on the count distribution

Fetch analyst recommendation counts from Twelve Data for each ticker in column A and write strong buy, buy, hold, sell, and strong sell counts into columns B through F. In column G, write the consensus label based on where the majority of ratings fall: if strong buy plus buy exceeds 60% of total ratings, write CONSENSUS BUY; if sell plus strong sell exceeds 40%, write CONSENSUS SELL; otherwise write MIXED.

If you want to compare the mean price target against current price to calculate implied upside

Fetch analyst consensus data from Twelve Data for each ticker in column A, including buy/hold/sell counts and mean price target, writing them into columns B through G. Fetch the current price from Twelve Data and write into column H. Calculate implied upside as (mean price target / current price) - 1 and write into column I.

If some tickers in your coverage list are international and use different analyst data sources

Fetch analyst recommendations from Twelve Data for each ticker in column A. For tickers with exchange codes in column B, pass the exchange code to scope the call. Write buy/hold/sell counts and mean price target into columns C through H. Flag any ticker where analyst count is below 3 with LOW COVERAGE in column I.

Kill-chain: pull consensus data, calculate a simple composite score, and sort the briefing sheet

Fetch analyst recommendation counts and mean price target from Twelve Data for each ticker in column A. Write counts into columns B through F, mean target into column G. Fetch current price and write into column H. Calculate a composite score: (strong buy count x 2 + buy count x 1 - sell count x 1 - strong sell count x 2) divided by total analyst count. Write the composite score into column I and implied price upside into column J. Sort the sheet from highest composite score to lowest so your top-rated names appear first.

Try It

Get the 7-day free trial of SheetXAI and open your coverage universe sheet with tickers in column A, then ask it to populate the full morning briefing table before the committee meets. Also see pulling fundamental data tables and the full Twelve Data overview.

Stop memorizing formulas.
Tell your spreadsheet what to do.

Join 4,000+ professionals saving hours every week with SheetXAI.

Learn more