Agent skill
case-study-writing
B2B case study writing with STAR framework, data visualization, and research. Covers structure, customer quotes, metrics presentation, and distribution formats. Use for: customer success stories, portfolio pieces, sales enablement, marketing content. Triggers: case study, customer story, success story, b2b case study, client testimonial, customer case study, portfolio case study, use case, customer win, results story
Install this agent skill to your Project
npx add-skill https://github.com/inference-sh/skills/tree/main/guides/writing/case-study-writing
SKILL.md
Case Study Writing
Create compelling B2B case studies with research and visuals via inference.sh CLI.
Quick Start
Requires inference.sh CLI (
infsh). Install instructions
infsh login
# Research the customer's industry
infsh app run tavily/search-assistant --input '{
"query": "SaaS customer onboarding challenges 2024 statistics"
}'
The STAR Framework
Every case study follows: Situation -> Task -> Action -> Result
| Section | Length | Content | Purpose |
|---|---|---|---|
| Situation | 100-150 words | Who the customer is, their context | Set the scene |
| Task | 100-150 words | The specific challenge they faced | Create empathy |
| Action | 200-300 words | What solution was implemented, how | Show your product |
| Result | 100-200 words | Measurable outcomes, before/after | Prove value |
Total: 800-1200 words. Longer loses readers. Shorter lacks credibility.
Structure Template
1. Headline (Lead with the Result)
❌ "How Company X Uses Our Product"
❌ "Company X Case Study"
✅ "How Company X Reduced Onboarding Time by 60% with [Product]"
✅ "Company X Grew Revenue 340% in 6 Months Using [Product]"
The headline should be specific, quantified, and state the outcome.
2. Snapshot Box
Place at the top for skimmers:
┌─────────────────────────────────────┐
│ Company: Acme Corp │
│ Industry: E-commerce │
│ Size: 200 employees │
│ Challenge: Manual order processing │
│ Result: 60% faster fulfillment │
│ Product: [Your Product] │
└─────────────────────────────────────┘
3. Situation
- Who is the customer (industry, size, location)
- What relevant context existed before the problem
- 1-2 sentences of company background
4. Task / Challenge
- Quantify the pain: "spending 40 hours/week on manual data entry" not "had data problems"
- Show stakes: what would happen if unsolved (lost revenue, churn, missed deadlines)
- Include a customer quote about the frustration
5. Action / Solution
- What was implemented (your product/service)
- Timeline: "deployed in 2 weeks" / "3-month rollout"
- Key decisions or configurations
- Why they chose you over alternatives (briefly)
- 2-3 specific features that addressed the challenge
6. Results
- Before/after metrics — always quantified
- Timeframe — "within 3 months" / "in the first quarter"
- Unexpected benefits beyond the original goal
- Customer quote about the outcome
Metrics That Matter
How to Present Numbers
❌ "Improved efficiency"
❌ "Saved time"
❌ "Better results"
✅ "Reduced processing time from 4 hours to 45 minutes (81% decrease)"
✅ "Increased conversion rate from 2.1% to 5.8% (176% improvement)"
✅ "Saved $240,000 annually in operational costs"
Metric Categories
| Category | Examples |
|---|---|
| Time | Hours saved, time-to-completion, deployment speed |
| Money | Revenue increase, cost reduction, ROI |
| Efficiency | Throughput, error rate, automation rate |
| Growth | Users gained, market expansion, feature adoption |
| Satisfaction | NPS change, retention rate, support tickets reduced |
Data Visualization
# Generate a before/after comparison chart
infsh app run infsh/python-executor --input '{
"code": "import matplotlib.pyplot as plt\nimport matplotlib\nmatplotlib.use(\"Agg\")\n\ncategories = [\"Processing Time\", \"Error Rate\", \"Cost per Order\"]\nbefore = [4, 12, 8.50]\nafter = [0.75, 1.5, 2.10]\n\nfig, ax = plt.subplots(figsize=(10, 6))\nx = range(len(categories))\nwidth = 0.35\nax.bar([i - width/2 for i in x], before, width, label=\"Before\", color=\"#ef4444\")\nax.bar([i + width/2 for i in x], after, width, label=\"After\", color=\"#22c55e\")\nax.set_ylabel(\"Value\")\nax.set_xticks(x)\nax.set_xticklabels(categories)\nax.legend()\nax.set_title(\"Impact of Implementation\")\nplt.tight_layout()\nplt.savefig(\"results-chart.png\", dpi=150)\nprint(\"Chart saved\")"
}'
Customer Quotes
What Makes a Good Quote
❌ "We love the product." (vague, could be about anything)
❌ "It's great." (meaningless)
✅ "We went from processing 50 orders a day to 200, without adding a single person to the team."
— Sarah Chen, VP Operations, Acme Corp
✅ "Before [Product], our team dreaded Monday mornings because of the report backlog.
Now it's automated and they can focus on actual analysis."
— Marcus Rodriguez, Head of Analytics, DataCo
Quote Placement
- 1 quote in the Challenge section — about the frustration/pain
- 1-2 quotes in the Results section — about the outcome/transformation
- Always attribute: full name, title, company
Quote Formatting
> "We went from processing 50 orders a day to 200, without adding anyone to the team."
>
> — Sarah Chen, VP Operations, Acme Corp
Research Support
Finding Industry Context
# Industry benchmarks
infsh app run tavily/search-assistant --input '{
"query": "average e-commerce order processing time industry benchmark 2024"
}'
# Competitor landscape
infsh app run exa/search --input '{
"query": "order management automation solutions market overview"
}'
# Supporting statistics
infsh app run exa/answer --input '{
"question": "What percentage of e-commerce businesses still use manual order processing?"
}'
Distribution Formats
| Format | Where | Notes |
|---|---|---|
| Web page | /customers/ or /case-studies/ | Full version, SEO-optimized |
| Sales team, email attachment | Designed, downloadable, gated optional | |
| Slide deck | Sales calls, presentations | 5-8 slides, visual-heavy |
| One-pager | Trade shows, quick reference | Snapshot + key metrics + quote |
| Social post | LinkedIn, Twitter | Key stat + quote + link to full |
| Video | Website, YouTube | Customer interview or animated |
Social Media Snippet
Headline stat + brief context + customer quote + CTA
Example:
"60% faster order processing.
Acme Corp was drowning in manual fulfillment. 4 hours per batch. 12% error rate.
After implementing [Product]: 45 minutes per batch. 1.5% errors.
'We went from 50 orders a day to 200 without adding headcount.' — Sarah Chen, VP Ops
Read the full story → [link]"
Writing Checklist
- Headline leads with the quantified result
- Snapshot box with company, industry, challenge, result at top
- Challenge is quantified, not vague
- 2-3 specific customer quotes with attribution
- Before/after metrics with timeframe
- 800-1200 words total
- Skimmable (headers, bold, bullet points)
- Customer approved the final version
- Visual: at least one chart or before/after comparison
Common Mistakes
| Mistake | Problem | Fix |
|---|---|---|
| No specific numbers | Reads like marketing fluff | Quantify everything |
| All about your product | Reads like a sales pitch | Story is about the CUSTOMER |
| Generic quotes | No credibility | Get specific, attributed quotes |
| Missing the "before" | No contrast to show impact | Always show the starting point |
| Too long | Loses reader attention | 800-1200 words max |
| No customer approval | Legal/relationship risk | Always get sign-off |
Related Skills
npx skills add inference-sh/skills@web-search
npx skills add inference-sh/skills@prompt-engineering
Browse all apps: infsh app list
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ui
Batteries-included agent component for React/Next.js from ui.inference.sh. One component with runtime, tools, streaming, approvals, and widgets built in. Capabilities: drop-in agent, human-in-the-loop, client-side tools, form filling. Use for: building AI chat interfaces, agentic UIs, SaaS copilots, assistants. Triggers: agent component, agent ui, chat agent, shadcn agent, react agent, agentic ui, ai assistant ui, copilot ui, inference ui, human in the loop
chat-ui
Chat UI building blocks for React/Next.js from ui.inference.sh. Components: container, messages, input, typing indicators, avatars. Capabilities: chat interfaces, message lists, input handling, streaming. Use for: building custom chat UIs, messaging interfaces, AI assistants. Triggers: chat ui, chat component, message list, chat input, shadcn chat, react chat, chat interface, messaging ui, conversation ui, chat building blocks
tools-ui
Tool lifecycle UI components for React/Next.js from ui.inference.sh. Display tool calls: pending, progress, approval required, results. Capabilities: tool status, progress indicators, approval flows, results display. Use for: showing agent tool calls, human-in-the-loop approvals, tool output. Triggers: tool ui, tool calls, tool status, tool approval, tool results, agent tools, mcp tools ui, function calling ui, tool lifecycle, tool pending
widgets-ui
Declarative UI widgets from JSON for React/Next.js from ui.inference.sh. Render rich interactive UIs from structured agent responses. Capabilities: forms, buttons, cards, layouts, inputs, selects, checkboxes. Use for: agent-generated UIs, dynamic forms, data display, interactive cards. Triggers: widgets, declarative ui, json ui, widget renderer, agent widgets, dynamic ui, form widgets, card widgets, shadcn widgets, structured output ui
web-search
Web search and content extraction with Tavily and Exa via inference.sh CLI. Apps: Tavily Search, Tavily Extract, Exa Search, Exa Answer, Exa Extract. Capabilities: AI-powered search, content extraction, direct answers, research. Use for: research, RAG pipelines, fact-checking, content aggregation, agents. Triggers: web search, tavily, exa, search api, content extraction, research, internet search, ai search, search assistant, web scraping, rag, perplexity alternative
ai-rag-pipeline
Build RAG (Retrieval Augmented Generation) pipelines with web search and LLMs. Tools: Tavily Search, Exa Search, Exa Answer, Claude, GPT-4, Gemini via OpenRouter. Capabilities: research, fact-checking, grounded responses, knowledge retrieval. Use for: AI agents, research assistants, fact-checkers, knowledge bases. Triggers: rag, retrieval augmented generation, grounded ai, search and answer, research agent, fact checking, knowledge retrieval, ai research, search + llm, web grounded, perplexity alternative, ai with sources, citation, research pipeline
Didn't find tool you were looking for?