Competitor battlecard library your team opens before calls

By General Input

A shared library of competitor battlecards with logos, products, pricing screenshots, and a diff that shows exactly what changed since the last time you looked.

Integrations

  • Context.dev
  • Slack Bot

Type

App

Categories

  • Sales
  • Marketing

Build me a competitor battlecard library that my sales and product marketing team opens before calls. This is an app, not a scheduled report. Nothing runs on a timer. People open it on demand and press Refresh when they want fresh data.

The home screen is a roster of competitors. I add a competitor by typing their domain, supplied bare like acme.com with no protocol and no www. Each row shows the competitor logo, their name, a one line description, the date of the last refresh, and a short summary of what changed at that refresh. Sort the roster by most recently changed first, so the companies that just moved sit at the top. Adding a competitor kicks off the first data pull and creates snapshot number one.

Opening a competitor opens their battlecard. Build it from Context.dev. Use Retrieve Brand Data by Domain for the logo, brand colors, and company description. Use Classify NAICS Industries for their industry codes. Use Extract Products from Brand Website for their current product lineup, noting that this operation caps at 12 products, so treat 12 as the ceiling and say so in the UI when you hit it. Use Scrape Screenshot in full page mode for pictures of their homepage and their pricing page. Use Scrape Markdown for the readable text of those same two pages. Respect the format split: brand and industry lookups take bare domains, while anything that scrapes a page takes a full URL including the https:// protocol.

Every card has a Refresh button. Refreshing re-runs all of the above and saves the result as a new dated snapshot, keeping every prior snapshot rather than replacing it. Never re-scrape just because somebody opened a page. Page views must read from the stored snapshot, because screenshots and AI extraction each cost credits per call. Always show the date of the snapshot on screen so it is obvious this is a saved capture rather than a live view.

The diff is the centerpiece of this app and should be what the card opens on. I care much less about the raw page than about what moved since I last looked. Compare the newest snapshot against the previous one and show three things: products added to and removed from their lineup, changes in positioning language across the headline, tagline, and description wording, and changed pricing copy including plan names, prices, and what is included at each tier. Present a readable summary of the changes at the top, with the side by side text and the two screenshots available underneath for anyone who wants to verify the detail. Let people step back through older snapshots and diff any two of them, not only the most recent pair.

Each competitor also has a talking points field that my team writes and edits inside the app. This is our own content, so it persists in the app's own storage, it is never overwritten by a refresh, and it is shared across the team rather than being private per person. Show who last edited it and when.

Each battlecard has a Share to Slack button that posts a battlecard summary to a channel using the Slack Bot Send a Message operation. Let the person choose the channel before posting. The message should carry the competitor name and logo, the one line description, their current products, our talking points, and the highlights of the latest diff, along with the date of the snapshot it came from.

To be clear on scope: do not turn this into a scheduled digest or an alerting workflow. There is no cron and no push notification anywhere in this. The whole value is the on demand library, with per competitor drill down, stored snapshot history, and a refresh that people trigger themselves.

Related prompts

Explore more prompts
A brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasonLiveChat coverage board for planning next week's shiftsPhone routing control panel for LiveKit voice agentsLinkedIn Ads budget pacing dashboard for every client accountGive your team Looker numbers without buying more seatsPause marketing emails to escalated customers, then restore them