Turn Meeting Recordings into Action Items Inside ChatGPT
A 45-minute meeting recording becomes a structured table of decisions, action items, and blockers — without leaving ChatGPT. Drop the file, ask the question, save the prompt as a Recipe so the next meeting takes one short message instead of re-typing the whole instruction.
The problem with "I'll just take notes during the call"
Most people have tried it. You're in the call, you're trying to listen, you're typing what feels like the important parts. By the end of an hour you have three paragraphs that read clearly and miss the two things that actually matter — a commitment someone made in passing at minute 14, an objection that surfaced when you were typing instead of listening.
The structural fix isn't writing faster notes. It's separating capture from analysis. Capture every word. Analyze later, with the full record in front of you. Whipscribe + ChatGPT lets you do both in the same chat — capture via diarized transcription, analyze via the prompt you'd already write yourself.
The setup, in 90 seconds
If you haven't connected Whipscribe to ChatGPT yet, the setup guide covers both paths. Short version:
- Open the Whipscribe Custom GPT in ChatGPT.
- Authorize once with your Whipscribe email (the first time you ask it to transcribe).
- Done. Drop a file and ask.
If you're on ChatGPT Plus or Pro, the alternative is adding Whipscribe as an MCP Connector at https://whipscribe.com/mcp in Settings → Connectors. Same backend, available in every chat without switching to a specific GPT.
The prompt that actually works
The action-items prompt that lands consistently across meeting types — sales calls, product reviews, all-hands, 1:1s. Save this verbatim or trim to taste:
Transcribe this with speaker labels and word-level timestamps.
Then extract three sections from the transcript:
1. DECISIONS — choices made during the call. Include who decided
(speaker name) and the timestamp.
2. ACTION ITEMS — concrete commitments. Include owner, exactly what
they said they'd do, due date if mentioned, and the timestamp.
3. OPEN QUESTIONS — anything raised but not resolved. Include who
raised it and the timestamp.
Format each section as a markdown table. Keep the original wording
where it strengthens the entry; paraphrase only when the exact words
hurt readability.
If a speaker is referenced by name during the call, replace the
generic Speaker labels (Speaker 1 / Speaker 2) with the names.
Skip small talk. Don't invent items that weren't actually committed to.
The two non-obvious clauses that change the output the most:
- "Replace Speaker labels with names" — diarization gives you generic Speaker 1 / Speaker 2; the conversation usually contains the real names. ChatGPT can map them if asked.
- "Don't invent items that weren't actually committed to" — without this, models tend to summarize aspirations as commitments. The clause cuts that.
What the output actually looks like
A representative response on a 45-minute product call (illustrative — the rows below are sample data, not from a real customer call):
Decisions
| Decision | Decided by | Timestamp |
|---|---|---|
| Move launch from August 28 to September 12 | Sarah | 00:08:14 |
| Use Stripe Atlas for the EU entity setup | Mark | 00:22:01 |
| Skip the Q4 partnership track this year | Sarah | 00:38:40 |
Action items
| Owner | Action | Due | Timestamp |
|---|---|---|---|
| Mark | File Stripe Atlas paperwork for the EU entity | Friday | 00:22:18 |
| Sarah | Brief the design team on the September 12 timeline | Wednesday | 00:11:02 |
| Jenny | Draft the launch announcement for review | Sept 1 | 00:14:55 |
| Mark | Confirm Tax ID format for Germany with accountant | EOW | 00:24:33 |
| Sarah | Send a summary of this call to the exec channel | Today | 00:44:12 |
Open questions
| Question | Raised by | Timestamp |
|---|---|---|
| VAT registration in Germany — who owns the filing? | Jenny | 00:24:50 |
| Should the soft launch stay internal-only for the first week? | Mark | 00:36:18 |
Three things the table format gives you that prose summaries don't:
- Owner is unambiguous. Who's on the hook for what is in its own column.
- Timestamps are clickable evidence. When someone disputes "did I really commit to that?", the timestamp lands you at the exact moment in Whipscribe's player.
- Due dates are visible. A wall of paragraph buries them.
First 30 minutes a day are free. No card. No setup beyond authorize.
Open the Whipscribe GPT →Save it as a Recipe so you never re-type the prompt
Once the prompt produces output you like, save it as a Recipe in your Whipscribe account. Recipes are saved prompt templates that you can run against any future transcript with one short message inside ChatGPT.
To save: ask the Whipscribe GPT in chat:
Save this prompt as a Recipe
Save the action-items prompt I just used as a Recipe.
Name it "Meeting → Decisions, Actions, Blockers".
Tag it: meeting, action-items.
From the next call onward, the workflow becomes:
Run the saved Recipe on a new file
Run my "Meeting → Decisions, Actions, Blockers" recipe on this file.
[attach meeting.m4a]
One sentence. The Recipe carries the entire instruction set. Output format stays consistent across meetings, which makes a habit pattern actually possible.
What to do with the output
The structured table is the artifact. Where it lives next depends on your team's stack:
- Notion / Confluence / Google Docs — markdown tables paste with formatting intact. Pin to a meeting page.
- Linear / Jira / Asana — copy each Action Items row into a new task. Owner column maps to assignee, action column to title, due to due date.
- Slack / Teams — post the Decisions block to the channel as a code-block summary. Decisions are the most useful "what happened" surface for absent teammates.
- Whipscribe Knowledge folder — save the transcript itself to a project-named folder (e.g. "Q3 customer calls"). The transcript stays searchable; you can run different Recipes against it later.
Save the transcripts so the recipe can find them later
One more habit worth building: ask the GPT to save every transcript to a Knowledge folder named after the project. The shape of the prompt:
Save and tag
Save the transcript to my "Customer calls Q3" Knowledge folder.
Tag it with the customer name from the call.
A month later, you can ask "summarize the top three objections from all calls in 'Customer calls Q3'" and the GPT runs a search across the folder, pulls the relevant turns, and produces the cross-call answer. That's the compounding value of saving the raw artifact, not just the summary.
Privacy and what does not happen
- OpenAI training is off on the Whipscribe GPT — meeting recordings are not used to train OpenAI models.
- Files are processed by Whipscribe, not by OpenAI. Transcription runs on Whipscribe infrastructure.
- Default 7-day retention on raw audio. Anything saved to a Knowledge folder is kept indefinitely; raw audio not saved is purged.
- Transcripts and Knowledge folders are visible to your account only — sharing requires explicit folder-share via the Whipscribe app.
Frequently asked
Can ChatGPT really pull action items from a meeting recording?
Yes, when you give it a real diarized transcript. The Whipscribe GPT transcribes the recording, ChatGPT extracts decisions, action items, and blockers from the structured turns. Quality depends on transcript quality — speakers correctly attributed, timestamps preserved.
Do I need ChatGPT Plus or Pro?
No. The Whipscribe Custom GPT works on the free ChatGPT plan. The MCP Connector path is Plus and Pro only, but it's optional.
What's a Recipe and why save one?
A Recipe is a saved prompt template stored in your Whipscribe account. Save your action-items prompt once, run it on any future transcript with one short message in ChatGPT.
How long can the meeting be?
A couple of hours per file is the practical ceiling. Hour-long meetings produce the cleanest extractions because the context stays focused.
Can I share the action items with my team?
Copy the markdown table into Notion / Linear / Slack. Or save the transcript to a Whipscribe Knowledge folder and share the folder; teammates with access can run their own queries against it.
What if there are 5+ speakers in the meeting?
Diarization handles up to ~10 speakers in practice. For very large meetings, provide a speaker hint list in the prompt — ChatGPT can map labels to names from the conversation context.
Ready to run the workflow?
Open the Whipscribe Custom GPT, drop a meeting recording, paste the action-items prompt above. Save it as a Recipe so the next meeting takes one short message.