See which deals went dark before you commit the forecast

Open one board before every forecast call to see how long each deal has been silent, who has actually joined the calls, and where the risk really sits.

App
GongHubSpotSlackSalesOperationsMeeting WorkflowsAI Reports
PromptCreate

Build me a deal review board that I open before every forecast call and pipeline review. The whole point is the join: one row per open deal showing what the CRM says about it, sitting next to what actually happened on the calls. This is a surface a manager opens on a cadence and works through in a meeting, not an alerting workflow, so nothing here runs on a schedule and nothing sends a notification on its own.

Deal data. Use HubSpot Search Deals to pull the open deals in the pipeline the board is pointed at, with amount, stage, close date, owner and associations. Use List Pipelines so stages render as their real names rather than internal stage ids. Resolve each deal's associated company with Get Company, since I need the company name and domain for call matching, and its associated contacts with Batch Read Contacts, since I need their email addresses. Use List Owners to turn the deal owner id into a rep's name.

Call data. Use Gong List Calls Extensive to build the call history behind the board, requesting the content selectors that expose call parties, duration, topics and trackers. Fetch this in batches that cover all the deals visible on the board at once, over a rolling window such as the last 180 days, then match calls to deals in the app. Do not issue one request per row.

Matching rules. Match a call to a deal when a call participant's email matches one of the deal's associated contact emails, or when a participant's email domain matches the associated company domain. Where Gong already carries CRM context on the call, prefer that association over the email match. When a buyer joins from a personal address such as gmail.com, keep the call if another participant on that same call already matched the account, and mark the row as an inferred match so I know the link is softer. Dropping those calls would understate coverage on exactly the deals I most need to inspect.

Columns computed from the join. Beyond amount, stage, close date and owner, every row carries the four things the CRM cannot tell me: the date of the last customer call, days dark, total calls on the deal, and the number of distinct customer side participants who have ever joined a call. Days dark is measured from the last call that actually had a customer side participant on it, never from CRM last activity, which is polluted by automated email. Internal calls about the deal must not reset the clock. Customer side means participants who are not internal Gong users and whose email domain is not one of our own. Count distinct participants by deduplicating on email across the deal's entire call history, not per call.

Risk flags. Two flags matter most and should be visible on the row itself. First, a deal with a close date inside the current month and no customer call in the last 14 days, which is a deal being forecast on paper but not in conversation. Second, single threading, meaning a deal above a six figure amount threshold where only one distinct customer side participant has ever appeared on a call. Both thresholds, the 14 days and the deal size, are settings stored in the app and editable from it, and changing them re-evaluates every row.

Working the board. The main view is a table, with a kanban grouping by stage as an alternative if it renders cleanly. I filter by rep, by stage, and by close month, and I sort by days dark or by amount at risk, so I can open the review on the biggest exposed deals or on the quietest ones depending on the meeting.

The deal drawer. Clicking a deal opens a drawer with its full call history in reverse date order. Each call shows the participants split into our side and the customer side, the duration, and the topics or trackers that came up on that call. Any call expands to read its transcript, fetched on demand with Gong Get Call Transcripts rather than up front, so opening the board never pulls transcripts for the whole pipeline.

Embedded agent. Every deal has a Prep this deal review button that kicks off a background agent for that one deal. The agent reads the recent calls on the deal, pulling transcripts with Gong Get Call Transcripts, and writes a review brief covering five things: what changed since the last review, the risks and objections the buyer raised, who the economic buyer appears to be based on who has actually shown up and what they said, the open questions nobody has answered yet, and the committed next steps with dates where they were stated out loud. When a previous brief already exists on that deal, the agent reads it first so that what changed since last review is a real delta rather than a fresh summary.

Where the brief lands. The finished brief saves on the deal inside the app, not just in the session, so the whole review team sees the same brief and it is still sitting there at the next review with the date it was generated. Two buttons act on a finished brief. One posts it to a Slack channel ahead of the meeting with Slack Send a Message, including the deal name, amount, close date, owner, the risk flags and the brief itself. The other writes the agreed next step back onto the deal record with HubSpot Update Deal, showing me the exact value before it saves.

Rate limits to respect. Gong allows 3 requests per second and 10,000 per day per company, so batch call fetches across all visible deals rather than firing one request per row, cache what has already been fetched within the session, and fetch transcripts only when a call is expanded or an agent run needs them. A manager loading a 60 deal forecast view should not be able to exhaust the day's budget in one page load.

