Skip to content

Transcribing Meetings Without Sending Them to a Vendor

Updated

Meeting recordings are an odd category. They are routine enough that nobody thinks hard about them, and they contain compensation discussions, unreleased roadmaps, legal exposure, customer names and the occasional thing someone would rather have not said.

The default tooling sends all of that to a third party. Sometimes that is fine. Sometimes it is a policy violation that nobody noticed happening.

What the standard flow actually does

A typical meeting assistant joins the call, records it, uploads the audio to the vendor’s servers, transcribes it there, and keeps both the recording and the transcript in the vendor’s account. That storage is the product — searchable history is the feature people pay for.

The questions worth asking before that becomes your default:

  • Where is the audio stored, and for how long? Retention varies from days to indefinite.
  • Is it used for model training? Policies differ and change; some vendors default to yes with an opt-out.
  • Who inside your company can access the archive? Meeting archives are frequently more broadly readable than the meetings themselves were.
  • Which jurisdiction? For GDPR purposes, transfer to a processor abroad is a disclosure with its own requirements.
  • Does everyone in the meeting know? Recording consent laws vary by jurisdiction and some require all parties to agree.

None of these make hosted tools wrong. They make them a decision rather than a default.

What changes when the model runs locally

Browser-based transcription reads the file from disk, decodes it, and runs the model in the same tab. No request carries the audio anywhere.

The practical difference is in what you can state:

Hosted serviceIn your browser
Audio leaves your deviceYesNo
Vendor retention policy appliesYesNot applicable
Third-party disclosure under GDPRYes — processor agreement neededNo transfer occurs
Works with no networkNoYes, after first load
Per-minute costUsuallyNone
Speed on a 1-hour fileMinutes15–30 minutes on laptop CPU

“We delete after 30 days” and “it was never transmitted” are different categories of claim. The first is a promise about someone else’s behaviour; the second is a property of the system.

Verify it rather than trust it: open your browser’s network panel, transcribe a file, and confirm no request carries the audio. You cannot do that check with a hosted service.

Where local processing does not help

Being straight about the limits:

  • It does not label speakers. Whisper produces one text stream. Who said what is not marked. See below for the workaround.
  • It does not join your calls. There is no bot; you record the meeting yourself and transcribe the file afterwards.
  • It does not summarise. You get the transcript, not action items.
  • It is slower than a GPU on someone’s server. For a routine meeting, that is a background tab. For fifty hours of backlog, it is a real cost.

If your requirement is “a bot that joins every call and posts a summary to Slack,” local transcription is not that product and no amount of positioning changes it.

Getting speaker labels anyway

The usable workaround costs nothing if your setup already supports it: record each participant to a separate track. Most conferencing and remote-recording tools can. Transcribe each file on its own, then merge by timestamp.

Each transcript then contains exactly one person, so attribution is exact — better than diarization models achieve, because there is no inference involved.

For in-person meetings with one microphone, this is not available, and you are back to reconstructing turns from context.

A workflow for sensitive meetings

  1. Get consent on the record at the start of the recording. This is the step most likely to be skipped and most likely to matter later.
  2. Record locally, separate tracks if the tool allows.
  3. Transcribe in the browser, one file at a time. Nothing is uploaded.
  4. Edit before circulating. Raw transcripts contain false starts and half-formed thoughts people did not mean as statements of record.
  5. Decide retention deliberately. A permanent searchable archive of everything said internally is a liability as often as an asset.

Common questions

Is a browser transcript admissible or compliant on its own? It is a document you produced; the tool does not certify anything. Regulated contexts need whatever your regime requires, which is usually a human attestation.

How do I convince security to allow it? The argument that works is architectural: there is no vendor to review because there is no transfer. Point the network panel at it during the review.

What about the meeting recording itself? Local transcription protects the audio in transit and at a vendor. It does nothing about where you store the recording afterwards — that is still your call.

Does it work offline? Yes, once the model is cached. Useful on a plane, and a decent demonstration that nothing is being sent anywhere.

More guides