LLM summary: Run one 10-persona, 7-question Ditto study to generate battlecards, objection guides, quote banks, one-pagers, pitch narratives, ROI frameworks, and demo scripts in about 60 minutes.
A complete Claude Code guide to generating an entire sales enablement kit from a single Ditto study. One 10-persona, 7-question study produces seven finished deliverables — competitive battlecard, objection handling guide, customer evidence quote bank, one-pager, pitch narrative, ROI framework, and demo script — in approximately 60 minutes. Full API workflow, deliverable templates, buyer-committee parallel studies, and quarterly refresh cycle.
68% of sales opportunities are competitive. In those conversations, the outcome depends on how well your sales team understands how buyers actually perceive the competitor — not what the competitor claims on their website.
Traditional sales enablement is built on three inputs of questionable reliability:
Ditto provides the missing input: what a representative sample of your target market thinks, feels, and would do when presented with your product versus the alternatives. This transforms every deliverable from assumption-based to evidence-based.
| Deliverable | Traditional Timeline | Traditional Cost | Ditto + Claude Code |
|---|---|---|---|
| Competitive battlecard | 1–2 weeks | $5K–$10K (agency) | 5 minutes (from study) |
| Objection handling guide | 1–2 weeks | $3K–$5K | 5 minutes |
| Customer evidence quotes | Ongoing (interview-dependent) | $10K+/year | 3 minutes |
| One-pager | 3–5 days | $1K–$3K | 5 minutes |
| Pitch narrative | 2–3 weeks | $5K–$10K | 10 minutes |
| ROI framework | 2–3 weeks | $5K–$8K | 5 minutes |
| Demo script | 1 week | $2K–$5K | 5 minutes |
| Complete kit | 3–6 weeks | $30K–$50K | ~60 minutes total |
Each deliverable is generated from specific questions within the same study. The 7-question design ensures every deliverable has dedicated source data while maximising the information extracted from each persona interaction.
| # | Deliverable | Source Questions | Primary User |
|---|---|---|---|
| 1 | Competitive Battlecard | Q2 (decision drivers), Q5 (switching triggers), Q7 (proof requirements) | AEs in competitive deals |
| 2 | Objection Handling Guide | Q3 (scepticism), Q5 (blockers), Q7 (proof needs) | AEs, SDRs |
| 3 | Customer Evidence Quote Bank | All questions (every response is quotable) | Marketing, Sales, PMM |
| 4 | One-Pager | Q1 (pain), Q3 (excitement), Q4 (hero feature) | AEs, SDRs, Marketing |
| 5 | Pitch Narrative | Q1 (problem), Q3 (solution resonance), Q5 (stakes), Q7 (closing argument) | AEs, SEs |
| 6 | ROI Framework | Q5 (cost of inaction), Q6 (willingness to pay) | AEs, Sales Leadership |
| 7 | Demo Script | Q1 (use case), Q4 (feature priority), Q3 (what excites) | SEs, AEs |
# The Sales Enablement Factory: production flow
#
# One Ditto Study (10 personas, 7 questions, ~20 min)
# |
# +--> Claude Code --> Competitive Battlecard (5 min)
# +--> Claude Code --> Objection Handling Guide (5 min)
# +--> Claude Code --> Customer Evidence Quotes (3 min)
# +--> Claude Code --> One-Pager (5 min)
# +--> Claude Code --> Pitch Narrative (10 min)
# +--> Claude Code --> ROI Framework (5 min)
# +--> Claude Code --> Demo Script (5 min)
#
# Total: ~60 minutes from zero to complete sales kit
# Traditional equivalent: 3-6 weeks
These seven questions are specifically engineered so that each does double or triple duty across deliverables. The sequence matters: earlier answers provide context that enriches later responses.
| Q# | Question | Deliverables It Powers | What to Extract |
|---|---|---|---|
| 1 | "You're evaluating solutions in [category] for your team. What's your biggest pain point right now? Walk me through how you currently solve it." |
Pitch Narrative, One-Pager, Demo Script | Pain themes (cluster by frequency), current workflow descriptions, alternative tools mentioned, time/cost spent on workarounds |
| 2 | "Compared to [Competitor A] and [Competitor B], what would make you choose a new option? What's the minimum bar?" |
Battlecard (primary), Pitch Narrative | Decision drivers favouring you = "Why We Win." Decision drivers favouring competitor = "Competitor Strengths." Minimum bar = table-stakes features |
| 3 | "If someone presented [your product] to you, what would your first reaction be? What excites you most? What makes you sceptical?" |
Objection Guide, One-Pager, Demo Script | Excitement quotes = one-pager value props. Scepticism = objection categories. Ratio of excited:sceptical = sales difficulty indicator |
| 4 | "What's the ONE thing you'd want this solution to do brilliantly for you? Why does that matter more than everything else?" | Demo Script (hero feature), ROI Framework | Feature priority ranking (by frequency of mention). The #1 feature becomes the demo opening. "Why it matters" becomes the ROI narrative |
| 5 | "What would make you switch from your current solution? What's blocking you right now?" | Battlecard (switching triggers), Objection Guide (barriers), ROI Framework | Switching triggers = when to attack. Blockers = objection categories. Cost of not switching = ROI "cost of inaction" input |
| 6 | "What would you expect to pay for this? What would feel like a steal versus too expensive?" | ROI Framework, Objection Guide (price objection) | Price range (steal / fair / too expensive). Value framing language. Price-value relationship ("I'd pay X if it saved me Y") |
| 7 | "What would you need to see to feel confident recommending this to your boss or team? What proof matters most?" | Quote Bank, Battlecard (proof points), Pitch Narrative (closing) | Proof type hierarchy (case studies, demos, free trials, ROI data, peer references). These become the evidence your sales team must lead with |
[category], [Competitor A], [Competitor B], and [your product] with your specific context. The question structures have been tested across 50+ studies and optimised for multi-deliverable extraction. Changing the structure reduces deliverable quality.
Full API sequence. Every command is copy-paste ready. The output of this workflow is 70 data points (10 personas × 7 questions) plus Ditto's completion analysis — the raw material for all seven deliverables.
curl -s -X POST "https://app.askditto.io/v1/research-groups/recruit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sales Enablement - [Your Product] vs [Competitor] - [Date]",
"description": "[ICP description: role, seniority, company context]",
"group_size": 10,
"filters": {
"country": "USA",
"age_min": 28,
"age_max": 55,
"employment": "employed",
"education": "bachelors"
},
"sampling_method": "random",
"deduplicate": true
}'
# Response - SAVE THE UUID:
{
"uuid": "grp-abc123-...",
"name": "Sales Enablement - Acme vs Mixpanel - Feb 2026",
"agents": [ ... ] // 10 persona objects
}
group_size, not size. The API rejects size."CA" not "California". Full names return 0 agents.income filter does not work. Use education and employment as proxies.curl -s -X POST "https://app.askditto.io/v1/research-studies" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sales Enablement: [Your Product] vs [Competitor] - [Date]",
"research_group_uuid": "GROUP_UUID_FROM_STEP_1"
}'
# Response - SAVE THE STUDY ID:
{
"id": "study-xyz789",
"name": "Sales Enablement: Acme vs Mixpanel - Feb 2026",
"status": "active"
}
# Question 1: Pain Points & Current Solutions
curl -s -X POST "https://app.askditto.io/v1/research-studies/STUDY_ID/questions" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"question": "You'\''re evaluating solutions in [category] for your team. What'\''s your biggest pain point right now? Walk me through how you currently solve it."
}'
# Response:
{
"job_ids": ["job-001", "job-002", ... "job-010"]
}
# Poll each job ID until status = "finished"
curl -s -X GET "https://app.askditto.io/v1/jobs/JOB_ID" \
-H "Authorization: Bearer YOUR_API_KEY"
# Response when complete:
{
"id": "job-001",
"status": "finished",
"result": {
"answer": "The biggest pain point for our team is..."
}
}
"finished", send the next question. A full 7-question study typically completes in 5–8 minutes of polling. Store responses in a structured format for deliverable generation:
# Recommended data structure:
{
"study_id": "study-xyz789",
"product": "Acme Analytics",
"competitor": "Mixpanel",
"date": "2026-02-06",
"personas": [
{"id": "agent-001", "name": "Sarah M.", "age": 34, "role": "Product Manager"},
// ... all 10
],
"questions": [
{
"number": 1,
"text": "You're evaluating solutions in...",
"responses": [
{"persona_id": "agent-001", "answer": "..."},
// ... all 10 responses
]
},
// ... all 7 questions
]
}
Repeat Steps 3–4 for all 7 questions.
curl -s -X POST "https://app.askditto.io/v1/research-studies/STUDY_ID/complete" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
This triggers Ditto's analysis engine: overall summary, key segments, divergences, shared mindsets, and follow-up suggestions. Poll the returned job IDs until complete. This analysis provides additional material for your deliverables.
curl -s -X POST "https://app.askditto.io/v1/research-studies/STUDY_ID/share" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"
# Response:
{
"url": "https://app.askditto.io/organization/studies/shared/xyz123"
}
?utm_source=ce for email outreach.
The battlecard is the most-used enablement asset. It must be one page, scannable in 60 seconds during a live call, and accurate enough that reps trust it with their deals.
| Battlecard Section | Source Question | Extraction Logic |
|---|---|---|
| Why We Win | Q2 (decision drivers favouring you) | Cluster all reasons personas cited for preferring your product. Rank by frequency. Top 3–4 become bullets with exact persona language and count. |
| Competitor Strengths | Q2 (decision drivers favouring competitor) | Extract every reason personas cited for leaning toward the competitor. For each, draft a response strategy: acknowledge, then redirect. |
| Landmine Questions | Q2 (competitor weaknesses implied), Q3 (scepticism toward competitor claims) | Convert weaknesses into questions: "Have you asked [Competitor] about [weakness area]?" These expose gaps without sounding adversarial. |
| Quick Dismisses | Q3 (scepticism about competitor), Q5 (reasons for switching away from competitor) | For each competitor claim that personas were sceptical about, write a 1–2 sentence rebuttal grounded in the scepticism reasons. |
| Switching Triggers | Q5 (what would make you switch) | List every trigger mentioned. These inform outbound timing: "Attack when [trigger] happens." |
| Proof Points | Q7 (evidence requirements) | What proof type buyers demand most. Rank: case studies, free trials, demos, ROI calculations, peer references. |
## [Your Product] vs [Competitor] — Competitive Battlecard
### Updated: [Date] | Source: Ditto Study [ID] | [X] Personas
---
### Why We Win
1. **[Theme 1]** — "[Exact persona language]" (cited by X/10)
2. **[Theme 2]** — "[Exact persona language]" (cited by X/10)
3. **[Theme 3]** — "[Exact persona language]" (cited by X/10)
### Competitor Strengths (and How to Respond)
| Their Strength | How to Respond |
|----------------|----------------|
| [Strength 1] (cited by X/10) | "That's true. Here's how we approach it differently..." |
| [Strength 2] (cited by X/10) | "We hear that. What we've found is..." |
### Landmine Questions
- "Have you asked [Competitor] about [weakness area]? Worth understanding before you commit."
- "What does [Competitor] pricing look like at [scale trigger]? Ask them to walk you through that."
- "Can your team actually [claimed capability], or will you need [hidden dependency]?"
### Quick Dismisses
| When They Say... | You Say... |
|------------------|------------|
| "[Competitor claim 1]" | "[1-2 sentence rebuttal from Q3/Q5 scepticism]" |
| "[Competitor claim 2]" | "[1-2 sentence rebuttal]" |
### Switching Triggers (When to Attack)
- [Trigger 1] (e.g., "competitor raised prices") — cited by X/10
- [Trigger 2] (e.g., "product reliability issues") — cited by X/10
- [Trigger 3] (e.g., "team outgrew the tool") — cited by X/10
### Proof Points Required
- [Proof type 1] (cited by X/10 as most convincing)
- [Proof type 2] (cited by X/10)
---
*Source: Ditto synthetic research, [X] personas, [demographic description]*
*Study link: [share URL with ?utm_source=ce]*
Every scepticism response from Q3, every blocker from Q5, and every proof requirement from Q7 is an objection your sales team will face. The guide pairs each objection with an evidence-backed response.
## Objection Handling Guide: [Your Product]
### Updated: [Date] | Source: Ditto Study [ID]
---
### Primary Objections (cited by 5+ personas)
**OBJECTION: "[Exact concern language from persona]"**
- Category: [Price / Switching / Security / Feature / Viability / Learning Curve]
- Frequency: Cited by X/10 personas
- Root cause: [What's really driving this concern]
- Response: "[Acknowledge] + [Evidence] + [Next step]"
- Supporting quote: "[Persona name], [age], [role]: '[exact quote]'"
- Resolution trigger: "[What convinced hesitant personas]"
**OBJECTION: "[Next concern]"**
- ...
---
### Secondary Objections (cited by 2-4 personas)
**OBJECTION: "[Concern]"**
- ...
---
### Objection Response Framework
For ANY objection not listed above, follow this structure:
1. **Acknowledge:** "That's a fair concern. Let me address it directly."
2. **Evidence:** "X out of 10 buyers we researched shared this concern.
Here's what we found..."
3. **Story:** "A similar team at [company/industry] had the same worry.
They [specific resolution]."
4. **Next step:** "Would it help if we [specific proof point from Q7]?"
Every persona response is a potential quote. Claude Code curates the best ones, organised by theme, with full demographic context.
Select quotes that are:
## Customer Evidence Quote Bank: [Your Product]
### [X] curated quotes from [X] personas | Updated: [Date]
---
### Theme: Value & ROI
- "[Quote about value perception]"
— [Name], [Age], [Role], [Location]
Source: Q6 | Use: Pricing conversations, ROI discussions
- "[Quote about cost savings]"
— [Name], [Age], [Role], [Location]
Source: Q5 | Use: ROI framework support
### Theme: Competitive Differentiation
- "[Quote about why they'd choose you over competitor]"
— [Name], [Age], [Role], [Location]
Source: Q2 | Use: Competitive deals, battlecard reinforcement
### Theme: Pain Points & Frustrations
- "[Vivid description of current problem]"
— [Name], [Age], [Role], [Location]
Source: Q1 | Use: Pitch opening, problem validation
### Theme: Product Excitement
- "[What excites them about your product]"
— [Name], [Age], [Role], [Location]
Source: Q3 | Use: One-pager, website copy, social proof
### Theme: Feature Priorities
- "[What they'd use first and why]"
— [Name], [Age], [Role], [Location]
Source: Q4 | Use: Demo script, feature marketing
### Statistical Claims (aggregated)
- "[X] out of [Y] said [finding]" — Source: Q[N]
- "[X] out of [Y] cited [finding]" — Source: Q[N]
- "[X] out of [Y] would [action]" — Source: Q[N]
The one-pager describes your product in the language customers use, not the language your product team uses. Every word comes from persona responses.
## [Your Product]: [Customer-Language Tagline from Q3]
### The Problem
[1-2 sentences using the exact frustration language from Q1.
Use the most frequently cited pain point. Include a data point:
"X out of 10 [target buyers] told us [pain point]."]
### The Solution
[1-2 sentences describing your product using the excitement
language from Q3. Not feature descriptions — outcome descriptions.
"Instead of [pain], you get [outcome]."]
### Why It Matters
- **[Benefit 1]** — [Customer language from Q3/Q4] (cited by X/10)
- **[Benefit 2]** — [Customer language from Q3/Q4] (cited by X/10)
- **[Benefit 3]** — [Customer language from Q3/Q4] (cited by X/10)
### The Evidence
"[Best persona quote about your product]"
— [Name], [Age], [Role]
[X] out of [Y] [target buyers] said [headline finding from study].
### Next Steps
- [Primary CTA from Q7: whatever proof type they demanded most]
- [Secondary CTA]
---
*Based on research with [X] [demographic description]*
The pitch narrative follows the StoryBrand framework (Donald Miller): a customer has a problem, meets a guide, receives a plan, takes action, avoids failure, and achieves success. Every element is populated with study data.
| StoryBrand Element | Study Source | How to Extract |
|---|---|---|
| Character (the customer) | Persona demographics + Q1 (their current world) | Composite buyer profile from persona attributes. "A [role] at a [company type] dealing with [Q1 pain]." |
| Problem | Q1 (biggest pain), Q5 (cost of inaction) | Most frequently cited frustration + the consequence of not solving it. Three layers: external (the situation), internal (the frustration), philosophical (why it's wrong). |
| Guide (your brand) | Q2 (why they'd choose you) + positioning | Your differentiators, expressed using the decision driver language from Q2. "We [unique approach] because [reason personas cited]." |
| Plan | Q4 (feature sequence) + Q7 (proof requirements) | Three steps: (1) [First thing they'd try from Q4], (2) [Evidence they'd see from Q7], (3) [Outcome they expect from Q3]. |
| Call to Action | Q7 (what would make them recommend) | The specific action that personas said would give them confidence. Demo, trial, case study, reference call. |
| Avoid Failure | Q5 (blockers and risks), Q3 (scepticism) | Proactively address the top objections before they arise. "You might be wondering about [concern]. Here's how we handle it." |
| Success | Q3 (excitement), Q4 (desired outcome), Q6 (value perception) | The outcome personas described in their own words. "Instead of [Q1 pain], you get [Q3 excitement]." |
## Pitch Narrative: [Your Product]
### StoryBrand Structure | Source: Ditto Study [ID]
---
### THE CHARACTER
[Composite buyer from personas]:
"You're a [role] at a [company type]. Every [time period], you face
[Q1 pain point]. You've tried [Q1 current solutions], but [Q1
frustration with current approach]."
### THE PROBLEM
- **External:** [The situation — Q1 pain, stated factually]
- **Internal:** [The frustration — Q1 emotional language]
- **Philosophical:** [Why this shouldn't be the case]
- **Stakes:** "[Q5: What happens if nothing changes for 12 months]"
### THE GUIDE
"We built [Your Product] because [positioning reason]. [X] out of
[Y] buyers told us the #1 thing they wanted was [Q4 hero feature].
That's exactly what we do."
### THE PLAN
1. **Step 1:** [Q4 hero feature — what they'd experience first]
2. **Step 2:** [Q7 proof — the evidence that builds confidence]
3. **Step 3:** [Q3 excitement outcome — the result they want]
### THE CALL TO ACTION
"[Q7: The specific proof they said they'd need.
E.g., 'See a 15-minute demo with your own data']"
### AVOID FAILURE (Proactive Objection Handling)
"You might be thinking: '[Q3 scepticism / Q5 blocker].'
Here's how we address that: [Evidence-backed response]."
### SUCCESS
"Instead of [Q1 pain], you get [Q3 excitement].
[Best persona quote about the outcome they want.]"
The ROI framework quantifies the value of your product using the buyer's own framing. It pairs cost-of-inaction data from Q5 with willingness-to-pay data from Q6.
## ROI Framework: [Your Product]
### Source: Ditto Study [ID] | [X] Personas
---
### Cost of Status Quo (Annual)
[From Q1 and Q5: what are they spending in time, money, and
frustration on the current approach?]
| Cost Category | Estimated Annual Impact | Source |
|---------------|------------------------|--------|
| Time wasted on [manual process] | [X] hours/week × [rate] = $[amount] | Q1: [X]/10 cited this |
| Revenue lost to [inefficiency] | $[amount] | Q5: "[persona quote about cost]" |
| Risk of [consequence] | $[amount] | Q5: "[persona quote about stakes]" |
| **Total cost of inaction** | **$[total]** | |
### Investment Required
| Component | Cost |
|-----------|------|
| Annual licence | $[your pricing] |
| Implementation | $[estimate] |
| Training | $[estimate] |
| **Total investment** | **$[total]** |
### Value Delivered (from study data)
- **Primary benefit:** [Q4 hero feature outcome, quantified]
"[Persona quote: 'This would save me X hours per week']"
- **Secondary benefit:** [Q3 excitement, quantified]
- **Tertiary benefit:** [Additional value from Q3/Q4]
### Payback Timeline
- **Month 1-2:** [Quick wins — what they'd see immediately]
- **Month 3-6:** [Efficiency gains — compounding benefits]
- **Month 6-12:** [Strategic outcomes — full value realisation]
### Price Sensitivity Context
- Personas said a "steal" price would be: $[Q6 data]
- Personas said "fair" price would be: $[Q6 data]
- Personas said "too expensive" starts at: $[Q6 data]
- Your actual price: $[your pricing] — positions as [steal/fair/premium]
### The Bottom Line
"For every $1 invested in [Your Product], [target buyer] gets
$[X] in return within [timeframe]. [X] out of [Y] personas
said they'd expect ROI within [Q6 timeframe]."
The demo script presents features in buyer-priority order. Q4 determines the opening. Q1 provides the scenario. Q3 identifies what excites. Q7 determines the closing evidence.
## Demo Script: [Your Product] for [Buyer Type]
### Feature sequence based on buyer priority | Source: Ditto Study [ID]
---
### 1. OPENING — Set Context (30 seconds)
"Based on what we've heard from [target buyers] like you, the
biggest challenge is [Q1 #1 pain point]. Sound familiar?"
[Wait for confirmation. This establishes relevance.]
### 2. HERO FEATURE — Show #1 Priority (90 seconds)
[Q4: The ONE thing personas said they'd want to see first]
"Let me show you [feature]. This is what [X] out of [Y] buyers
told us matters most."
- Demo the feature using prospect's own scenario if possible
- Show the result/benefit immediately (don't build up to it)
- Pause: "Is this the kind of thing you're looking for?"
### 3. SUPPORTING FEATURES — #2 and #3 Priorities (90 seconds)
[Q4 secondary features, connected to Q1 pain points]
"Now that you've seen [hero], let me show you how [feature 2]
addresses [Q1 pain #2]..."
- Connect each feature to a specific buyer pain
- Show features working together (not in isolation)
### 4. INTEGRATION — Daily Workflow (60 seconds)
[Q1: How they currently work — show how you fit in]
"You mentioned you currently use [Q1 current tool]. Here's
how [Your Product] integrates with that..."
### 5. SOCIAL PROOF (30 seconds)
"[Best persona quote from Q3 about excitement]"
— [Name], [Age], [Role]
[Or: "Teams like yours have seen [specific outcome]."]
### 6. PROACTIVE OBJECTION HANDLING (as needed)
[Q3 scepticism + Q5 blockers — address before they ask]
"A question we often get is [Q3 scepticism].
Here's how we handle that: [evidence-backed response]."
### 7. CLOSE — Proof & Next Step (30 seconds)
[Q7: Whatever proof type they demanded most]
"The next step most teams find useful is [Q7 #1 proof type].
Would that be helpful for you?"
---
### Feature Priority Reference (from Q4)
1. [Feature — cited by X/10 as #1 priority]
2. [Feature — cited by X/10]
3. [Feature — cited by X/10]
4. [Feature — cited by X/10]
5. [Feature — cited by X/10]
Most B2B purchases involve multiple stakeholders who care about different things. A single study produces a general-purpose sales kit. Running 3–4 parallel studies with different persona configurations produces persona-specific versions of every deliverable.
| Buyer Type | Primary Concern | Group Configuration |
|---|---|---|
| Economic Buyer (Finance, Procurement) |
ROI, total cost of ownership, implementation risk | age_min: 40, age_max: 60, education: "masters"Description: "Finance and procurement leaders evaluating software investments" |
| Technical Evaluator (IT, Engineering) |
Security, compliance, integration, scalability | age_min: 28, age_max: 50, education: "bachelors"Description: "IT and engineering professionals evaluating technical solutions" |
| End User (Operations, Marketing) |
Ease of use, productivity, daily workflow | age_min: 25, age_max: 45, employment: "employed"Description: "Day-to-day users of [category] tools in operations and marketing roles" |
| Executive Sponsor (VP, Director) |
Strategic fit, competitive advantage, team adoption | age_min: 38, age_max: 60, education: "masters"Description: "Department heads and VPs responsible for strategic technology decisions" |
# Create all 4 groups simultaneously:
# Group 1: Economic buyers
curl -s -X POST "https://app.askditto.io/v1/research-groups/recruit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sales Enablement - Economic Buyers - [Date]",
"description": "Finance and procurement leaders evaluating software investments",
"group_size": 10,
"filters": {
"country": "USA", "age_min": 40, "age_max": 60,
"employment": "employed", "education": "masters"
},
"sampling_method": "random", "deduplicate": true
}'
# Group 2: Technical evaluators
curl -s -X POST "https://app.askditto.io/v1/research-groups/recruit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sales Enablement - Technical Evaluators - [Date]",
"description": "IT and engineering professionals evaluating technical solutions",
"group_size": 10,
"filters": {
"country": "USA", "age_min": 28, "age_max": 50,
"employment": "employed", "education": "bachelors"
},
"sampling_method": "random", "deduplicate": true
}'
# Group 3: End users
# Group 4: Executive sponsors
# ... same pattern with appropriate filters and descriptions
Create a study for each group. Ask the same 7 questions to all four studies. Run questions in parallel across studies (send Q1 to all 4 simultaneously, poll all, then Q2 to all 4, etc.).
| Meeting with... | Use These Deliverables |
|---|---|
| CFO | Economic-buyer ROI framework + economic-buyer battlecard (leads with TCO) + economic-buyer objection guide (addresses budget/risk concerns) |
| CTO / Engineering Lead | Technical-evaluator demo script (opens with API/security) + technical objection guide (addresses integration/compliance) + technical one-pager (architecture-focused) |
| End Users | End-user demo script (opens with daily workflow) + end-user one-pager (productivity-focused) + end-user quote bank (ease-of-use quotes) |
| VP / Department Head | Executive pitch narrative (strategic framing) + executive battlecard (competitive advantage focus) + executive ROI (strategic outcomes) |
Product: "FlowBoard" — a project management tool for mid-market engineering teams
Competitor: Jira
Category: Engineering project management
Target buyer: US engineering managers and directors, aged 30–50
Jira's key claim: "The #1 software development tool used by agile teams"
curl -s -X POST "https://app.askditto.io/v1/research-groups/recruit" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Sales Enablement - FlowBoard vs Jira - Feb 2026",
"description": "Engineering managers and directors at mid-market companies evaluating project management tools",
"group_size": 10,
"filters": {
"country": "USA",
"age_min": 30,
"age_max": 50,
"employment": "employed",
"education": "bachelors"
},
"sampling_method": "random",
"deduplicate": true
}'
| Question | Top Finding | Deliverable Impact |
|---|---|---|
| Q1: Pain | 8/10: "Jira is too complex for our team size" | Pitch opens with complexity problem. One-pager leads with simplicity. |
| Q2: Decision drivers | 7/10 favour FlowBoard for "faster setup"; 6/10 favour Jira for "ecosystem" | Battlecard: "Why We Win" = faster setup. Competitor Strength = ecosystem. Response: "Which integrations do you actually use?" |
| Q3: Reaction | High excitement (8/10), moderate scepticism (4/10: "Can it scale?") | Objection guide: scalability concern with evidence. Demo shows scale scenario. |
| Q4: Hero feature | 6/10: "Real-time sprint visibility without configuration" | Demo script opens with sprint dashboard. ROI: time saved on status meetings. |
| Q5: Switch triggers | 7/10: "Jira admin overhead" / Blocker: "Migration fear" | Battlecard switching trigger: admin complaints. Objection: migration handled by FlowBoard team. |
| Q6: WTP | Steal: $8/user/mo. Fair: $15. Too expensive: $25+ | ROI framework: at $12/user, positions as "strong value." Cost of Jira admin: ~$40K/year. |
| Q7: Proof needed | 7/10: "Show me a team our size that migrated successfully" | Sales must lead with mid-market migration case study. This is non-negotiable. |
## FlowBoard vs Jira — Competitive Battlecard
### Why We Win
1. **Faster setup** — "I could have my team running in a day, not a month"
(cited by 7/10)
2. **No admin overhead** — "I don't need a dedicated Jira admin"
(cited by 6/10)
3. **Real-time sprint visibility** — "I can see where we are without
configuring 15 dashboards" (cited by 6/10)
### Competitor Strengths (and How to Respond)
| Jira Strength | Response |
|---------------|----------|
| Larger ecosystem (6/10) | "Which integrations do you actually use daily?
We cover the top 12. Ask Jira users how many of their 200+ they've activated." |
| More customisable (4/10) | "Customisation means configuration overhead.
Our teams get 90% of the value in 10% of the setup time." |
### Landmine Questions
- "How much time does your team spend on Jira administration per week?"
- "When was the last time you updated your Jira workflow configuration?"
- "Can a new team member be productive in Jira on day one?"
### Quick Dismisses
| They Say | You Say |
|----------|---------|
| "Jira is the industry standard" | "Standards evolve. Jira was built for
enterprise complexity. Your 40-person team doesn't need enterprise complexity." |
| "We've already invested in Jira" | "Migration takes 2 days with our team
handling it. Cost of staying: ~$40K/year in admin overhead." |
### Switching Triggers
- Jira admin quits or gets reassigned (7/10 cited admin dependency)
- Team grows past the point where Jira config can keep up (5/10)
- Annual licence renewal (price comparison moment) (4/10)
### DEMO OPENING (based on Q4: hero feature)
"Let me start with the thing engineering managers tell us matters most:
knowing where your sprint stands without configuring anything.
[Show: Sprint dashboard, real-time, zero-config]
This is your sprint. Right now. No Jira query language. No custom
dashboard setup. No asking your admin to build a report.
6 out of 10 engineering managers we researched said this is the
#1 thing they want from a PM tool. Is this the kind of visibility
you're looking for?"
Sales enablement is iterative, not one-time. Deliverables go stale as competitors evolve, buyers' concerns shift, and your own product changes. The Ditto + Claude Code refresh cycle replaces annual battlecard updates with continuous improvement.
| Timing | Activity | Study Type | Deliverables Updated |
|---|---|---|---|
| Month 1 | Baseline study | Full 7-question, 10-persona study | All 7 deliverables generated from scratch |
| Month 2 | Targeted objection study | 5-question study focused on objections sales reported from the field | Objection guide + battlecard (Quick Dismisses section) |
| Month 3 | Competitive perception check | 3-question pulse on competitor perception shifts | Battlecard (Why We Win + Competitor Strengths) |
| Quarterly | Full refresh | Full 7-question study with fresh personas | All 7 deliverables refreshed. Compare to previous quarter for trends. |
# Continuous improvement cycle:
#
# Month 1: Run baseline study → Generate 7 deliverables → Distribute to sales
# ↓
# Sales uses collateral in deals (2-4 weeks)
# ↓
# Sales reports: "We're hearing a new objection about [X]"
# ↓
# Month 2: Run targeted study on new objection → Update objection guide
# ↓
# Competitive landscape shifts (competitor launches feature / raises price)
# ↓
# Month 3: Run competitive pulse → Refresh battlecard
# ↓
# Quarter end: Full refresh → Compare to baseline → Identify perception trends
# ↓
# Repeat
After each quarterly refresh, Claude Code compares current findings to the previous quarter:
## Competitive Trend Report: FlowBoard vs Jira
### Q1 2026 → Q2 2026
| Metric | Q1 | Q2 | Trend |
|--------|----|----|-------|
| "Why We Win" #1 reason | "Faster setup" (7/10) | "Faster setup" (8/10) | Strengthening ↑ |
| Competitor's perceived strength | "Ecosystem" (6/10) | "Ecosystem" (4/10) | Weakening ↓ |
| Top switching trigger | "Admin overhead" | "Price increase" | New trigger emerged |
| Hero feature demand | "Sprint visibility" | "Sprint visibility" | Stable → |
| Price sensitivity | Fair: $15/user | Fair: $18/user | WTP increasing ↑ |
### Implications:
- Our setup speed advantage is strengthening — lean into it harder
- Jira's ecosystem advantage is fading — reduce emphasis on integration parity
- New switching trigger (price) — time outbound around Jira renewals
- WTP increasing — test a price tier at $18/user
/complete. Study completion triggers Ditto's analysis engine, which identifies segments and divergences that add depth to every deliverable.| Error | Cause | Solution |
|---|---|---|
size parameter rejected |
Wrong parameter name | Use group_size, not size |
| 0 agents recruited | State filter used full name | Use 2-letter codes: "TX" not "Texas" |
Jobs stuck in "pending" |
Normal for first 10–15 seconds | Continue polling with 5-second intervals |
income filter rejected |
Unsupported filter | Remove; use education/employment as proxy |
| Missing completion analysis | Forgot to call /complete |
Always call POST /v1/research-studies/{id}/complete after final question |
Approximately 60 minutes total: 10 minutes for study design and group creation, 20 minutes for study execution (asking 7 questions and polling responses), 5 minutes for study completion, and 25–30 minutes for Claude Code to generate all 7 deliverables. The traditional equivalent takes 3–6 weeks.
10 per study is the recommended minimum. This provides enough diversity for credible frequency counts ("7 out of 10 said"). For buyer committee studies, use 10 per buyer type (4 parallel studies of 10 = 40 total personas, still completing in roughly the same wall-clock time due to parallelisation).
One study per competitor. Q2 and Q3 reference the specific competitor by name. A study that tries to cover three competitors becomes unfocused. For multiple competitors, run parallel studies (same questions, different competitor names in Q2/Q3).
Run a targeted 3–5 question follow-up study focused on the new objection. Create a new research group or reuse the existing one. Ask personas specifically about the concern sales is hearing. Update the objection guide and battlecard within 30 minutes.
Full refresh quarterly. Targeted updates (specific objections, competitive shifts) monthly. If a major competitive event occurs (competitor launches feature, raises prices, suffers outage), run an immediate pulse study and update the relevant deliverables the same day.
Yes. Replace Q2's competitor names with the alternatives buyers actually use: spreadsheets, manual processes, internal tools, "doing nothing." The competitive battlecard becomes a "Why Change" card: why your product beats the status quo. Q5 (switching triggers) becomes "What would make you invest in a solution?"
Testimonials are curated, approved, polished. The quote bank is raw buyer language organised by theme. Sales reps use it to find the right quote for the right meeting: "When talking to a CFO about ROI, use this quote from a 45-year-old finance director." The specificity and demographic context make quotes credible in live conversations.
Yes. If you want to run a follow-up study with the same personas (e.g., a competitive update or new objection deep-dive), create a new study referencing the same research_group_uuid. Personas retain context from previous studies, which can produce deeper insights.
Wherever your sales team already works: Slack channel, sales enablement platform (Highspot, Seismic, Showpad), shared drive, or directly in CRM. The format matters less than the access pattern. If reps can't find the battlecard in 10 seconds during a live call, it won't get used. Pin it where they look.
Traditional win/loss: 4–6 weeks, 10–15 interviews, buyers who chose your competitor are reluctant to participate. Ditto: 60 minutes, 10 persona responses, no recruitment friction. EY validated 92% correlation between Ditto synthetic responses and traditional research. The recommended approach is hybrid: Ditto for continuous enablement, win/loss interviews for deal-specific post-mortems.
Related guides:
Ditto — Synthetic market research with 300,000+ AI personas. Validated by EY (92% correlation), Harvard, Cambridge, Stanford, and Oxford.
askditto.io · [email protected]