← Back to portfolio Email me →
Production · Summit Rx

30 minutes, every day, given back to sales.

Summit Rx sales reps were spending the first 30 minutes of every morning typing the same six replies to inbound inquiries. Now n8n + Claude drafts them in our voice; reps approve with one click.

RoleSolo builder
Time to ship~2 weeks
Stackn8n · Gmail · HubSpot · Claude
StatusLive · used daily

The problem

Summit Rx's sales team had a predictable morning ritual: open Gmail, see 15–20 overnight inbound inquiries, copy-paste the same response templates, tweak the greeting, send. Then repeat for the next email. And the next.

The work wasn't hard. Most inquiries fell into six or seven predictable buckets: pricing, product fit, integration questions, demo requests. But it was ~30 minutes of rote typing per rep, every single morning, before any real selling started. Multiply by four reps. Multiply by a year. That's 120 hours of paid time spent being a template-assembly machine.

Why the existing Gmail templates didn't solve it

Gmail templates are a dumb paste. They don't pull in the prospect's name, company, or prior context from HubSpot. So reps were always editing the template anyway — which meant re-reading the inquiry, re-checking HubSpot, re-personalizing. Same 5 minutes per email, whether a template existed or not.

What I tried first

First attempt: a more sophisticated Gmail template library — organized by inquiry type, with mail-merge variables that auto-fill the prospect's name and company. Shaved maybe 2 minutes off the average reply. Reps were still reading the inquiry, still picking a template, still re-opening HubSpot to check context, still editing every template before sending.

The template system wasn't the bottleneck. The mental work of "read → categorise → find context → write" was the bottleneck. That's not a templating problem. That's a job for an LLM (Large Language Model — the AI behind ChatGPT and Claude that can read text, understand it, and write coherent replies).

What shipped

A workflow that watches the sales inbox, does the reading + classifying + context-gathering for the rep, then produces a draft reply in the team's voice — ready for one-click approval.

Gmail inbound n8n polls every 2 min filter: inbox / not from existing thread Classify intent Claude Haiku call pricing / demo / fit / support / other HubSpot lookup pull contact + company record + last 3 touches Draft reply Claude Sonnet call intent + context + voice guide Gmail draft rep gets notified one-click edit + send
Five steps. From inbound email to rep-approved draft in under 10 seconds.

1. n8n watches Gmail. n8n is the automation tool I used to wire the whole thing together — picture a visual canvas where you can connect Gmail to Claude to HubSpot with rules in between. It checks the sales inbox every two minutes. Smart filters strip out replies inside existing conversations (we don't want to auto-reply to ongoing threads), internal team emails, and obvious automated notifications like "your shipment was delivered." Only genuinely new inbound inquiries make it through.

2. Two-step AI call — categorise first, then draft. I split the AI work into two calls deliberately, using two different versions of Claude (Anthropic's AI assistant — same family as ChatGPT, different brand):

3. HubSpot context enrichment. Before Sonnet writes anything, n8n pulls the sender's full record from HubSpot: their company, their role, what they've done with Summit Rx in the past (did they download the whitepaper last month? book a demo in March? view the pricing page yesterday?). All of that context gets fed into the AI prompt — so the draft isn't generic. It references what the prospect actually did.

4. Voice-guided drafting. The Claude prompt includes a condensed "Summit Rx voice guide" — real examples of how the sales team actually writes. Warm but not effusive. Specific about next steps. Never uses phrases like "circle back" or "touch base." The output comes out sounding like a person on the team wrote it, not like generic ChatGPT.

5. Gmail draft — never auto-sent. The reply lands in the rep's Gmail drafts folder (it's never sent automatically — a human always reviews). The rep gets a Slack ping: "New draft ready for [prospect name]." They open Gmail, skim the draft, and usually send with one click. If something's off — wrong tone, wrong specifics — they edit in place. Typically 30 seconds of tweaks.

What it now does

~30 min
saved per rep, every morning
<10s
from inbound email to ready-to-send draft
~80%
of drafts sent without edits (measured over 30 days)

The less-obvious win: reply speed tripled. Inbound leads were getting first-touch replies in 3–5 minutes instead of the next morning. That's a huge lift on conversion — hot leads stay hot for hours, not days. Sales started measuring "time to first response" as a team metric for the first time.

If I did it again

I'd build the feedback loop first, not last. Right now I can see which drafts reps sent unedited, which they heavily rewrote, and which they scrapped and wrote from scratch. That data is gold — it's telling me where the prompt is weak. I planned to feed it back into prompt tuning, but I built the drafting loop first and the feedback loop second. Order matters: if you start with a feedback-first architecture, every rep interaction becomes training data from day one.

I'd consolidate to one model call. Splitting classification (Haiku) and drafting (Sonnet) felt clever at the time — save money on obvious-reject cases. In practice the cost savings are small (~30% on total LLM spend) and the added latency + complexity isn't worth it at our volume. Single Sonnet call with a "classify then draft in one response" structured output would be simpler and nearly as cheap with prompt caching.

I'd wire in the company-specific voice earlier. The first version of the draft prompt used a generic "professional, warm, specific" instruction. Took about two weeks before I realized the team was editing every draft to match how they actually talk. Sat with them, captured 15 real emails they'd written, distilled the voice traits, put them in the prompt. Draft-send rate jumped from ~55% to ~80% overnight. Lesson: don't assume generic "good business writing" works — every team has a voice, and you have to capture it explicitly.

Same pattern, different tools

I built this with Gmail + Claude + HubSpot + n8n — but the architecture is invariant across email, LLM, CRM, and orchestrator vendors. The pattern is "AI-drafted inbox responder that learns team voice from examples and pulls relevant context from your CRM." That works just as well in:

The wiring is the easy part. Two weeks, max. The hard part is capturing how your team actually talks, so AI drafts sound like you and not like generic ChatGPT. That's a voice problem, not a tool problem.