Skip to content
Projects / A93-10

SpeechCoach

Grammarly for talks. Rehearse out loud and get a score, rewrites and a live voice coach.

Part no.
A93-10
Status
working
Platform
Web
Year
2026
Stack
NodeVanilla JSWebRTCOpenAI RealtimeStructured outputs
0–100Report with six sub-scores
$0.05Per minute in live coaching mode
0npm dependencies
01 — The problem

You only find out a talk had too many "ums" and rushed endings once you're up there giving it.

02 — The case for it

A cheap, private rehearsal partner. The feedback is grounded in measured pace and filler counts, not vibes, and costs are clear per mode.

03 — Back of the napkin
Back of the napkinRough · not a forecast

Subscription, ≈ €12/mo for about 2 hours of rehearsal, or seats sold to sales and leadership teams.

  1. Rehearsal minutes included per month120
  2. ×Live voice coach cost$0.05/min
  3. =Worst-case cost per user≈ $6/mo
  4. −Price€12/mo
  5. =Gross margin at full usage≈ 50%
Running costs
Live voice coaching
$0.05/min
Reports (transcribe + score)
cents per rehearsal
Hosting
one small Node server
At 10× / 100×

This is the one project where costs grow linearly with use, so minutes need to be metered and capped. Selling B2B to teams makes the margin safer, because most seats are used less than the cap.

Verdict

Viable if usage is metered. Sell to teams, not to individuals.

04 — How it works
Diagram · Rehearsal loop
  1. 01SpeakIn the browser. Audio timing is analysed locally from energy levels.
  2. 02TranscribeSpeech-to-text with timestamps.
  3. 03ScoreStructured JSON report: six sub-scores, quoted lines and drills.
  4. 04Live coachOptional full-duplex voice over WebRTC, either silent or chiming in.
06 — Engineering highlights
01

Grounded feedback

The live coach’s tips are tied to measured filler counts and pace, so it can’t make things up about your delivery.

02

Zero dependencies

Node 22 standard library and vanilla JS, plus a mock mode for testing without spending API credits.