Competitive battlecard workspace ranked by open pipeline

See every competitor battlecard next to the number of open deals that name that competitor, so the cards carrying real pipeline get refreshed first.

App
GuruHubSpotSlack BotSalesOperationsResearch & MonitoringContent Generation
PromptCreate

I want a competitive enablement workspace. Our enablement lead should be able to open one screen and see every competitor battlecard we keep in Guru sitting next to how much pipeline actually depends on it, and our reps should get a stripped down read only version of the same content they can open right before a call.

The main view is a coverage board with one row per competitor. Each row shows the battlecard we have in Guru, found with Search Cards against the competitive collection the lead picks (use List Collections so they can choose that collection in settings) and loaded in full with Get Card, along with that card's last verified date and its current owner. Beside it, show the number of open HubSpot deals that name the competitor and the combined value of those deals. Sort the board by that demand so the cards backing the most pipeline float to the top.

The demand number comes from HubSpot deal data using Search Deals: run a full text query for the competitor name restricted to deals that are still open, count the results and total their amounts. This matters, so be strict about it: Guru has no analytics operations available here, so never rank or score cards by card views, knowledge base search counts, or any other Guru usage signal. Open deal value is the only demand signal on this board.

Keep a tracked competitor list in the app. Seed it from the battlecard titles in the chosen collection, and let the lead add competitor names by hand. When a competitor appears in open deals but has no matching card in Guru, show it as a coverage gap row pinned above the normal rows, in its own visual state, with the deal count and value that is currently going unsupported. That gap list is the point of the board as much as the ranking is.

Clicking a row opens a detail view with the full battlecard content from Get Card, the last verified date called out with a stale warning when it is older than the review window the lead sets (default 90 days), and the list of open deals behind the number so the lead can see exactly which deals are riding on this card.

Every row and the detail view has a Refresh this battlecard button that kicks off a background agent for that one competitor. The agent first researches the competitor's current public positioning, packaging and pricing on the web using the platform's built in internet search. Then it pulls that competitor's recent closed lost deals with Search Deals, filtering to deals lost in the last two quarters that mention the competitor, and reads the lost reasons and deal notes to work out why we actually lose to them. It then drafts a full replacement battlecard covering positioning, pricing, objection handling, landmines and proof points, with a what changed since last review section at the top that lists each change against the card we have today and why it matters. The draft lands back in the app as a pending review item attached to that competitor, never straight into Guru. Show a working badge on the row while the agent runs and a review pending badge once the draft is waiting.

The lead reviews the draft side by side with the current card, can edit the text before accepting, and then either approves or discards it. On approval, if the competitor already has a battlecard, publish the new content with Update Card. If this was a coverage gap with no card, create one with Create Card in the competitive collection instead. Either way, follow the publish with Replace Card Verifiers to set the owner the lead picked, so the card enters Guru's verification cycle with a real name attached. Record the publish date in the app so the board can show when each card was last refreshed through this workspace.

Right after a card is published, post a short summary to our sales channel with Slack Bot Send a Message: the competitor name, one or two lines on what changed, the new owner, and a link to the card, so reps know the card moved. Let the lead pick the channel in settings and see the message before it goes out.

Reps get a separate read only view. It is a search box over competitor names and card content, with no editing, no pipeline numbers and no refresh buttons. In this view the objection handling section is pinned to the top of every card, above everything else, because that is what a rep needs in the 30 seconds before a call. The rest of the card sits below it, with the last verified date shown small so they know how fresh it is.

Persist the tracked competitor list, the chosen Guru collection, the review window, the Slack channel, each competitor's assigned owner, and every draft with its status (pending, approved, discarded) plus the publish history. The board should look the same for everyone who opens it, and drafts must survive a reload.

What does this prompt do?

  • Shows every competitor battlecard you keep in Guru next to the number of open HubSpot deals that name that competitor, so the cards backing the most pipeline rise to the top.
  • Surfaces coverage gaps, the competitors that keep showing up in deals with no battlecard written at all.
  • One click sends a background assistant to research the competitor's current public positioning and pricing, review why you recently lost deals to them, and draft an updated card with a what changed since last review section for approval.
  • Approved cards are published back to Guru with an owner assigned, a short summary of what changed goes to your sales channel, and reps get a read only view with objection handling pinned to the top of every card.

What do I need to use this?

  • A Guru account with a collection where your competitive battlecards live, and permission to create and update cards
  • A HubSpot account with deals, where competitor names appear in deal records
  • A Slack workspace with a sales channel to post published updates to
  • A named owner for each battlecard, usually your enablement lead or a product marketer

How can I customize it?

  • Set the review window that marks a card as stale, 90 days by default.
  • Choose which Guru collection holds your battlecards and which Slack channel receives the update summaries.
  • Change how competitors are matched to deals, for example using a competitor field on the deal instead of searching deal text.

FAQs

Where does the pipeline number next to each card come from?
Straight from your HubSpot deals. The app counts the open deals that name each competitor and adds up their value. It deliberately does not rank cards by knowledge base view counts, because how often a card is opened tells you nothing about how much revenue depends on it.
Does the assistant change our battlecards automatically?
No. Every draft lands in the app as a pending review item. Nothing is written back to Guru until someone approves it, and you can edit the draft first or discard it entirely.
What happens for a competitor we have never written a card for?
It appears as a coverage gap row at the top of the board, along with the open deals it is currently affecting. Approving a draft for that competitor creates a brand new card in your battlecard collection and assigns an owner to it.
Can reps use this without breaking anything?
Yes. Reps get a separate read only view, searchable by competitor, with the objection handling section pinned to the top of each card. They cannot edit cards, publish drafts, or start refreshes.
Will this work if our deals do not have a competitor field?
Yes. By default it searches your deal records for the competitor name, so free text mentions are enough. If you do keep a dedicated competitor field, you can switch the matching over to use it.

Related templates

Review desk for portal forms your team still fills in by hand

Stage a batch of filings overnight, then approve each completed form from a screenshot before anything is ever submitted.

Kernel
Google Sheets
Slack Bot
App
Client-by-client cold email pipeline review for agencies

Pick a client and a date range to see sent, replies, meetings booked and the real deal value your cold email produced, campaign by campaign.

Instantly
HubSpot
Slack Bot
App
Partner tier review board for quarterly promotion calls

Work every partner tier decision from one board, with the revenue and commission numbers, clear promotion thresholds, and AI review briefs.

Introw
HubSpot
Slack
App
Reconcile partner commissions between HubSpot and Introw

Open one board at month end to find every closed deal missing a commission, every commission with no deal behind it, and every amount that does not add up.

Introw
HubSpot
Slack
App
Audit what Intercom's Fin AI actually resolved before you pay

Review every conversation Fin closed as resolved, judge which ones actually stuck, and see what the gap is worth against your bill.

Intercom
Google Sheets
Slack Bot
App
One triage console for every Jira service desk queue

Merge your IT, HR and Facilities queues into one list ranked by SLA time left, then reply, change status and escalate without ever opening Jira.

Jira Service Management
Jira
Slack Bot
App

Stop refreshing battlecards nobody is losing deals over.

See which competitor cards are actually carrying pipeline, and put your review time there first.