Framing and copy. Write the on screen copy for a sales manager running a forecast meeting, not for an analyst reading a report. The board exists to answer two questions the CRM keeps getting wrong: when did we last actually speak to this buyer, and how many people on their side have ever been in the room. A deal with no matched calls should read as no recorded calls found, never as proof that nobody spoke to the customer. If I run Salesforce instead of HubSpot, the same board works against opportunities using Get Many Opportunities and Get Opportunity in place of the HubSpot deal reads.

What does this prompt do?

  • Lines up every open deal with its amount, stage, close date and owner, then adds the columns your CRM cannot give you: the date of the last customer call, how many days since anyone actually talked to them, total calls on the deal, and how many different people on the customer side have ever joined one.
  • Flags the risks that get missed in a fast review, including a deal closing this month with no call in 14 days, and a six figure deal where only one contact has ever been on a call, which is the single threading warning managers usually catch too late.
  • Click any deal to open its full call history, each call showing who was on it, how long it ran, and the topics that came up, and expand any call to read the transcript.
  • A Prep this deal review button hands the deal to an assistant that reads the recent calls and writes a brief covering what changed since the last review, the risks and objections raised, who the economic buyer appears to be, the open questions nobody has answered, and the committed next steps.

What do I need to use this?

  • A Gong account that can see the calls and transcripts you want the board to read
  • A HubSpot login with access to the deals, companies, contacts and pipelines you review
  • A Slack workspace, if you want to post the brief to a channel ahead of the meeting
  • Worth knowing before you start: the board is built from calls recorded in Gong, so a deal with nothing matched means no recorded call was found, never proof that nobody spoke to the customer

How can I customize it?

  • Change the 14 day dark threshold and the deal size that triggers the single threading warning to match how your business actually sells
  • Point the board at a different pipeline, rep, or close month depending on whether you are running a team forecast or a single rep's review
  • Choose which Slack channel the briefs post to, and whether the agreed next step also writes back onto the deal record
  • Using Salesforce rather than HubSpot? The same board works against your opportunities instead of HubSpot deals

FAQs

How does the board decide which calls belong to which deal?
It matches calls to a deal using the company and the contact email addresses already on that deal, so a call with someone from acme.com lands on the Acme deal. Every matched call is listed in the deal drawer, so you can always check the board's work rather than trusting a number.
What exactly does days dark mean?
Days since the last call that actually had someone from the customer side on it. It deliberately ignores your CRM's last activity date, which automated emails and marketing sends keep resetting, and it ignores internal calls about the deal, since talking to each other is not the same as talking to the buyer.
How is this different from the deal board already in Gong?
This one is built on the join. It puts your pipeline fields next to call reality, counts how many distinct people on the customer side have ever joined a call, and measures silence from real call recency. You also get the full call history in a drawer with transcripts, and a written review brief you can post to Slack or save back onto the deal.
Where does the brief end up?
It saves on the deal inside the app, so the whole review team sees the same brief and it is still there at the next review. From there one button posts it to your Slack channel before the meeting, and another writes the agreed next step back onto the deal record in your CRM.
Will it hold up with a large pipeline?
Yes. Call data is fetched in batches across all the deals on screen rather than one request per row, which keeps the board within the limits Gong allows and stops a big forecast view from crawling.

Related templates

Look up any GetResponse contact beside their HubSpot deals

Type an email and see every list someone is on, what they opened and clicked, and their open deals, without anyone opening GetResponse.

GetResponse
HubSpot
App
Investor update studio that builds your board deck monthly

Open one screen each month to see your real numbers, write the commentary yourself, and generate a board deck you can send to investors.

Gamma
Stripe
HubSpot
+1
App
Customer story studio: turn closed won deals into case studies

A board that surfaces the customers ready for a case study, keeps the proof in one place, and builds a shareable story page when you say go.

Gamma
HubSpot
Slack
App
Search what customers actually say across your Gong calls

One screen where sales, success, and marketing can search every call transcript by keyword, watch mention trends, and share AI summaries to Slack.

Gong
Slack Bot
App
A weekly 1:1 coaching board built on Gong scorecard trends

See every rep's scorecard average, call stats and direction of travel on one screen, then prep the 1:1 with a brief you can send them.

Gong
Slack
Google Sheets
App
Recognition wall of custom kudos cards, plus who gets missed

Every kudos your team has ever sent, as illustrated cards in one grid, with a quiet this quarter list so praise stops landing on the same five people.

Generate Image
Slack
Google Drive
App

Stop running forecast calls on stale CRM data.

See how long every deal has really been silent, and who has actually been in the room, before you commit the number.