Skip to content
a.
AP SALES COACH
Blog
Pricing
Download Free →
← RETURN TO INDEX
[FILE.005]DECRYPTED · READY
FOUNDER DIARY · INTEL FILE

Building AP Sales Coach — founder diary

The week-by-week of taking AP Sales Coach from idea to first paying customer. Honest tradeoffs, what I cut, what I shipped, what's working.

[AUTHOR:ALIX_P][PUBLISHED:30·APRIL·2026][READ_TIME:6m][STATUS:LIVE][ACCESS:PUBLIC]

Eight weeks from the first prototype to a live product. This is the actual build log.

I'm writing this for two reasons. One: it's a useful record for me — by week six I'd already forgotten which features I'd shipped and which I'd cut. Two: if you're building a tool for yourself first and wondering whether it's allowed to be that scrappy, the answer is yes, and here's how it looked.

Week 1 — The personal pain

I had been running 200+ outbound dials a week on my own list of UK trades. The pattern was the same every time: I'd freeze on the third call of the morning, miss a branch I should have caught, and end up sending a "send me an email" prospect into the dead-zone of my inbox.

I tried writing a better script. Twice. It made things worse. The longer the script, the more there was to forget mid-call.

I started taking notes on the calls I lost — not the prospect's name, but the pattern. Same five seconds of brain-fade. Same three or four phrases triggering it. Same 2-3 second pause where I'd reach for a line and find nothing.

That's the moment the product was born. Not a market opportunity. A pain.

Week 2 — The hacky v0

The first prototype was three things glued together that, in hindsight, should not have worked:

  • Audio Hijack capturing my Mac's mic + system audio.
  • A Whisper transcription script I wrote on a Saturday afternoon to dump rolling 5-second windows of audio to text.
  • A Notion page with my script tree on it, that I'd manually scroll while on calls.

You can imagine how badly this worked. The transcription was 4-second-delayed (Whisper, on my MacBook, locally). The Notion page didn't update — I had to Cmd-F to find the right node. I gave up by call 12.

But two things stuck. One: even a delayed transcript was useful. I could see what the prospect just said, in writing, after the fact, and that was somehow grounding. Two: a scripted tree, even on Notion, helped me spot which branch I should have taken.

I needed to make both things faster.

Week 3 — Deepgram replaces Whisper

The unlock was switching from Whisper to Deepgram's streaming API. Deepgram diarises both speakers (which Whisper doesn't, locally), and the latency dropped from ~4 seconds to ~150 milliseconds. That's the difference between "huh, the transcript is 4 seconds behind" and "the words are appearing as they speak them".

This was the moment the product clicked. Once the transcript was real-time, the matching problem became real-time-solvable too.

Cost note: Deepgram's pay-as-you-go pricing is roughly £0.004 per minute streamed. A 30-minute outbound session costs me 12p in transcription. Trivial.

Week 4 — The matcher

The first matcher was a giant if/else tree in TypeScript. It worked, sort of. It matched on substring patterns ("yes", "go on", "interested" → next-line-A). It missed almost everything that wasn't an exact phrase match.

I switched to Claude Haiku 4.5 as the matcher. Each new diarised line gets sent with the current node's outgoing branches as a prompt: "given the prospect just said X, which of these branches is the best match?". Claude returns the branch ID. The panel updates.

This was the second click moment. Claude routes nuance — "yeah I'm not really looking right now" matches obj-not-interested in 95% of cases without me writing exact-phrase rules.

Latency: Claude Haiku 4.5 returns in ~600 ms median. Deepgram's diarisation lands the line in ~150 ms. Total 847 ms median from prospect-finishes-speaking to next-line-on-screen. That's the number we put on the website.

Week 5 — The panel that almost shipped wrong

The desktop panel went through three iterations.

Version A — full-screen overlay. Looked dramatic. Got in the way of literally everything else on the screen. Killed.

Version B — bottom-bar like a Slack notification. Too easy to ignore. Eyes never go to the bottom of the screen during a call. Killed.

Version C — frameless 384-pixel panel pinned to the right edge, summoned with ⌘⇧A. This is the one. Eyes naturally rest on the right of the screen when you're on a call (because your call window is usually centre-left). The 384px width is wide enough for a script line + the next branches, narrow enough not to dominate.

I almost shipped Version B. Caught it in week 5 testing because I noticed I was talking over the panel updates instead of reading them. Width matters more than I expected.

Week 6 — The autodialer feature I cut

For about three days I was building an autodialer. The idea: Coach already knows your script tree, why not also dial the next number on the list, queue voicemails, etc?

