Introduced 1 production defect in 180 days, median 13 days to fix.
# What is your top rep doing differently?
A living breakdown of how the team converts pipeline — org and per-rep conversion, response habits, and the per-stage patterns, objections, messaging, features, and pain points that move deals. Last 90 days, 100 deals per rep.
## Org-wide conversion rate
```dashboard
{
"id": "org_conversion",
"dataSources": {
"org": {
"mock": [
{
"winRate": 21,
"deals": 400,
"avgAttainment": 93,
"pipeline": 4250000
}
]
},
"funnel": {
"mock": [
{
"label": "Discovery",
"count": 400
},
{
"label": "Demo",
"count": 285
},
{
"label": "Negot.",
"count": 145
},
{
"label": "Close",
"count": 84
}
]
}
},
"layout": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "grid",
"columns": 4,
"gap": "lg",
"children": [
{
"type": "stat",
"source": "org",
"field": "winRate",
"label": "Org win rate",
"format": "percent",
"style": "radial"
},
{
"type": "stat",
"source": "org",
"field": "avgAttainment",
"label": "Avg quota attainment",
"format": "percent"
},
{
"type": "stat",
"source": "org",
"field": "pipeline",
"label": "Total pipeline",
"format": "currency-compact"
},
{
"type": "stat",
"source": "org",
"field": "deals",
"label": "Deals (last 90 days)",
"format": "number"
}
]
},
{
"type": "funnel",
"source": "funnel",
"size": "lg"
}
]
},
"spec_version": "2.0"
}
```
## Per rep conversion rate
Each card is a rep's funnel. Click a rep to open their full playbook — their conversion versus the team average and what they do at each stage.
```dashboard
{
"id": "per_rep_conversion",
"dataSources": {
"reps": {
"mock": [
{
"name": "Willem",
"initials": "WE",
"label": "Top rep",
"steps": [
{
"label": "Discovery",
"count": 100
},
{
"label": "Demo",
"count": 82
},
{
"label": "Negot.",
"count": 53
},
{
"label": "Close",
"count": 38
}
],
"attainment": 142,
"docPath": "user/files/users/willem"
},
{
"name": "Sarah",
"initials": "SK",
"label": "Account Exec",
"steps": [
{
"label": "Discovery",
"count": 100
},
{
"label": "Demo",
"count": 74
},
{
"label": "Negot.",
"count": 38
},
{
"label": "Close",
"count": 21
}
],
"attainment": 88,
"docPath": "user/files/users/sarah"
},
{
"name": "Marcus",
"initials": "MR",
"label": "Account Exec",
"steps": [
{
"label": "Discovery",
"count": 100
},
{
"label": "Demo",
"count": 61
},
{
"label": "Negot.",
"count": 23
},
{
"label": "Close",
"count": 10
}
],
"attainment": 61,
"docPath": "user/files/users/marcus"
},
{
"name": "Lily",
"initials": "LP",
"label": "Account Exec",
"steps": [
{
"label": "Discovery",
"count": 100
},
{
"label": "Demo",
"count": 68
},
{
"label": "Negot.",
"count": 31
},
{
"label": "Close",
"count": 15
}
],
"attainment": 79,
"docPath": "user/files/users/lily"
}
]
}
},
"layout": {
"type": "repeater",
"source": "reps",
"as": "rep",
"layout": "grid",
"columns": 4,
"gap": "lg",
"template": {
"type": "entityCard",
"linkField": "docPath",
"children": [
{
"type": "profile",
"name": "{{rep.name}}",
"initials": "{{rep.initials}}",
"label": "{{rep.label}}"
},
{
"type": "stat",
"field": "attainment",
"label": "Quota attainment",
"format": "percent"
},
{
"type": "funnel",
"field": "steps"
}
]
}
},
"spec_version": "2.0"
}
```
## Playbook
### Follow-up
Speed and cadence of follow-up is the biggest separator between won and lost deals. Times are medians; "first response" is the gap from an inbound message to the first reply, "follow-up gap" is the gap between consecutive outbound emails.
```dashboard
{
"id": "follow_ups",
"dataSources": {
"headline": {
"mock": [
{
"response": 13680,
"postMeeting": 21600,
"followup": 354240
}
]
},
"outcome": {
"mock": [
{
"outcome": "Won deals",
"firstResponse": 4320,
"followup": 155520,
"replyRate": 71,
"deals": 42
},
{
"outcome": "Lost deals",
"firstResponse": 19440,
"followup": 535680,
"replyRate": 34,
"deals": 61
},
{
"outcome": "All deals",
"firstResponse": 13680,
"followup": 354240,
"replyRate": 49,
"deals": 103
}
]
},
"content": {
"mock": [
{
"content": "Recap + single CTA",
"replyRate": 71,
"win": 38
},
{
"content": "Mutual action plan",
"replyRate": 66,
"win": 35
},
{
"content": "Case study",
"replyRate": 59,
"win": 32
},
{
"content": "Pattern breaker",
"replyRate": 54,
"win": 29
},
{
"content": "Generic \"just checking in\"",
"replyRate": 18,
"win": 7
}
]
},
"breakers": {
"mock": [
{
"name": "The permission-to-close",
"subject": "Should I close your file?",
"body": "Haven't heard back, which usually means one of three things: it's not a priority right now, the timing is off, or I dropped the ball. Totally fine either way — just tell me which and I'll act accordingly.",
"replyRate": 61,
"context": "After 2 unanswered follow-ups"
},
{
"name": "The trigger event",
"subject": "Saw the Series B — congrats",
"body": "Congrats on the raise. New headcount usually means more pipeline than the team can follow up on — which is exactly the gap we close. Worth 15 minutes now that you are scaling the team?",
"replyRate": 58,
"context": "Triggered by funding news"
},
{
"name": "The case-study drop",
"subject": "How Ramp cut follow-up time 60%",
"body": "You mentioned reps forgetting to follow up. Ramp had the same problem — attached is the one-pager on how they fixed it in 3 weeks. Happy to walk through it live if useful.",
"replyRate": 52,
"context": "Mapped to a stated pain"
}
]
}
},
"layout": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "grid",
"columns": 3,
"gap": "lg",
"children": [
{
"type": "stat",
"source": "headline",
"field": "response",
"label": "Avg response time",
"format": "duration"
},
{
"type": "stat",
"source": "headline",
"field": "postMeeting",
"label": "Avg post-meeting follow-up",
"format": "duration"
},
{
"type": "stat",
"source": "headline",
"field": "followup",
"label": "Avg follow-up time",
"format": "duration"
}
]
},
{
"type": "table",
"source": "outcome",
"title": "Response & follow-up by outcome",
"columns": [
{
"key": "outcome",
"label": "Outcome",
"weight": 2
},
{
"key": "firstResponse",
"label": "Avg response time",
"format": "duration",
"align": "right"
},
{
"key": "followup",
"label": "Avg follow-up gap",
"format": "duration",
"align": "right"
},
{
"key": "replyRate",
"label": "Reply rate",
"format": "percent",
"align": "right"
},
{
"key": "deals",
"label": "Deals",
"format": "number",
"align": "right"
}
]
},
{
"type": "table",
"source": "content",
"title": "Follow-up content — what gets replies",
"columns": [
{
"key": "content",
"label": "Content type",
"weight": 3
},
{
"key": "replyRate",
"label": "Reply rate",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
}
]
},
{
"type": "text",
"markdown": "### Pattern breakers\nThe emails that break a no-reply streak — short, specific, and easy to say yes (or no) to."
},
{
"type": "repeater",
"source": "breakers",
"as": "breaker",
"layout": "list",
"gap": "md",
"template": {
"type": "entityCard",
"children": [
{
"type": "text",
"markdown": "**{{breaker.name}}** · {{breaker.context}} · replies {{breaker.replyRate}}%"
},
{
"type": "text",
"markdown": "**Subject:** {{breaker.subject}}"
},
{
"type": "text",
"markdown": "{{breaker.body}}",
"className": "text-muted-foreground italic"
}
]
}
}
]
},
"spec_version": "2.0"
}
```
### Stage 1 — Discovery
**Goal:** Prospect names one use case + success metric, and sees why Cedar (not a build) is the path.
Each objection links to a breakdown of the talk tracks reps use against it and how each performs.
```dashboard
{
"id": "stage1_playbook",
"dataSources": {
"objections": {
"mock": [
{
"objection": "Build vs Buy — \"we build our GTM tools in-house\"",
"analysisPath": "user/files/playbook/stage1/objections/build-vs-buy-we-build-our-gtm-tools-in-house",
"mentions": 4,
"bestReply": "Teams that build this underestimate the upkeep. Cedar ships the playbook engine + self-improving data flywheel out of the box and gets smarter from your reps’ own calls. What would your eng team have to deprioritize to build and maintain follow-up + CRM automation?",
"win": 25,
"toNext": 38
},
{
"objection": "We want to own the data",
"analysisPath": "user/files/playbook/stage1/objections/we-want-to-own-the-data",
"mentions": 5,
"bestReply": "You do — Cedar reads and writes your existing CRM and Gmail; we’re not a separate system of record. Happy to send our infosec + data-handling doc and walk your security lead through it.",
"win": 45,
"toNext": 58
},
{
"objection": "AI only helps with standardized, templated work",
"analysisPath": "user/files/playbook/stage1/objections/ai-only-helps-with-standardized-templated-work",
"mentions": 7,
"bestReply": "True for generic tools — Cedar runs YOUR playbook with full deal context, so it personalizes the non-standard parts. Can I draft a follow-up live on one of your real stalled deals?",
"win": 60,
"toNext": 66
},
{
"objection": "The scaling problem is months away — not urgent now",
"analysisPath": "user/files/playbook/stage1/objections/the-scaling-problem-is-months-away-not-urgent-no",
"mentions": 5,
"bestReply": "Better to codify your best rep’s playbook before the new hires land — Cedar ramps new AEs to your CRM + follow-up standards without manager time. Want a 3-week pilot timed to the hire?",
"win": 40,
"toNext": 49
},
{
"objection": "This market is too competitive",
"analysisPath": "user/files/playbook/stage1/objections/this-market-is-too-competitive",
"mentions": 6,
"bestReply": "Crowded on call recording — not on the writing + follow-up layer where deals actually slip. That’s the gap we own, and why Cursor, Warp, and Pylon picked us.",
"win": 60,
"toNext": 64
}
]
},
"positioning": {
"mock": [
{
"competitor": "Claude / ChatGPT",
"stance": "Compete",
"encounter": 44,
"theyWin": "Free-form drafting, cheap",
"weWin": "Proactive, full deal context, playbook-controlled",
"winVs": 62,
"talkTrack": "ChatGPT writes a fine email — once you paste in the context, remember to send it, and update the CRM yourself. The work was never the writing; it's everything around it. Cedar does all three off your inbox, on your playbook.",
"reps": [
{
"rep": "Willem",
"winVs": 71,
"note": "Demos Cedar acting on a live thread, not a blank prompt box"
},
{
"rep": "Sarah",
"winVs": 60,
"note": "Anchors on the CRM hygiene the buyer already struggles with"
}
],
"deals": [
{
"deal": "Cursor",
"stage": "Closed won",
"status": "Reference"
},
{
"deal": "Pylon",
"stage": "POC",
"status": "Active"
}
]
},
{
"competitor": "Status quo (Gmail + manual CRM)",
"stance": "Compete",
"encounter": 51,
"theyWin": "No new tool to adopt",
"weWin": "Cut admin 75%, no deals slip",
"winVs": 60,
"talkTrack": "Gmail is free — the deals slipping through it aren't. What does a dropped follow-up cost you a quarter? Cedar cuts the admin 75% and nothing falls through the cracks.",
"reps": [
{
"rep": "Willem",
"winVs": 68,
"note": "Quantifies the cost of inaction before showing anything"
},
{
"rep": "Lily",
"winVs": 55,
"note": "Maps the manual steps the team already hates"
}
],
"deals": [
{
"deal": "Warp",
"stage": "Negotiation",
"status": "At risk"
},
{
"deal": "Two Dots",
"stage": "Discovery",
"status": "Active"
}
]
},
{
"competitor": "Sybill",
"stance": "Compete",
"encounter": 29,
"theyWin": "Call notes + CRM autofill",
"weWin": "Writing + follow-up + playbook execution",
"winVs": 55,
"talkTrack": "Sybill is great at notes after the call. Deals are won or lost in the writing and follow-up between calls — that's the layer we own. We sit alongside your notetaker, not against it.",
"reps": [
{
"rep": "Willem",
"winVs": 58,
"note": "Splits 'capture' from 'execution' so the wedge is obvious"
},
{
"rep": "Marcus",
"winVs": 41,
"note": "Still feature-battles — coach toward the layer framing"
}
],
"deals": [
{
"deal": "Bread Labs",
"stage": "Closed lost",
"status": "Win-back"
}
]
},
{
"competitor": "Clari",
"stance": "Compete",
"encounter": 24,
"theyWin": "Forecast hygiene",
"weWin": "Per-deal execution + next steps",
"winVs": 58,
"talkTrack": "Clari tells the manager the forecast. Cedar helps the rep actually hit it — per-deal next steps, not roll-up dashboards. Different buyer, different job; most teams run both.",
"reps": [
{
"rep": "Willem",
"winVs": 62,
"note": "Sells to the rep's pain, not the VP's"
},
{
"rep": "Sarah",
"winVs": 54,
"note": "Positions Cedar as the execution under the forecast"
}
],
"deals": [
{
"deal": "Pirros",
"stage": "Pilot details",
"status": "Active"
}
]
},
{
"competitor": "HubSpot Sequences",
"stance": "Compete",
"encounter": 26,
"theyWin": "Bundled with the CRM",
"weWin": "Reply quality + deal context",
"winVs": 49,
"talkTrack": "Sequences blast the same template at everyone — that's why reply rates crater. Cedar writes in the rep's voice with the deal's context. It's a reply-quality difference, not a volume one.",
"reps": [
{
"rep": "Willem",
"winVs": 55,
"note": "Shows a side-by-side reply-rate gap on real threads"
},
{
"rep": "Lily",
"winVs": 44,
"note": "Leads with 'bundled ≠ better' on the actual emails"
}
],
"deals": [
{
"deal": "Globex",
"stage": "Proposal",
"status": "At risk"
}
]
},
{
"competitor": "Gong",
"stance": "Integrate",
"encounter": 38,
"theyWin": "Call recording + coaching",
"weWin": "We integrate — surface the writing/follow-up Gong misses",
"winVs": 78,
"talkTrack": "We don't replace Gong — we read it. Gong shows you the call; Cedar acts on it: the recap, the follow-up, the CRM update. Keep Gong, add the execution layer.",
"reps": [
{
"rep": "Willem",
"winVs": 82,
"note": "Frames as 'and', never 'or' — disarms the incumbent"
},
{
"rep": "Sarah",
"winVs": 74,
"note": "Brings the Gong admin into the room as a champion"
}
],
"deals": [
{
"deal": "Acme Corp",
"stage": "Negotiation",
"status": "At risk"
}
]
}
]
},
"tracks": {
"mock": [
{
"track": "Reframe to maintenance + opportunity cost",
"objection": "Build vs Buy — \"we build our GTM tools in-house\"",
"rep": "Willem",
"uses": 14,
"toNext": 42,
"win": 31
},
{
"track": "Show the self-improving data flywheel",
"objection": "Build vs Buy — \"we build our GTM tools in-house\"",
"rep": "Willem",
"uses": 11,
"toNext": 38,
"win": 28
},
{
"track": "Concede + offer API / integration path",
"objection": "Build vs Buy — \"we build our GTM tools in-house\"",
"rep": "Lily",
"uses": 8,
"toNext": 30,
"win": 19
},
{
"track": "Cedar writes to your CRM, not a new silo",
"objection": "We want to own the data",
"rep": "Willem",
"uses": 12,
"toNext": 58,
"win": 45
},
{
"track": "Share infosec + SOC2 Type II packet",
"objection": "We want to own the data",
"rep": "Sarah",
"uses": 9,
"toNext": 50,
"win": 38
},
{
"track": "Offer a data-handling review with security",
"objection": "We want to own the data",
"rep": "Lily",
"uses": 7,
"toNext": 44,
"win": 33
},
{
"track": "Draft live on a real stalled deal",
"objection": "AI only helps with standardized, templated work",
"rep": "Willem",
"uses": 16,
"toNext": 66,
"win": 60
},
{
"track": "Show the 90% no-edit send rate",
"objection": "AI only helps with standardized, templated work",
"rep": "Lily",
"uses": 10,
"toNext": 54,
"win": 47
},
{
"track": "Contrast vs generic ChatGPT output",
"objection": "AI only helps with standardized, templated work",
"rep": "Sarah",
"uses": 9,
"toNext": 48,
"win": 40
},
{
"track": "Tie the pilot to the upcoming hire",
"objection": "The scaling problem is months away — not urgent now",
"rep": "Willem",
"uses": 11,
"toNext": 49,
"win": 40
},
{
"track": "Ramp-time proof point (Cursor)",
"objection": "The scaling problem is months away — not urgent now",
"rep": "Lily",
"uses": 8,
"toNext": 44,
"win": 35
},
{
"track": "Differentiate on the follow-up layer",
"objection": "This market is too competitive",
"rep": "Willem",
"uses": 13,
"toNext": 64,
"win": 60
},
{
"track": "Name-drop Cursor / Warp / Pylon",
"objection": "This market is too competitive",
"rep": "Sarah",
"uses": 9,
"toNext": 52,
"win": 44
}
]
},
"pains": {
"mock": [
{
"pain": "Deals slip through the cracks on timing",
"feltBy": "AE",
"freq": 64,
"win": 39
},
{
"pain": "Follow-ups are manual and impersonal",
"feltBy": "AE",
"freq": 58,
"win": 36
},
{
"pain": "CRM busywork — moving info column A → B",
"feltBy": "AE",
"freq": 55,
"win": 34
},
{
"pain": "Pipeline analysis = copy-pasting scattered context",
"feltBy": "Strategic AE",
"freq": 47,
"win": 33
},
{
"pain": "Can't clone the top rep's playbook",
"feltBy": "Manager",
"freq": 38,
"win": 37
},
{
"pain": "New reps ramp slowly",
"feltBy": "Manager",
"freq": 34,
"win": 31
},
{
"pain": "Dormant pipeline goes uncovered",
"feltBy": "RevOps",
"freq": 29,
"win": 28
}
]
},
"icp": {
"mock": [
{
"segment": "Mid-market SaaS (50–500)",
"deals": 142,
"win": 41,
"avgDeal": 38000,
"cycle": 34,
"signal": "Champion + follow-up pain"
},
{
"segment": "Enterprise (500+)",
"deals": 63,
"win": 33,
"avgDeal": 96000,
"cycle": 61,
"signal": "Multi-thread, security-ready"
},
{
"segment": "Fintech",
"deals": 44,
"win": 37,
"avgDeal": 72000,
"cycle": 52,
"signal": "Compliance + SOC2 matters"
},
{
"segment": "Healthcare",
"deals": 31,
"win": 29,
"avgDeal": 58000,
"cycle": 58,
"signal": "Slow legal, high ACV"
},
{
"segment": "SMB (<50)",
"deals": 118,
"win": 22,
"avgDeal": 11000,
"cycle": 18,
"signal": "Fast cycle, price-sensitive"
}
]
}
},
"layout": {
"type": "tabs",
"tabs": [
{
"label": "Objections",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "objections",
"columns": [
{
"key": "objection",
"label": "Objection",
"weight": 3
},
{
"key": "analysisPath",
"label": "Analysis",
"type": "docLink",
"linkLabel": "Analysis",
"weight": 1
},
{
"key": "mentions",
"label": "Deals seen",
"format": "number",
"align": "right"
},
{
"key": "bestReply",
"label": "Best-performing response",
"weight": 4
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "objections",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by objection",
"xAxis": "objection",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Competitive Positioning",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "text",
"markdown": "Six alternatives show up in discovery. For each: where they beat us, the wedge that wins, the exact talk track, which reps run it best, and live deals to watch."
},
{
"type": "table",
"source": "positioning",
"title": "Discovery competitive landscape",
"columns": [
{
"key": "competitor",
"label": "Alternative",
"weight": 2
},
{
"key": "stance",
"label": "Stance",
"weight": 1
},
{
"key": "encounter",
"label": "Seen in % of deals",
"format": "percent",
"align": "right"
},
{
"key": "winVs",
"label": "Win rate vs",
"format": "percent",
"align": "right"
}
]
},
{
"type": "repeater",
"source": "positioning",
"as": "comp",
"layout": "list",
"gap": "md",
"template": {
"type": "entityCard",
"children": [
{
"type": "row",
"gap": "md",
"align": "center",
"children": [
{
"type": "profile",
"name": "{{comp.competitor}}",
"label": "{{comp.stance}} · seen in {{comp.encounter}}% of deals"
},
{
"type": "stat",
"field": "winVs",
"label": "Win rate vs",
"format": "percent"
}
]
},
{
"type": "text",
"markdown": "**They win on:** {{comp.theyWin}} · **We win on:** {{comp.weWin}}",
"className": "text-muted-foreground"
},
{
"type": "text",
"markdown": "Talk track",
"className": "text-[11px] font-semibold uppercase tracking-wider text-emerald-600 dark:text-emerald-400"
},
{
"type": "text",
"markdown": "{{comp.talkTrack}}",
"className": "italic"
},
{
"type": "table",
"rowField": "reps",
"title": "Reps who win this matchup",
"columns": [
{
"key": "rep",
"label": "Rep",
"type": "rep",
"weight": 2
},
{
"key": "winVs",
"label": "Win rate vs",
"format": "percent",
"align": "right"
},
{
"key": "note",
"label": "What they do",
"weight": 3
}
]
},
{
"type": "table",
"rowField": "deals",
"title": "Example deals to watch",
"columns": [
{
"key": "deal",
"label": "Deal",
"weight": 2
},
{
"key": "stage",
"label": "Stage",
"weight": 2
},
{
"key": "status",
"label": "Status",
"weight": 1
}
]
}
]
}
}
]
}
},
{
"label": "Talk tracks",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "tracks",
"columns": [
{
"key": "track",
"label": "Talk track",
"weight": 3
},
{
"key": "objection",
"label": "Used against",
"weight": 2
},
{
"key": "rep",
"label": "Top rep",
"type": "rep",
"weight": 1
},
{
"key": "uses",
"label": "Uses",
"format": "number",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "tracks",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by talk track",
"xAxis": "track",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Pain points",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "pains",
"columns": [
{
"key": "pain",
"label": "Pain point",
"weight": 3
},
{
"key": "feltBy",
"label": "Felt by",
"weight": 1
},
{
"key": "freq",
"label": "Frequency",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win % when raised",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "pains",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by pain point",
"xAxis": "pain",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "ICP",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "icp",
"columns": [
{
"key": "segment",
"label": "Segment",
"weight": 3
},
{
"key": "deals",
"label": "Deals",
"format": "number",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "avgDeal",
"label": "Avg deal",
"format": "currency-compact",
"align": "right"
},
{
"key": "cycle",
"label": "Cycle (days)",
"format": "number",
"align": "right"
},
{
"key": "signal",
"label": "Best-fit signal",
"weight": 2
}
]
},
{
"type": "chart",
"source": "icp",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by segment",
"xAxis": "segment",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
}
]
},
"spec_version": "2.0"
}
```
### Stage 2 — Demo
**Goal:** Live aha on the prospect's own pipeline + a named champion.
Each objection links to a breakdown of the talk tracks reps use against it and how each performs.
```dashboard
{
"id": "stage2_playbook",
"dataSources": {
"objections": {
"mock": [
{
"objection": "Our team works in the CRM, not Gmail",
"analysisPath": "user/files/playbook/stage2/objections/our-team-works-in-the-crm-not-gmail",
"mentions": 6,
"bestReply": "Cedar layers onto both — it reads/writes your CRM and drafts from Gmail, so reps don’t switch context. Want to see it update a HubSpot deal straight from an email thread?",
"win": 60,
"toNext": 64
},
{
"objection": "We want to keep Gmail as our default",
"analysisPath": "user/files/playbook/stage2/objections/we-want-to-keep-gmail-as-our-default",
"mentions": 9,
"bestReply": "Keep it — Cedar runs inside your Gmail workflow, no migration. You only adopt Send when the drafts are good enough, and they hit a 90% no-edit rate.",
"win": 88,
"toNext": 90
},
{
"objection": "Product's not ready — don't want to waste time",
"analysisPath": "user/files/playbook/stage2/objections/product-s-not-ready-don-t-want-to-waste-time",
"mentions": 6,
"bestReply": "Fair — let’s not demo vapor. I’ll run it on your real pipeline, and if an integration isn’t ready we’ll scope the pilot around what is.",
"win": 40,
"toNext": 48
},
{
"objection": "Differentiation doesn't show up in our sales-tool data",
"analysisPath": "user/files/playbook/stage2/objections/differentiation-doesn-t-show-up-in-our-sales-too",
"mentions": 5,
"bestReply": "Exactly — Gong captures the call, not the writing + follow-up where your top rep wins. Cedar surfaces those tactics so you can clone them across the team.",
"win": 40,
"toNext": 47
},
{
"objection": "Inbox layout doesn't match how we work",
"analysisPath": "user/files/playbook/stage2/objections/inbox-layout-doesn-t-match-how-we-work",
"mentions": 4,
"bestReply": "We mirror your Gmail sections (starred, then unread) — you keep your layout. Let me show the custom inbox so the switch is zero-friction.",
"win": 75,
"toNext": 78
}
]
},
"positioning": {
"mock": [
{
"competitor": "Claude / ChatGPT",
"stance": "Compete",
"encounter": 44,
"theyWin": "Free-form drafting, cheap",
"weWin": "Proactive, full deal context, playbook-controlled",
"winVs": 62
},
{
"competitor": "Status quo (Gmail + manual CRM)",
"stance": "Compete",
"encounter": 51,
"theyWin": "No new tool to adopt",
"weWin": "Cut admin 75%, no deals slip",
"winVs": 60
},
{
"competitor": "Sybill",
"stance": "Compete",
"encounter": 29,
"theyWin": "Call notes + CRM autofill",
"weWin": "Writing + follow-up + playbook execution",
"winVs": 55
},
{
"competitor": "Clari",
"stance": "Compete",
"encounter": 24,
"theyWin": "Forecast hygiene",
"weWin": "Per-deal execution + next steps",
"winVs": 58
},
{
"competitor": "HubSpot Sequences",
"stance": "Compete",
"encounter": 26,
"theyWin": "Bundled with the CRM",
"weWin": "Reply quality + deal context",
"winVs": 49
},
{
"competitor": "Gong",
"stance": "Integrate",
"encounter": 38,
"theyWin": "Call recording + coaching",
"weWin": "We integrate — surface the writing/follow-up Gong misses",
"winVs": 78
}
]
},
"tracks": {
"mock": [
{
"track": "Show CRM write-back from an email",
"objection": "Our team works in the CRM, not Gmail",
"rep": "Willem",
"uses": 12,
"toNext": 64,
"win": 60
},
{
"track": "Layer onto, don't replace, the CRM",
"objection": "Our team works in the CRM, not Gmail",
"rep": "Lily",
"uses": 9,
"toNext": 55,
"win": 48
},
{
"track": "No migration — runs inside Gmail",
"objection": "We want to keep Gmail as our default",
"rep": "Willem",
"uses": 18,
"toNext": 90,
"win": 88
},
{
"track": "Adopt Send gradually as drafts prove out",
"objection": "We want to keep Gmail as our default",
"rep": "Lily",
"uses": 11,
"toNext": 80,
"win": 75
},
{
"track": "Demo on real pipeline only",
"objection": "Product's not ready — don't want to waste time",
"rep": "Willem",
"uses": 10,
"toNext": 48,
"win": 40
},
{
"track": "Scope the pilot to ready integrations",
"objection": "Product's not ready — don't want to waste time",
"rep": "Sarah",
"uses": 8,
"toNext": 42,
"win": 34
},
{
"track": "Position vs Gong's blind spot",
"objection": "Differentiation doesn't show up in our sales-tool data",
"rep": "Willem",
"uses": 9,
"toNext": 47,
"win": 40
},
{
"track": "Surface top-rep tactics to clone",
"objection": "Differentiation doesn't show up in our sales-tool data",
"rep": "Lily",
"uses": 7,
"toNext": 43,
"win": 35
},
{
"track": "Mirror Gmail custom sections",
"objection": "Inbox layout doesn't match how we work",
"rep": "Willem",
"uses": 8,
"toNext": 78,
"win": 75
},
{
"track": "Zero-friction switch walkthrough",
"objection": "Inbox layout doesn't match how we work",
"rep": "Lily",
"uses": 6,
"toNext": 70,
"win": 66
}
]
},
"pains": {
"mock": [
{
"pain": "Deals slip through the cracks on timing",
"feltBy": "AE",
"freq": 64,
"win": 39
},
{
"pain": "Follow-ups are manual and impersonal",
"feltBy": "AE",
"freq": 58,
"win": 36
},
{
"pain": "CRM busywork — moving info column A → B",
"feltBy": "AE",
"freq": 55,
"win": 34
},
{
"pain": "Pipeline analysis = copy-pasting scattered context",
"feltBy": "Strategic AE",
"freq": 47,
"win": 33
},
{
"pain": "Can't clone the top rep's playbook",
"feltBy": "Manager",
"freq": 38,
"win": 37
},
{
"pain": "New reps ramp slowly",
"feltBy": "Manager",
"freq": 34,
"win": 31
},
{
"pain": "Dormant pipeline goes uncovered",
"feltBy": "RevOps",
"freq": 29,
"win": 28
}
]
},
"icp": {
"mock": [
{
"segment": "Mid-market SaaS (50–500)",
"deals": 142,
"win": 41,
"avgDeal": 38000,
"cycle": 34,
"signal": "Champion + follow-up pain"
},
{
"segment": "Enterprise (500+)",
"deals": 63,
"win": 33,
"avgDeal": 96000,
"cycle": 61,
"signal": "Multi-thread, security-ready"
},
{
"segment": "Fintech",
"deals": 44,
"win": 37,
"avgDeal": 72000,
"cycle": 52,
"signal": "Compliance + SOC2 matters"
},
{
"segment": "Healthcare",
"deals": 31,
"win": 29,
"avgDeal": 58000,
"cycle": 58,
"signal": "Slow legal, high ACV"
},
{
"segment": "SMB (<50)",
"deals": 118,
"win": 22,
"avgDeal": 11000,
"cycle": 18,
"signal": "Fast cycle, price-sensitive"
}
]
}
},
"layout": {
"type": "tabs",
"tabs": [
{
"label": "Objections",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "objections",
"columns": [
{
"key": "objection",
"label": "Objection",
"weight": 3
},
{
"key": "analysisPath",
"label": "Analysis",
"type": "docLink",
"linkLabel": "Analysis",
"weight": 1
},
{
"key": "mentions",
"label": "Deals seen",
"format": "number",
"align": "right"
},
{
"key": "bestReply",
"label": "Best-performing response",
"weight": 4
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "objections",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by objection",
"xAxis": "objection",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Competitive Positioning",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "positioning",
"columns": [
{
"key": "competitor",
"label": "Competitor",
"weight": 2
},
{
"key": "stance",
"label": "Stance",
"weight": 1
},
{
"key": "encounter",
"label": "Encounter %",
"format": "percent",
"align": "right"
},
{
"key": "theyWin",
"label": "They win on",
"weight": 2
},
{
"key": "weWin",
"label": "We win on",
"weight": 3
},
{
"key": "winVs",
"label": "Win rate vs",
"format": "percent",
"align": "right"
}
]
}
]
}
},
{
"label": "Talk tracks",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "tracks",
"columns": [
{
"key": "track",
"label": "Talk track",
"weight": 3
},
{
"key": "objection",
"label": "Used against",
"weight": 2
},
{
"key": "rep",
"label": "Top rep",
"type": "rep",
"weight": 1
},
{
"key": "uses",
"label": "Uses",
"format": "number",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "tracks",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by talk track",
"xAxis": "track",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Pain points",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "pains",
"columns": [
{
"key": "pain",
"label": "Pain point",
"weight": 3
},
{
"key": "feltBy",
"label": "Felt by",
"weight": 1
},
{
"key": "freq",
"label": "Frequency",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win % when raised",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "pains",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by pain point",
"xAxis": "pain",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "ICP",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "icp",
"columns": [
{
"key": "segment",
"label": "Segment",
"weight": 3
},
{
"key": "deals",
"label": "Deals",
"format": "number",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "avgDeal",
"label": "Avg deal",
"format": "currency-compact",
"align": "right"
},
{
"key": "cycle",
"label": "Cycle (days)",
"format": "number",
"align": "right"
},
{
"key": "signal",
"label": "Best-fit signal",
"weight": 2
}
]
},
{
"type": "chart",
"source": "icp",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by segment",
"xAxis": "segment",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
}
]
},
"spec_version": "2.0"
}
```
### Stage 3 — Negotiation
**Goal:** Term sheet with a clear concession ladder and the pilot scoped.
Each objection links to a breakdown of the talk tracks reps use against it and how each performs.
```dashboard
{
"id": "stage3_playbook",
"dataSources": {
"objections": {
"mock": [
{
"objection": "Price is too high (founder doing sales)",
"analysisPath": "user/files/playbook/stage3/objections/price-is-too-high-founder-doing-sales",
"mentions": 5,
"bestReply": "You’re comparing to a $30/mo tool — Cedar replaces hours of admin and recovers slipped-deal revenue. One saved deal pays for the year. Want the ROI math on your ACV?",
"win": 40,
"toNext": 49
},
{
"objection": "Default cadence is too aggressive for enterprise",
"analysisPath": "user/files/playbook/stage3/objections/default-cadence-is-too-aggressive-for-enterprise",
"mentions": 5,
"bestReply": "Fully configurable — we’ll set a long-cycle cadence so nothing feels spammy. Cedar enforces YOUR cadence, not a default.",
"win": 75,
"toNext": 80
},
{
"objection": "Champion lacks authority to approve a pilot",
"analysisPath": "user/files/playbook/stage3/objections/champion-lacks-authority-to-approve-a-pilot",
"mentions": 6,
"bestReply": "Let’s arm you to sell it up — I’ll send a one-page business case and offer a 15-min exec readout so you’re not carrying it alone.",
"win": 40,
"toNext": 49
},
{
"objection": "Team has no bandwidth to evaluate",
"analysisPath": "user/files/playbook/stage3/objections/team-has-no-bandwidth-to-evaluate",
"mentions": 6,
"bestReply": "We run the pilot for you — setup is hours not weeks, and Cedar works in the background. Pick 5 deals and we’ll do the lift.",
"win": 20,
"toNext": 30
},
{
"objection": "Not ready for a pilot — need internal approvals",
"analysisPath": "user/files/playbook/stage3/objections/not-ready-for-a-pilot-need-internal-approvals",
"mentions": 8,
"bestReply": "Makes sense — let’s map the approval path now and pre-stage the security packet so the pilot starts the day you’re cleared.",
"win": 33,
"toNext": 42
}
]
},
"positioning": {
"mock": [
{
"competitor": "Claude / ChatGPT",
"stance": "Compete",
"encounter": 44,
"theyWin": "Free-form drafting, cheap",
"weWin": "Proactive, full deal context, playbook-controlled",
"winVs": 62
},
{
"competitor": "Status quo (Gmail + manual CRM)",
"stance": "Compete",
"encounter": 51,
"theyWin": "No new tool to adopt",
"weWin": "Cut admin 75%, no deals slip",
"winVs": 60
},
{
"competitor": "Sybill",
"stance": "Compete",
"encounter": 29,
"theyWin": "Call notes + CRM autofill",
"weWin": "Writing + follow-up + playbook execution",
"winVs": 55
},
{
"competitor": "Clari",
"stance": "Compete",
"encounter": 24,
"theyWin": "Forecast hygiene",
"weWin": "Per-deal execution + next steps",
"winVs": 58
},
{
"competitor": "HubSpot Sequences",
"stance": "Compete",
"encounter": 26,
"theyWin": "Bundled with the CRM",
"weWin": "Reply quality + deal context",
"winVs": 49
},
{
"competitor": "Gong",
"stance": "Integrate",
"encounter": 38,
"theyWin": "Call recording + coaching",
"weWin": "We integrate — surface the writing/follow-up Gong misses",
"winVs": 78
}
]
},
"tracks": {
"mock": [
{
"track": "Anchor to recovered-deal revenue, not tool price",
"objection": "Price is too high (founder doing sales)",
"rep": "Willem",
"uses": 11,
"toNext": 49,
"win": 40
},
{
"track": "Run the ROI on their ACV",
"objection": "Price is too high (founder doing sales)",
"rep": "Lily",
"uses": 8,
"toNext": 44,
"win": 35
},
{
"track": "Offer a founder / seat-based starter",
"objection": "Price is too high (founder doing sales)",
"rep": "Sarah",
"uses": 6,
"toNext": 38,
"win": 28
},
{
"track": "Configure a long-cycle cadence",
"objection": "Default cadence is too aggressive for enterprise",
"rep": "Willem",
"uses": 10,
"toNext": 80,
"win": 75
},
{
"track": "Show the cadence controls",
"objection": "Default cadence is too aggressive for enterprise",
"rep": "Lily",
"uses": 7,
"toNext": 72,
"win": 66
},
{
"track": "Arm the champion with a 1-pager",
"objection": "Champion lacks authority to approve a pilot",
"rep": "Willem",
"uses": 11,
"toNext": 49,
"win": 40
},
{
"track": "Offer a 15-min exec readout",
"objection": "Champion lacks authority to approve a pilot",
"rep": "Lily",
"uses": 9,
"toNext": 45,
"win": 36
},
{
"track": "We run the pilot (low lift)",
"objection": "Team has no bandwidth to evaluate",
"rep": "Willem",
"uses": 8,
"toNext": 30,
"win": 20
},
{
"track": "Background — no workflow change",
"objection": "Team has no bandwidth to evaluate",
"rep": "Lily",
"uses": 6,
"toNext": 26,
"win": 16
},
{
"track": "Map the approval path together",
"objection": "Not ready for a pilot — need internal approvals",
"rep": "Willem",
"uses": 12,
"toNext": 42,
"win": 33
},
{
"track": "Pre-stage the security packet",
"objection": "Not ready for a pilot — need internal approvals",
"rep": "Sarah",
"uses": 9,
"toNext": 38,
"win": 28
}
]
},
"pains": {
"mock": [
{
"pain": "Deals slip through the cracks on timing",
"feltBy": "AE",
"freq": 64,
"win": 39
},
{
"pain": "Follow-ups are manual and impersonal",
"feltBy": "AE",
"freq": 58,
"win": 36
},
{
"pain": "CRM busywork — moving info column A → B",
"feltBy": "AE",
"freq": 55,
"win": 34
},
{
"pain": "Pipeline analysis = copy-pasting scattered context",
"feltBy": "Strategic AE",
"freq": 47,
"win": 33
},
{
"pain": "Can't clone the top rep's playbook",
"feltBy": "Manager",
"freq": 38,
"win": 37
},
{
"pain": "New reps ramp slowly",
"feltBy": "Manager",
"freq": 34,
"win": 31
},
{
"pain": "Dormant pipeline goes uncovered",
"feltBy": "RevOps",
"freq": 29,
"win": 28
}
]
},
"icp": {
"mock": [
{
"segment": "Mid-market SaaS (50–500)",
"deals": 142,
"win": 41,
"avgDeal": 38000,
"cycle": 34,
"signal": "Champion + follow-up pain"
},
{
"segment": "Enterprise (500+)",
"deals": 63,
"win": 33,
"avgDeal": 96000,
"cycle": 61,
"signal": "Multi-thread, security-ready"
},
{
"segment": "Fintech",
"deals": 44,
"win": 37,
"avgDeal": 72000,
"cycle": 52,
"signal": "Compliance + SOC2 matters"
},
{
"segment": "Healthcare",
"deals": 31,
"win": 29,
"avgDeal": 58000,
"cycle": 58,
"signal": "Slow legal, high ACV"
},
{
"segment": "SMB (<50)",
"deals": 118,
"win": 22,
"avgDeal": 11000,
"cycle": 18,
"signal": "Fast cycle, price-sensitive"
}
]
}
},
"layout": {
"type": "tabs",
"tabs": [
{
"label": "Objections",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "objections",
"columns": [
{
"key": "objection",
"label": "Objection",
"weight": 3
},
{
"key": "analysisPath",
"label": "Analysis",
"type": "docLink",
"linkLabel": "Analysis",
"weight": 1
},
{
"key": "mentions",
"label": "Deals seen",
"format": "number",
"align": "right"
},
{
"key": "bestReply",
"label": "Best-performing response",
"weight": 4
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "objections",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by objection",
"xAxis": "objection",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Competitive Positioning",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "positioning",
"columns": [
{
"key": "competitor",
"label": "Competitor",
"weight": 2
},
{
"key": "stance",
"label": "Stance",
"weight": 1
},
{
"key": "encounter",
"label": "Encounter %",
"format": "percent",
"align": "right"
},
{
"key": "theyWin",
"label": "They win on",
"weight": 2
},
{
"key": "weWin",
"label": "We win on",
"weight": 3
},
{
"key": "winVs",
"label": "Win rate vs",
"format": "percent",
"align": "right"
}
]
}
]
}
},
{
"label": "Talk tracks",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "tracks",
"columns": [
{
"key": "track",
"label": "Talk track",
"weight": 3
},
{
"key": "objection",
"label": "Used against",
"weight": 2
},
{
"key": "rep",
"label": "Top rep",
"type": "rep",
"weight": 1
},
{
"key": "uses",
"label": "Uses",
"format": "number",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "tracks",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by talk track",
"xAxis": "track",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Pain points",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "pains",
"columns": [
{
"key": "pain",
"label": "Pain point",
"weight": 3
},
{
"key": "feltBy",
"label": "Felt by",
"weight": 1
},
{
"key": "freq",
"label": "Frequency",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win % when raised",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "pains",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by pain point",
"xAxis": "pain",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "ICP",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "icp",
"columns": [
{
"key": "segment",
"label": "Segment",
"weight": 3
},
{
"key": "deals",
"label": "Deals",
"format": "number",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "avgDeal",
"label": "Avg deal",
"format": "currency-compact",
"align": "right"
},
{
"key": "cycle",
"label": "Cycle (days)",
"format": "number",
"align": "right"
},
{
"key": "signal",
"label": "Best-fit signal",
"weight": 2
}
]
},
{
"type": "chart",
"source": "icp",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by segment",
"xAxis": "segment",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
}
]
},
"spec_version": "2.0"
}
```
### Stage 4 — Close
**Goal:** Countersigned MSA + order form within 48h of verbal yes.
Each objection links to a breakdown of the talk tracks reps use against it and how each performs.
```dashboard
{
"id": "stage4_playbook",
"dataSources": {
"objections": {
"mock": [
{
"objection": "SOC 2 required before we can proceed",
"analysisPath": "user/files/playbook/stage4/objections/soc-2-required-before-we-can-proceed",
"mentions": 5,
"bestReply": "We’re SOC 2 Type II — here’s the report and DPA. Happy to set up a 30-min legal-to-legal to clear it fast.",
"win": 50,
"toNext": 58
},
{
"objection": "Integration needs IT-admin approval",
"analysisPath": "user/files/playbook/stage4/objections/integration-needs-it-admin-approval",
"mentions": 3,
"bestReply": "Only the Gmail / CRM scopes need admin — I’ll send the exact permission list so IT can approve in one pass, and join the call if useful.",
"win": 67,
"toNext": 72
},
{
"objection": "Salesforce sync lag breaks our source of truth",
"analysisPath": "user/files/playbook/stage4/objections/salesforce-sync-lag-breaks-our-source-of-truth",
"mentions": 4,
"bestReply": "We can move you to near-real-time sync (or a webhook on deal update) so closed/updated deals reflect immediately — no more hourly lag.",
"win": 50,
"toNext": 58
},
{
"objection": "An acquisition froze new-tool purchases",
"analysisPath": "user/files/playbook/stage4/objections/an-acquisition-froze-new-tool-purchases",
"mentions": 4,
"bestReply": "Understood — let’s keep the pilot warm and re-anchor once the new hierarchy settles. I’ll line up the intro to the new decision-maker.",
"win": 33,
"toNext": 42
},
{
"objection": "Data-integrity bugs broke pipeline trust",
"analysisPath": "user/files/playbook/stage4/objections/data-integrity-bugs-broke-pipeline-trust",
"mentions": 4,
"bestReply": "We take that seriously — here’s the incident summary and the fix. Let’s re-verify your pipeline together so you can trust the view.",
"win": 50,
"toNext": 58
}
]
},
"positioning": {
"mock": [
{
"competitor": "Claude / ChatGPT",
"stance": "Compete",
"encounter": 44,
"theyWin": "Free-form drafting, cheap",
"weWin": "Proactive, full deal context, playbook-controlled",
"winVs": 62
},
{
"competitor": "Status quo (Gmail + manual CRM)",
"stance": "Compete",
"encounter": 51,
"theyWin": "No new tool to adopt",
"weWin": "Cut admin 75%, no deals slip",
"winVs": 60
},
{
"competitor": "Sybill",
"stance": "Compete",
"encounter": 29,
"theyWin": "Call notes + CRM autofill",
"weWin": "Writing + follow-up + playbook execution",
"winVs": 55
},
{
"competitor": "Clari",
"stance": "Compete",
"encounter": 24,
"theyWin": "Forecast hygiene",
"weWin": "Per-deal execution + next steps",
"winVs": 58
},
{
"competitor": "HubSpot Sequences",
"stance": "Compete",
"encounter": 26,
"theyWin": "Bundled with the CRM",
"weWin": "Reply quality + deal context",
"winVs": 49
},
{
"competitor": "Gong",
"stance": "Integrate",
"encounter": 38,
"theyWin": "Call recording + coaching",
"weWin": "We integrate — surface the writing/follow-up Gong misses",
"winVs": 78
}
]
},
"tracks": {
"mock": [
{
"track": "Send SOC2 Type II report + DPA",
"objection": "SOC 2 required before we can proceed",
"rep": "Willem",
"uses": 11,
"toNext": 58,
"win": 50
},
{
"track": "Legal-to-legal in 30 min",
"objection": "SOC 2 required before we can proceed",
"rep": "Lily",
"uses": 8,
"toNext": 52,
"win": 44
},
{
"track": "Send the exact scope list to IT",
"objection": "Integration needs IT-admin approval",
"rep": "Willem",
"uses": 7,
"toNext": 72,
"win": 67
},
{
"track": "Offer to join the IT review call",
"objection": "Integration needs IT-admin approval",
"rep": "Lily",
"uses": 5,
"toNext": 64,
"win": 58
},
{
"track": "Enable near-real-time sync",
"objection": "Salesforce sync lag breaks our source of truth",
"rep": "Willem",
"uses": 9,
"toNext": 58,
"win": 50
},
{
"track": "Webhook on deal update",
"objection": "Salesforce sync lag breaks our source of truth",
"rep": "Sarah",
"uses": 6,
"toNext": 50,
"win": 42
},
{
"track": "Keep the pilot warm, re-anchor post-M&A",
"objection": "An acquisition froze new-tool purchases",
"rep": "Willem",
"uses": 9,
"toNext": 42,
"win": 33
},
{
"track": "Get an intro to the new decision-maker",
"objection": "An acquisition froze new-tool purchases",
"rep": "Lily",
"uses": 7,
"toNext": 38,
"win": 28
},
{
"track": "Share the incident summary + fix",
"objection": "Data-integrity bugs broke pipeline trust",
"rep": "Willem",
"uses": 8,
"toNext": 58,
"win": 50
},
{
"track": "Re-verify the pipeline live together",
"objection": "Data-integrity bugs broke pipeline trust",
"rep": "Lily",
"uses": 6,
"toNext": 52,
"win": 44
}
]
},
"pains": {
"mock": [
{
"pain": "Deals slip through the cracks on timing",
"feltBy": "AE",
"freq": 64,
"win": 39
},
{
"pain": "Follow-ups are manual and impersonal",
"feltBy": "AE",
"freq": 58,
"win": 36
},
{
"pain": "CRM busywork — moving info column A → B",
"feltBy": "AE",
"freq": 55,
"win": 34
},
{
"pain": "Pipeline analysis = copy-pasting scattered context",
"feltBy": "Strategic AE",
"freq": 47,
"win": 33
},
{
"pain": "Can't clone the top rep's playbook",
"feltBy": "Manager",
"freq": 38,
"win": 37
},
{
"pain": "New reps ramp slowly",
"feltBy": "Manager",
"freq": 34,
"win": 31
},
{
"pain": "Dormant pipeline goes uncovered",
"feltBy": "RevOps",
"freq": 29,
"win": 28
}
]
},
"icp": {
"mock": [
{
"segment": "Mid-market SaaS (50–500)",
"deals": 142,
"win": 41,
"avgDeal": 38000,
"cycle": 34,
"signal": "Champion + follow-up pain"
},
{
"segment": "Enterprise (500+)",
"deals": 63,
"win": 33,
"avgDeal": 96000,
"cycle": 61,
"signal": "Multi-thread, security-ready"
},
{
"segment": "Fintech",
"deals": 44,
"win": 37,
"avgDeal": 72000,
"cycle": 52,
"signal": "Compliance + SOC2 matters"
},
{
"segment": "Healthcare",
"deals": 31,
"win": 29,
"avgDeal": 58000,
"cycle": 58,
"signal": "Slow legal, high ACV"
},
{
"segment": "SMB (<50)",
"deals": 118,
"win": 22,
"avgDeal": 11000,
"cycle": 18,
"signal": "Fast cycle, price-sensitive"
}
]
}
},
"layout": {
"type": "tabs",
"tabs": [
{
"label": "Objections",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "objections",
"columns": [
{
"key": "objection",
"label": "Objection",
"weight": 3
},
{
"key": "analysisPath",
"label": "Analysis",
"type": "docLink",
"linkLabel": "Analysis",
"weight": 1
},
{
"key": "mentions",
"label": "Deals seen",
"format": "number",
"align": "right"
},
{
"key": "bestReply",
"label": "Best-performing response",
"weight": 4
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "objections",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by objection",
"xAxis": "objection",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Competitive Positioning",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "positioning",
"columns": [
{
"key": "competitor",
"label": "Competitor",
"weight": 2
},
{
"key": "stance",
"label": "Stance",
"weight": 1
},
{
"key": "encounter",
"label": "Encounter %",
"format": "percent",
"align": "right"
},
{
"key": "theyWin",
"label": "They win on",
"weight": 2
},
{
"key": "weWin",
"label": "We win on",
"weight": 3
},
{
"key": "winVs",
"label": "Win rate vs",
"format": "percent",
"align": "right"
}
]
}
]
}
},
{
"label": "Talk tracks",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "tracks",
"columns": [
{
"key": "track",
"label": "Talk track",
"weight": 3
},
{
"key": "objection",
"label": "Used against",
"weight": 2
},
{
"key": "rep",
"label": "Top rep",
"type": "rep",
"weight": 1
},
{
"key": "uses",
"label": "Uses",
"format": "number",
"align": "right"
},
{
"key": "toNext",
"label": "Move to next",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "tracks",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by talk track",
"xAxis": "track",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "Pain points",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "pains",
"columns": [
{
"key": "pain",
"label": "Pain point",
"weight": 3
},
{
"key": "feltBy",
"label": "Felt by",
"weight": 1
},
{
"key": "freq",
"label": "Frequency",
"format": "percent",
"align": "right"
},
{
"key": "win",
"label": "Win % when raised",
"format": "percent",
"align": "right"
}
]
},
{
"type": "chart",
"source": "pains",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by pain point",
"xAxis": "pain",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
},
{
"label": "ICP",
"node": {
"type": "column",
"gap": "lg",
"children": [
{
"type": "table",
"source": "icp",
"columns": [
{
"key": "segment",
"label": "Segment",
"weight": 3
},
{
"key": "deals",
"label": "Deals",
"format": "number",
"align": "right"
},
{
"key": "win",
"label": "Win %",
"format": "percent",
"align": "right"
},
{
"key": "avgDeal",
"label": "Avg deal",
"format": "currency-compact",
"align": "right"
},
{
"key": "cycle",
"label": "Cycle (days)",
"format": "number",
"align": "right"
},
{
"key": "signal",
"label": "Best-fit signal",
"weight": 2
}
]
},
{
"type": "chart",
"source": "icp",
"chart": "bar",
"orientation": "horizontal",
"title": "Win rate by segment",
"xAxis": "segment",
"series": [
{
"key": "win",
"label": "Win %"
}
]
}
]
}
}
]
},
"spec_version": "2.0"
}
```