Back to All Stacks
Productivity
beginner
Popular

Meeting to Action Items Pipeline

Automatically extract tasks from meetings and assign to your team

Record your meetings with Zoom or Google Meet, automatically transcribe them, use AI to extract action items with owners and due dates, then create tasks in Asana/Notion and notify assignees. Never lose a meeting follow-up again.

Setup: 1 hourCost: $30-80/month4 stepsRemote Teams, Project Managers, Agencies

Tools You'll Need

Zapier

Zapier

Featured

Workflow Automation

freemium
4.7

Alternative: Make (formerly Integromat)

ChatGPT

ChatGPT

Featured

Action Item Extraction

freemium
4.8

Step-by-Step Setup Guide

Configure Otter.ai or Fireflies to automatically join and record your Zoom/Meet calls.

Create Otter.ai account

Go to otter.ai → Sign up → Connect your Google or Zoom calendar

Enable auto-join

Settings → Meetings → Enable "Auto-join meetings from calendar"

Configure recording settings

Enable speaker identification, auto-highlight action items

Test with a meeting

Schedule a test call → Verify Otter joins and records
Tip

Otter's free plan includes 300 minutes/month. Pro ($16.99/mo) is unlimited.

Warning

Always inform meeting participants that the call is being recorded (legal requirement in many places)

Set up Zapier to trigger when Otter generates a new transcript.

Create new Zap

Zapier → Create → Trigger: Otter.ai → New Transcript

Connect Otter account

Authorize Zapier to access your Otter.ai transcripts

Test trigger

Select a recent transcript → Verify all fields are captured
Tip

If using Fireflies.ai instead, the trigger is "New Meeting Processed"

Use ChatGPT to identify action items, assign owners, and set due dates from the transcript.

Add ChatGPT action

Add step → ChatGPT → Conversation

Configure extraction prompt

Prompt: "Extract all action items from this meeting transcript. For each, identify:
1. Task description
2. Owner (who committed to doing it)
3. Due date (if mentioned, otherwise set to 1 week from today)
4. Priority (based on urgency discussed)

Return as JSON array: [{"task": "", "owner": "", "due_date": "", "priority": "high|medium|low"}]

Transcript: {{transcript}}"

Parse the response

Add Code step to parse JSON and loop through action items
Pro Tip

Include your team roster in the prompt so AI can match names to exact team members

Automatically create tasks in Asana/Notion and send Slack notifications to assignees.

Add looping action

Add Looping by Zapier → Loop through action items array

Create Asana task

Inside loop: Add Asana → Create Task → Name: {{task}}, Assignee: {{owner}}, Due: {{due_date}}

Add meeting context

Task description: "From meeting: {{meeting_title}}" + link to full transcript

Notify via Slack

Add Slack → Send DM → To: {{owner}} → "New task from {{meeting_title}}: {{task}} - Due: {{due_date}}"
Tip

Map team member names to their Asana user IDs and Slack handles in a lookup table

Pro Tip

Create a "Meeting Follow-ups" project in Asana to keep all extracted tasks organized

Related Stacks