Overview
What It Is
The Live Battlecard Generator monitors sales calls in real-time and automatically surfaces relevant competitive intelligence when a competitor is mentioned. Instead of reps fumbling for information mid-call, they receive instant notifications with key differentiators, objection handlers, and trap questions to ask.
Why It Matters
Reps face competitive pressure in 60%+ of deals. Most can't recall detailed battlecard content when put on the spot. Real-time delivery means the right information arrives at the exact moment it's needed—not after the call when it's too late.
Who It's For
- Account Executives in competitive markets
- Sales teams with multiple direct competitors
- Sales Enablement teams managing battlecard libraries
- Sales managers coaching competitive positioning
Preconditions
Required Tools
- Gong, Chorus, or similar call recording platform
- Real-time transcription capability
- Battlecard repository (Notion, Confluence, or custom)
- Slack for delivery
- Webhook or API integration capability
Required Fields/Properties
- Competitor name variations and aliases
- Battlecard content per competitor
- Rep Slack channel or DM preference
- Call metadata (deal, stage, participants)
Definitions Required
- Which competitors to track
- What information to surface (differentiators, objections, questions)
- Delivery format and timing
- How to measure battlecard effectiveness
Step-by-Step Workflow
Build Battlecard Database
Goal: Create structured competitive intelligence that can be programmatically retrieved.
Actions:
- List all trackable competitors
- Create battlecard template with standard sections
- Populate differentiators, objection handlers, trap questions
- Add competitor aliases and common misspellings
- Set up database with queryable structure (Notion API, Airtable, etc.)
Implementation Notes: Keep battlecards concise—300 words max per competitor. Focus on 3 key differentiators, 3 common objections, and 2-3 trap questions. This is for real-time use, not deep reference.
Automation Logic:
Battlecard Structure:
1. COMPETITOR: {{competitor_name}}
Aliases: [{{alias_1}}, {{alias_2}}]
2. QUICK SUMMARY (50 words)
What they do, positioning, typical customer
3. KEY DIFFERENTIATORS (3 bullets)
• We have X, they don't
• Our X is faster/better/cheaper
• Customer outcome difference
4. OBJECTION HANDLERS
• "They have feature X" → Response
• "They're cheaper" → Response
• "They're the market leader" → Response
5. TRAP QUESTIONS (questions that favor us)
• "Ask about their X capability..."
• "Inquire about their Y integration..."
6. LANDMINES (their weak points)
• Known issues, gaps, customer complaints
Configure Call Monitoring
Goal: Set up real-time detection of competitor mentions.
Actions:
- Enable real-time transcription in Gong/Chorus
- Create keyword tracker for competitor names
- Include aliases and common misspellings
- Configure webhook to fire on keyword detection
- Test detection accuracy with sample calls
Implementation Notes: Most conversation intelligence platforms support custom trackers. Gong Smart Trackers and Chorus topics can both trigger webhooks. Test thoroughly—missing a mention is worse than no system at all.
Automation Logic:
// Example: Competitor mention detection config
const competitorTrackers = [
{
competitor: 'Acme Corp',
keywords: ['acme', 'acme corp', 'acmecorp'],
battlecardId: 'bc_acme_001'
},
{
competitor: 'Beta Solutions',
keywords: ['beta', 'beta solutions', 'betasolutions'],
battlecardId: 'bc_beta_001'
}
];
// Webhook payload on detection
const webhookPayload = {
call_id: 'call_123',
rep_email: 'rep@company.com',
competitor_detected: 'Acme Corp',
timestamp: '2024-03-15T14:32:00Z',
context_snippet: '...they mentioned they also talked to Acme...'
};
Build Battlecard Retrieval
Goal: Create system to fetch relevant battlecard content instantly.
Actions:
- Build API endpoint to query battlecard database
- Match detected competitor to battlecard
- Format output for Slack delivery
- Handle unknown competitors gracefully
- Cache frequent queries for speed
Implementation Notes: Speed matters—aim for sub-2-second delivery. If using Notion or Airtable, pre-cache battlecard content rather than fetching live every time.
Configure Slack Delivery
Goal: Deliver battlecard to rep without disrupting their call flow.
Actions:
- Set up Slack bot for delivery
- Configure DM delivery to call participant
- Format message for quick scanning
- Include expand/collapse for detailed sections
- Add feedback buttons for battlecard usefulness
Implementation Notes: Keep the initial message short—3-5 bullets max. Reps are on a live call. Use thread replies or expandable sections for full battlecard content.
Track and Optimize
Goal: Measure battlecard effectiveness and improve content.
Actions:
- Track battlecard delivery rate
- Collect rep feedback on usefulness
- Correlate with competitive win rates
- Identify missing competitors to add
- Update battlecards based on what works
Implementation Notes: Review feedback weekly. If reps say a battlecard isn't helpful, dig into why. The content may need updating or the format may need adjusting.
Templates
Slack Battlecard Message Template
🎯 *Competitor Detected: {{competitor_name}}*
*Quick Differentiators:*
• {{differentiator_1}}
• {{differentiator_2}}
• {{differentiator_3}}
*If they say "{{common_objection}}":*
→ {{objection_response}}
*Ask them:*
💡 "{{trap_question}}"
<{{full_battlecard_link}}|View Full Battlecard> | <{{feedback_link}}|Was this helpful?>
Battlecard Entry Template
# {{competitor_name}} Battlecard
**Last Updated:** {{updated_date}}
**Owner:** {{battlecard_owner}}
## Quick Summary
{{one_paragraph_summary}}
## Why We Win Against {{competitor_name}}
1. {{differentiator_1}}
2. {{differentiator_2}}
3. {{differentiator_3}}
## Objection Handlers
**"They have [Feature X]"**
{{response_to_feature_objection}}
**"They're cheaper"**
{{response_to_price_objection}}
**"They're the market leader"**
{{response_to_market_leader_objection}}
## Trap Questions
- "How does {{competitor_name}} handle {{our_strength}}?"
- "Have you asked them about {{their_weakness}}?"
## Landmines (Their Weaknesses)
- {{weakness_1}}
- {{weakness_2}}
## Recent Intel
- {{recent_win_loss_insight}}
- {{customer_complaint_or_review}}
Competitor Detection Keywords
| Competitor | Primary Keywords | Aliases | Product Names | |------------|------------------|---------|---------------| | Acme Corp | acme, acme corp | the a company | Acme Suite, Acme Pro | | Beta Solutions | beta, beta solutions | BS, Beta | BetaCloud | | Gamma Inc | gamma, gamma inc | gamma labs | GammaOne | | Delta Tech | delta, delta tech | D-tech | DeltaForce |
Battlecard Effectiveness Tracker
| Competitor | Mentions (30d) | Battlecard Delivered | Rep Feedback (Helpful %) | Win Rate vs Competitor | |------------|----------------|---------------------|-------------------------|------------------------| | Acme Corp | 45 | 42 (93%) | 78% | 62% | | Beta Solutions | 32 | 30 (94%) | 85% | 71% | | Gamma Inc | 18 | 17 (94%) | 65% | 55% | | Delta Tech | 8 | 8 (100%) | 90% | 80% |
QA + Edge Cases
Test Cases Checklist
- Competitor mentioned on live call → battlecard delivered within 5 seconds
- Unknown competitor mentioned → graceful 'no battlecard available' message
- Multiple competitors in one call → separate battlecards delivered
- Rep provides negative feedback → routed to enablement for review
- Battlecard link clicked → logged for usage tracking
Common Failure Modes
- Slow delivery: If battlecard arrives 30 seconds after mention, it's useless. Optimize for sub-5-second delivery through caching and efficient queries.
- Too much information: A 500-word battlecard mid-call is overwhelming. Surface 3-5 bullet points; link to full content for later review.
- Stale content: Outdated battlecards are worse than no battlecards. Assign owners and enforce quarterly reviews.
- Detection failures: Missing competitor mentions due to aliases or misspellings. Audit calls regularly to identify missed keywords.
Troubleshooting Tips
- If delivery is slow: Pre-cache all battlecard content instead of fetching on-demand
- If detection is missing mentions: Review call transcripts for new aliases and add them
- If reps don't find it helpful: Survey for specific feedback; content may need updating
- If Slack messages are ignored: Try different format or timing; consider audio notification
KPIs and Reporting
KPIs to Track
- Detection Rate: >95% of competitor mentions detected and delivered
- Delivery Speed: Battlecard delivered within 5 seconds of mention
- Rep Satisfaction: >80% of battlecards rated helpful
- Competitive Win Rate: Track win rate trend against each tracked competitor
- Battlecard Coverage: Battlecard exists for 100% of top 10 competitors
Suggested Dashboard Widgets
- Competitor Mention Frequency: Which competitors come up most often in calls
- Battlecard Delivery Performance: Detection rate and delivery speed over time
- Win Rate by Competitor: Competitive win rate trend per tracked competitor
- Rep Feedback Summary: Battlecard helpfulness ratings aggregated