HomeBlog → How to build a meeting summary from a transcript automatically

How to build a meeting summary from a transcript automatically

Published 2026-08-20 · 5 min read

The transcript of an hour-long meeting is ten pages nobody will read. Value appears at the next step: when decisions, tasks and owners are squeezed out of it. Here is a pipeline that removes manual note-taking without inventing things that were never said.

Two steps, not one

Minutes come from two independent operations:

  1. Transcription. Audio becomes accurate text — here literal fidelity matters, not elegance.
  2. Extraction. A language model pulls out structure: topics, decisions, tasks, deadlines.

The split is the point: hand both jobs to one model and it starts paraphrasing instead of quoting, and then nobody can verify the minutes against the recording.

Transcribing the meeting

from openai import OpenAI

client = OpenAI(base_url="https://voicesscribe.com/v1", api_key="your key")

with open("standup.ogg", "rb") as f:
    text = client.audio.transcriptions.create(
        model="whisper-1", file=f,
        prompt="Team standup: sprint, backlog, release, Ivanov, Petrova",
    ).text

A prompt listing participants and working vocabulary noticeably reduces errors in exactly the places that end up in the minutes.

The extraction prompt

Wording decides whether the output is usable. A template that works:

Below is a transcript of a work meeting. Produce minutes:
1. Topics discussed — one sentence each.
2. Decisions made — only what was stated as a decision.
3. Tasks: what, who owns it, by when. If no deadline was named, say so.
4. Open questions left unanswered.
Do not infer. If something is not in the text, leave the section empty.

That final line matters most: without it the model happily invents deadlines and owners nobody mentioned.

What to store and how to verify

Keep three artefacts: the original recording, the full transcript and the minutes. Checking a disputed point then takes seconds — the timestamp leads straight to the moment in the conversation.

Automatic minutes still deserve a skim by whoever ran the meeting. That is a minute of work against half an hour of manual note-taking, but the wording of an assigned task is not something to delegate blindly.

Try it on your own recordings. Sign-up takes a minute, and the free minutes are enough to judge the quality.

Get a free API key

Frequently asked questions

Can I get minutes in a single step?

Technically yes, with lower quality: accurate transcription and meaningful summarisation are different jobs. The two-step version gives you something you can verify.

How do I attribute lines to participants?

If each participant is recorded on a separate track, transcribe the tracks separately. There is no automatic speaker separation inside a single mixed file.

What does an hour-long meeting cost?

Billing is per minute of audio, so an hour of recording is an hour of the rate. The summarisation step is billed separately by whichever language model you use.

How much can I trust automatic minutes?

Skim the decisions and tasks. The model rarely errs, but a wrong assignment costs more than the time it takes to check.

Related reading