Meeting transcript → Notion action items with n8n
A practical pipeline: paste or POST a transcript, extract structured action items with an LLM, create Notion database pages. No hosted meeting bot required.
What you are automating
Not recording or transcription — those stay with Zoom, Meet, Fireflies, Otter, or a human note-taker. You automate the boring middle: text in → tickets out.
n8n is a good fit because you own the graph, the prompt, and the credentials. Notion stays the system of record your team already opens.
Pipeline in five nodes
- Trigger — Webhook
POSTwithtranscript(and optionalmeeting_title) or a Manual trigger for dry runs. - Normalize — Merge body + env vars (
NOTION_DATABASE_ID, LLM base URL/model). - Extract — OpenAI-compatible
/chat/completionswith JSON schema:actions[]of title, owner, due_date, priority, notes. - Split — Code node: one n8n item per action; fail clearly on non-JSON.
- Write — Notion Pages API create-in-database for each item.
Webhook body (minimal)
{
"transcript": "Alex: I'll send the deck by Friday.\nSam: I'll open the Linear ticket for the API.",
"meeting_title": "Weekly product sync",
"destination": "notion"
}
Extraction rules that save you later
- Null over invention — relative dates without a meeting-date anchor →
due_date: null. - Owner as spoken name — store text; do not pretend first names map to Notion Person IDs.
- One action = one verb + object — “follow up with design and finance” becomes two items if both are real commitments.
- Low temperature + JSON mode — prefer parseable over creative.
Notion side (short)
Database with Name (title), Owner (rich text), Due Date (date), Priority (select), Meeting (rich text). Share it with your internal integration. See the companion post on Notion schema for meeting action items.
What this is not
- A replacement for Fireflies/Otter recording.
- Guaranteed auto-assignment of Notion people from first names.
- A black-box SaaS — you bring n8n + LLM + Notion keys.
Takeaway
n8n meeting automation to Notion works when the webhook contract, extraction schema, and database properties agree. Start with a sample transcript, prove empty due dates stay empty, then point your real note source at the webhook.
Import the graph instead of rebuilding it
OpsPacket Meeting → Action Items is the importable n8n JSON plus SETUP.md for Notion (and optional Linear). Soft sell — patterns above work either way.
Get the n8n pack — $97