I cut it on day four. Two reasons:

  1. Autodialers are a regulated mess in the UK (Ofcom's persistent-misuse rules are easier to violate than people realise). I didn't want to handle that compliance load.
  2. It diluted the product. Coach is a coaching tool. The moment it becomes a dialer, it's competing with PowerDialer / JustCall / Aircall, all of whom are better at dialing than I'd ever be solo.

Cutting features is hard. It was the right call.

Week 7 — Brand-locking

This was when I went from "thing that works for me" to "product I'd put on the internet". The visual brand decisions were:

  • Lime green + neutral grey. Not the SaaS blue / purple cliche. Tactical-operator vibe, like Garmin Tactix or Teenage Engineering.
  • Geometric chevron-bracket motif. A visual mark you can use anywhere — corners, logo, transitions.
  • No emoji. No gradients. No glassmorphism. Linear / Glaido-grade restraint.
  • The panel-mock as the hero of the marketing site. Don't show the website. Show the product, working, on someone's screen.

By the end of week 7 the marketing site existed and the product was live behind a Stripe paywall.

Week 8 — Founding round

Today is launch day for the founding round. 50 spots at half-price for life. I'm writing this post the morning of.

Things that are working: the product itself (6% → 12% booked-call rate is real on my own dials), the script-tree editor (visitors love being able to browse the tree before paying), the panel mock on the homepage (every visitor pauses on it).

Things still on the punch list for v1.5: hero demo video (I need to record it), comparison pages vs Gong / Salesloft, and a proper script library with pre-built trees for trades / agencies / SaaS BDRs.

What's next

The roadmap I'm publicly committing to:

  • v1.1 (May 2026) — script library with 5 pre-built trees by trade type.
  • v1.2 (June) — call disposition tagging post-hangup → analytics dashboard.
  • v1.5 (Aug) — Team tier (multi-seat, shared script libraries).
  • v2.0 (Oct) — Windows version (currently macOS only).

Founding members get every one of these at the locked-in £14.50/mo. Standard subscribers will pay current price + any uplifts.

If you want to be on the v1.0 list — the 200 dials I've been running on this thing already work. Coach isn't theoretical. It's running my own outbound right now, and it'll run yours from day one.

Start your 7-day free trial →

— Alix

▼ RELATED INTEL · 03 FILES

VIEW FULL INDEX →
  • Founder diary[FILE.010]

    Welcome to AP Sales Coach

    I built v0.1 for myself, lifted my booked-call rate from 6% to 12% over 200 dials, and now I'm letting other operators run it on their own scripts. Here's what to expect from this blog.

    [READ_TIME:3m][AUTHOR:ALIX_P][STATUS:LIVE]
  • Cold call playbook[FILE.001]

    UK cold calling laws 2026 — PECR, GDPR, and the rules for B2B outbound

    Cold calling is legal in the UK, but the rules around who you can call, when, and what records you need to keep are stricter than most reps realise. Practical version. Not legal advice.

    [READ_TIME:9m][AUTHOR:ALIX_P][STATUS:LIVE]
  • Cold call playbook[FILE.002]

    The 5-second silence trick after a price objection

    Every cold caller knows the moment. The prospect goes quiet after you name the price. What you do in the next five seconds determines whether you book the call or end it.

    [READ_TIME:7m][AUTHOR:ALIX_P][STATUS:LIVE]
● END OF FILE.005 · CLASSIFIED READY

Reading is one thing. Running the system mid-call is another.

£14.50 today and your founding rate is locked for life — £14.50/mo, even as standard pricing rises. 50 slots. The same script tree behind every word in this file — running on your Mac, on your next call.

[BOOKED RATE:6% → 12%]
[LATENCY:0.847s]
[FOUNDING SLOTS:49 LEFT]
Reserve founding slot — £14.50 →← Back to index

APSALESCOACH

macOS teleprompter for compliant cold calls

Field notes — every fortnight

Product

HomeTry freeDownloadPricingFoundingUpdatesRoadmapChangelogStatus

Resources

All resourcesCold-calling lawGlossaryIndustry playbooksResearch & dataPractitioner playbooksStandardsComparisonsFree toolsBlog

Company

AboutFounderManifestoSecuritySub-processorsAffiliatesPress kitWaitlist

Contact

SupportBillingFeedbackPartnershipsPrivacy / GDPRSecurity disclosureLegal

Legal

Terms of ServicePrivacy PolicyAll legal docs →

Legal entity

APLeads Ltd
Founded 2024 by Alix Pardoe
Company No. 16178226
Unit 22 Ensign Business Centre, Westwood Way, Coventry, CV4 8JA

apleads.co ↗

© 2026 APLEADS LIMITED · BUILT IN THE UK

APLEADS / COACHv1.0