Ranked options for meeting / interview / voice-note transcription with named speakers and automatic KB ingestion — verified against primary sources.
10 June 2026105-agent deep-research run + direct source verificationCanonical doc: ~/LIFE/specs/transcription-diarization-research-2026-06-10.md
Verdict
The ranking
Cost is a non-factor at LIFE's volume (every option is under ~$20/month). The decision hinges on accuracy, privacy posture, and who can label speakers by name.
1
Speechmatics
Best overall managed API
The only single vendor with accuracy + diarization + native speaker-ID-by-name (enroll 5–30s clips, batch mode, encrypted & account-scoped). SOC 2 · ISO 27001 · HIPAA · GDPR. UK company. Free 40 h/month, then ~$0.24/hr. Risk: not in AA-WER top 5 — must win the A/B on our own recordings.
2
ElevenLabs Scribe v2
Best raw accuracy · current spec primary
#1 on AA-WER (2.2%), 48-speaker diarization, async webhooks, ~$0.22/hr, key already held. Gaps: no enrolled speaker ID, and zero-retention + EU residency are Enterprise-tier only.
3
pyannoteAI Precision-2
Best speaker-ID layer (composable)
/v1/voiceprint (≤30s clip) + /v1/identify names diarized speakers with confidence scores. +28% vs open-source pyannote. Jobs & voiceprints auto-delete after 24h. Pair with Scribe v2 or AssemblyAI.
4
AssemblyAI Universal (EU)
Best value · cleanest EU story
$0.15/hr. Dublin endpoint where data never leaves the EU and is automatically excluded from training. Caveats: must set TTL (default keeps transcripts indefinitely); speaker naming is DIY — needs pyannoteAI on top.
Accuracy
Word error rate — independent benchmark
Artificial Analysis AA-WER v2.0 (lower is better). The only independent accuracy data that survived adversarial verification. Caveat: 50% voice-agent audio, so validate on real LIFE meetings. No public diarization-error benchmark exists for any vendor.
ElevenLabs Scribe v2
2.2% WER
Azure MAI-Transcribe-1.5
2.4%
Gemini 3 Pro
2.9%
Mistral Voxtral Small
3.0%
Speechmatics
unverified
Speechmatics did not appear in the verified top-5 — its real-world position is the key unknown the A/B test resolves.
Cost
Price per audio hour (batch, June 2026)
AssemblyAI Universal
$0.15
ElevenLabs Scribe v2
$0.22
Speechmatics
$0.24*
Deepgram Nova-3
$0.26
OpenAI / Azure (current)
$0.36
Gemini 3.1 Pro
~$1.09 est.
*Speechmatics: first 40 h/month free — covers a full pilot at $0. AssemblyAI +10% from 1 July 2026.
Capabilities
Requirement scorecard
Provider
Diarization
Named speakers (enrolled)
EU residency
No-training
Retention control
Speechmatics
Yes
Native, batch
Enterprise multi-region
GDPR/ISO posture
Good
ElevenLabs Scribe v2
48 speakers
No
Enterprise only
Enterprise default
ZRM enterprise-only
pyannoteAI
Best-in-class
Voiceprint API
Unverified
24h auto-delete
24h default
AssemblyAI (EU)
Yes
DIY only
Dublin, never leaves
Auto on EU
Must set TTL
Deepgram
Yes
No
EU endpoint
SOC 2 1+2
Good
OpenAI (current tool)
Not in our tool
No
No
API default no-train
30d API logs
Turnkey (Otter, Fireflies…)
Yes
Their cloud
3rd party holds all
Policy varies
Rejected
Key finding
Zoom changes the speaker-ID problem
No app to download, no "Connect Zoom" button. One account-level Server-to-Server OAuth internal app (created once by an admin, no Marketplace review) + the recording.completed webhook gives the backend every cloud recording automatically. The team's only job: press Record to cloud.
Named speakers come free for Zoom meetings. Zoom's TIMELINE file (Business plan) is who-spoke-when with real display names. Join it against the ASR's word timestamps → named transcript with no voice enrollment. Voiceprints are only needed for non-Zoom audio (voice memos, in-person interviews).
Zoom retention ≈ zero. Zoom's ToS bars training on customer audio, and cloud recordings can auto-delete after as little as 1 day — ingest on webhook, then wipe.
Architecture
One pipeline, three doors
Everything to the right of the doors already exists or is specced (kb-ingestion-pipeline-spec). New work: Zoom S2S webhook ingress, TIMELINE name-join, one-time voiceprint enrollment, engine A/B.
Decision rule
How to pick the engine
Transcribe 3–5 real LIFE meetings + 2 voice notes with Speechmatics (free tier) and Scribe v2 (key already held). If Scribe's accuracy edge doesn't clearly show on our audio → Speechmatics wins (native naming, UK/EU posture, price). If Scribe clearly wins → run Scribe v2 + pyannoteAI identify, and price ElevenLabs Enterprise for zero-retention + EU residency before committing production audio.
Next steps
Open items
Collect 3–5 real recordings and run the A/B validation gate (already required by the ingestion spec §9).
Confirm LIFE's Zoom plan is Business (TIMELINE needs it); enable transcript + per-participant audio + auto-delete settings.