This prompt is designed for knowledge workers and engineering teams who need to extract structured, prioritized action items from raw meeting transcripts. It uses few-shot examples to teach the model how to identify tasks, detect ownership, extract deadlines, and assign a priority score, rather than relying on verbose instruction sets. Use this when you need consistent, machine-readable outputs from messy, multi-speaker transcripts that will be ingested into project management tools, task queues, or automated follow-up systems. This is not a meeting summarization prompt; it focuses exclusively on action item extraction and triage.
Prompt
Meeting Transcript Action Item Extraction and Priority Prompt Template

When to Use This Prompt
Defines the ideal use case, required inputs, and boundaries for the action item extraction prompt.
The ideal input is a raw, diarized transcript where speakers are identified. The prompt expects a [TRANSCRIPT] placeholder containing the full meeting text. It works best when the transcript includes clear verbal commitments ("I will," "I'll take that"), explicit deadlines, and assigned owners. The output is a structured JSON array of action items, each with fields for task_description, owner, deadline, priority_score (1-5), and evidence_quote. This schema is enforced through few-shot examples, not just instructions, which makes the extraction more robust to variations in speaking style and transcript quality.
Do not use this prompt for generating meeting summaries, identifying decisions without assigned actions, or analyzing sentiment. It is not suitable for transcripts where speakers are not identified, as ownership detection relies on speaker labels. If your transcript lacks clear ownership signals, pair this prompt with a pre-processing step that attempts to resolve pronouns and implicit assignments. For high-stakes workflows where missed action items have compliance or legal consequences, always route outputs through a human review queue before ingestion into downstream systems. The prompt includes a confidence marker for each extracted item, which you should use to filter low-confidence extractions for manual verification.
Use Case Fit
Where this prompt works and where it does not.
Good Fit: Structured Meeting Transcripts
Use when: Inputs are clean transcripts with speaker labels and clear turn-taking. The prompt excels at extracting explicit commitments, deadlines, and assigned owners from well-formatted dialogue. Guardrail: Pre-process transcripts to ensure speaker diarization is accurate before extraction.
Bad Fit: Unstructured Brainstorming Sessions
Avoid when: The source material is a free-form ideation session with no clear decisions, overlapping speakers, or abstract concepts. The model will hallucinate action items to satisfy the output schema. Guardrail: Use a separate summarization prompt first to identify if concrete decisions exist before attempting extraction.
Required Inputs: Speaker Labels and Timestamps
Risk: Without speaker labels, the model cannot reliably assign ownership, leading to generic or incorrect task assignments. Guardrail: Validate that the transcript includes consistent speaker identifiers. If missing, use a diarization pre-processing step or flag items as 'unassigned' in the schema.
Operational Risk: Priority Drift
Risk: The model's subjective interpretation of 'high priority' can drift based on the emotional tone of the conversation rather than business impact, causing alert fatigue. Guardrail: Constrain the priority field to a strict enum (P0-P3) and provide few-shot examples that map specific business consequences to each level.
Operational Risk: Implicit vs. Explicit Deadlines
Risk: The model may extract relative dates ('next Friday') or infer deadlines from vague statements ('ASAP'), leading to scheduling errors. Guardrail: Instruct the prompt to extract only explicit dates and to populate a separate 'inferred_deadline_confidence' field with a low score for ambiguous phrases.
Bad Fit: Multi-Language Code-Switching
Avoid when: The transcript contains heavy code-switching between languages, especially in technical jargon. The model may miss action items or misattribute ownership due to translation errors. Guardrail: If code-switching is detected, route to a translation-aware extraction pipeline or flag the transcript for human review.
Copy-Ready Prompt Template
A reusable few-shot prompt for extracting, assigning ownership, and prioritizing action items from meeting transcripts.
This prompt template teaches the model to parse a raw meeting transcript and produce a structured list of action items. The few-shot examples are the primary teaching mechanism—they demonstrate extraction of implicit commitments, mapping of speakers to owners, deadline normalization, and priority assignment based on urgency signals in the conversation. The template is designed to be copied directly into your prompt management system or API call, with square-bracket placeholders you replace at runtime.
textYou are an action item extraction system. Your task is to read a meeting transcript and output a JSON array of action items. Each action item must include: the task description, the owner (the person responsible), any mentioned deadline, and a priority level (High, Medium, Low). Follow these rules: - Extract only concrete commitments, tasks, or follow-ups. Do not invent tasks that were not discussed. - If a task is assigned to a person by name, use that name as the owner. If the speaker volunteers, they are the owner. If no owner is clear, use "Unassigned". - Normalize all deadlines to ISO 8601 dates (YYYY-MM-DD). If a relative date is given (e.g., "next Tuesday"), calculate the actual date assuming the meeting date is [MEETING_DATE]. If no deadline is mentioned, use null. - Assign priority based on these signals: explicit urgency language ("ASAP", "critical", "blocking"), dependency on other tasks, or proximity to the deadline. Default to Medium if no signal is present. - Output ONLY a valid JSON array. No other text. [EXAMPLES] --- Transcript: Alice: Okay, let's wrap up. Bob, can you send the updated contract to the client by end of day Friday? Bob: Yes, I'll get that out. Alice: Great. And I need to review the Q3 budget before our next sync. That's critical—we can't move forward without it. Charlie: I'll follow up with the vendor about the delayed shipment. No rush on that, maybe sometime next week. Output: [ { "task": "Send updated contract to client", "owner": "Bob", "deadline": "2025-03-28", "priority": "High" }, { "task": "Review Q3 budget", "owner": "Alice", "deadline": null, "priority": "High" }, { "task": "Follow up with vendor about delayed shipment", "owner": "Charlie", "deadline": null, "priority": "Low" } ] --- Transcript: Dana: I'll draft the onboarding guide. Should be done by Wednesday. Evan: I can review it once Dana's done. Let's aim to have it finalized by the 15th. Dana: Sounds good. Also, someone needs to update the team wiki with the new process, but I'm not sure who has bandwidth. Output: [ { "task": "Draft onboarding guide", "owner": "Dana", "deadline": "2025-03-26", "priority": "Medium" }, { "task": "Review onboarding guide", "owner": "Evan", "deadline": "2025-04-15", "priority": "Medium" }, { "task": "Update team wiki with new process", "owner": "Unassigned", "deadline": null, "priority": "Medium" } ] --- Transcript: [TRANSCRIPT] Output:
To adapt this template, replace [MEETING_DATE] with the actual date of the meeting in YYYY-MM-DD format so relative deadlines can be resolved correctly. Replace [TRANSCRIPT] with the raw meeting text. The [EXAMPLES] block contains two few-shot demonstrations; you can add more examples that reflect your organization's typical task patterns, ownership conventions, and priority definitions. If your meetings use specific terminology for urgency (e.g., "P0", "drop everything"), include an example that maps that language to the priority field. Before deploying, run the prompt against a golden set of 10–20 annotated transcripts and measure extraction recall, owner accuracy, and priority agreement against human labels. For high-stakes workflows where missed action items have compliance or revenue impact, route outputs with "priority": "High" or "owner": "Unassigned" to a human review queue before ingestion into your task management system.
Prompt Variables
Required and optional inputs for the Meeting Transcript Action Item Extraction and Priority prompt. Validate each variable before sending the prompt to avoid extraction failures or hallucinated owners.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[TRANSCRIPT] | Full meeting transcript text to extract action items from | "Alice: We need to finalize the Q3 roadmap by Friday. Bob: I'll take that. Also, the login bug is still open." | Required. Must be non-empty string. Check length < model context window minus 2000 tokens for examples and instructions. |
[MEETING_DATE] | Date the meeting occurred, used for relative deadline resolution | "2025-04-08" | Required. Must be ISO 8601 date string. Parse check: new Date() should not throw. Used to resolve 'next Tuesday' into absolute dates. |
[PARTICIPANT_LIST] | List of meeting participants with full names and roles | "Alice Chen (Product Manager), Bob Singh (Engineering Lead), Carol Diaz (Designer)" | Required. Must contain at least one entry. Used for ownership detection. Validate format: 'Name (Role)' separated by commas. |
[FEW_SHOT_EXAMPLES] | 3-5 labeled examples demonstrating extraction format and priority logic | See pillar for full example block. Contains transcript snippet, extracted items, and priority rationale. | Required. Must include at least one example with no action items and one with ambiguous ownership. Validate JSON parse of example output blocks. |
[OUTPUT_SCHEMA] | JSON schema describing the exact output structure expected | {"type": "object", "properties": {"action_items": {"type": "array"... | Required. Must be valid JSON Schema. Validate with ajv or similar. Include required fields: item, owner, deadline, priority, evidence. |
[PRIORITY_DEFINITIONS] | Clear definitions for P1, P2, P3 priority levels | "P1: Blocks team progress or has external deadline within 3 days. P2: Important but not blocking. P3: Nice-to-have or future consideration." | Required. Must define at least 3 levels. Check for unambiguous boundary conditions between levels. Test with edge cases. |
[CONSTRAINTS] | Hard rules for extraction behavior | "Do not invent owners. If no owner is stated, set owner to 'Unassigned'. Do not extract items already completed." | Required. Must include ownership constraint and completion constraint at minimum. Validate that constraints are testable. |
[COMPANY_CONTEXT] | Optional organizational context for resolving internal references | "Q3 roadmap refers to the product engineering roadmap owned by Alice's team. Login bug is tracked in JIRA project AUTH." | Optional. If provided, must be non-empty string. Improves entity resolution. Test extraction quality with and without this field. |
Implementation Harness Notes
How to wire the action item extraction prompt into a reliable application pipeline.
This prompt is designed to be the core extraction step within a larger meeting intelligence pipeline. It should not be called directly by an end-user in a chat interface. Instead, it belongs in a backend service that receives a transcript, enriches it with participant context, calls the model, and then validates and stores the structured output. The primary integration points are a transcript pre-processing stage, the LLM call itself, and a post-processing validation stage.
For implementation, wrap the prompt in a function that accepts a transcript string and an optional participants list. Before calling the model, inject the participant list into the [PARTICIPANT_CONTEXT] placeholder to improve ownership detection. Use a model with strong JSON mode and function-calling capabilities, such as gpt-4o or claude-3.5-sonnet, with response_format set to json_object and the JSON Schema provided in the [OUTPUT_SCHEMA] block. On the application side, implement a strict validation layer that checks the returned JSON against the schema. If validation fails, use a repair loop: feed the raw output and the validation error back to the model with a simplified repair prompt, such as 'Fix the JSON to match the schema. Return only the corrected JSON.' Limit this retry loop to a maximum of 2 attempts before logging the failure and alerting a human. Log every extraction, including the raw transcript hash, the model's raw response, and the validated output, for auditability and prompt evaluation.
For high-stakes environments where a missed action item has significant consequences, do not rely solely on this prompt. Implement a human review queue for all extracted items scored as priority: 'high' or where the confidence score is below 0.85. The application should route these items to a review interface where a human can confirm, reject, or modify the extraction. This human-in-the-loop step provides a safety net and generates a stream of correction data that can be used to fine-tune a model or improve the few-shot examples over time. Avoid deploying this as a fire-and-forget automation without these validation and review guardrails.
Expected Output Contract
Fields, format, and validation rules for each action item object in the JSON array returned by the prompt.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
action_items | Array of objects | Root must be a JSON array. Parse check: valid JSON. Schema check: array length >= 0. If empty, confirm no action items were extractable. | |
action_items[].description | String | Non-empty string. Must be a complete sentence describing the task. Validation: length > 10 chars. Retry if null or truncated. | |
action_items[].owner | String or null | Extracted name from transcript. If no owner detected, use null. Validation: null allowed. If present, must match a speaker name from [TRANSCRIPT] or be 'Unassigned'. | |
action_items[].priority | Enum: 'High', 'Medium', 'Low' | Must be one of the three enum values. Validation: case-sensitive string match. Retry if missing or invalid. Default to 'Medium' if confidence is low but extraction is required. | |
action_items[].deadline | ISO 8601 date string (YYYY-MM-DD) or null | If extracted, must be a valid date. Validation: parse as date, check year is within [CURRENT_YEAR] ± 1. If relative date like 'next Friday', resolve using [MEETING_DATE]. Null allowed. | |
action_items[].confidence | Number between 0.0 and 1.0 | Model's confidence in extraction correctness. Validation: float, 0.0 <= x <= 1.0. If < 0.7, flag for human review in downstream system. | |
action_items[].source_quote | String | Verbatim excerpt from [TRANSCRIPT] that supports this action item. Validation: substring match against [TRANSCRIPT] (fuzzy match allowed). If no match, set confidence to 0.0 and flag. |
Common Failure Modes
What breaks first when extracting action items from meeting transcripts and how to guard against it.
Phantom Assignments
What to watch: The model invents an owner for an action item when no person is explicitly named in the transcript. It may hallucinate a likely person based on context or previous turns. Guardrail: Add a negative example showing that when no owner is stated, the field must be null. Validate output with a rule that flags any owner not present in the speaker list.
Deadline Misinterpretation
What to watch: Relative dates like 'next week' or 'by Friday' are extracted as literal strings or mapped to incorrect calendar dates. The model may also treat aspirational language ('we should try to') as a hard deadline. Guardrail: Require the model to output both the raw phrase and a resolved ISO date. Add a post-processing check that rejects dates before the meeting date.
Discussion vs. Decision Confusion
What to watch: The model extracts every mentioned task as an action item, failing to distinguish between brainstorming, rejected ideas, and actual commitments. This floods the output with noise. Guardrail: Include few-shot examples that contrast 'discussed options' with 'agreed next steps.' Add a constraint that each extracted item must be traceable to a decision or explicit assignment statement.
Priority Inflation
What to watch: Without calibrated examples, the model defaults to marking most items as 'High' priority, especially if the transcript contains urgent language that is rhetorical rather than operational. Guardrail: Provide few-shot examples that demonstrate the difference between rhetorical urgency ('this is critical') and operational priority. Use a structured priority rubric in the prompt that reserves 'Critical' for items with explicit blocking impact or executive mandate.
Multi-Turn Fragmentation
What to watch: A single action item discussed across multiple speaking turns is extracted as several duplicate or overlapping items. The model fails to merge related statements into one coherent task. Guardrail: Add an instruction to deduplicate items that share the same owner, deadline, and objective. Include a few-shot example showing two turns about the same task merged into one output record.
Context Window Truncation
What to watch: For long transcripts, action items mentioned early in the meeting are dropped or summarized incorrectly because they fall outside the model's effective attention window. Guardrail: Chunk the transcript by agenda topic before extraction. Run extraction on each chunk independently, then merge and deduplicate results. If chunking is not possible, include a recency-bias warning in the prompt and test with transcripts that place key items at the start.
Evaluation Rubric
Use this rubric to test extraction quality before shipping. Each criterion targets a specific failure mode in meeting transcript action item extraction.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Action Item Recall | All explicit action items in [TRANSCRIPT] are extracted with no false negatives | Action item present in transcript but missing from output | Compare output action items against a pre-labeled golden transcript; recall must be >= 0.95 |
Action Item Precision | No extracted action item is a hallucination or misinterprets a non-action statement | Output contains an action item not supported by any speaker statement in [TRANSCRIPT] | Human reviewer flags unsupported items; precision must be >= 0.90 on a 20-transcript sample |
Owner Assignment Accuracy | Each action item has exactly one owner matching the person who verbally accepted or was explicitly assigned the task | Owner is missing, assigned to wrong person, or assigned to a person who did not speak in the relevant segment | Check each owner against speaker diarization and explicit assignment language in transcript; accuracy >= 0.90 |
Deadline Extraction Correctness | Deadlines are extracted in ISO 8601 format when explicitly stated; null when no deadline is mentioned | Deadline is invented for an item with no temporal commitment, or stated deadline is parsed incorrectly | Validate date fields against explicit mentions; null rate on no-deadline items must be 100%; parse errors must be 0 |
Priority Score Calibration | Priority scores align with the few-shot examples: P0 for blocking/urgent, P1 for this-week, P2 for backlog | P0 assigned to non-urgent item, or P2 assigned to item with explicit same-day deadline | Run 10 transcripts with known priority labels; Cohen's kappa between output and labels >= 0.80 |
Output Schema Compliance | Output is valid JSON matching [OUTPUT_SCHEMA] with all required fields present and correctly typed | JSON parse failure, missing required field, or field type mismatch | Validate output with JSON Schema validator; 100% parse success rate required across test set |
Confidence Score Honesty | Confidence scores are >= 0.9 only when extraction evidence is unambiguous; lower scores when speakers are vague | Confidence of 0.95 on an item where the speaker said 'maybe' or 'someone should' | Spot-check 10 low-confidence items; all must have genuine ambiguity in source transcript |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt\nUse the base prompt with a smaller example set (3-5 examples) and lighter output validation. Replace the [OUTPUT_SCHEMA] placeholder with a simple JSON structure containing only `action_items`, `owner`, and `priority` fields. Skip deadline normalization and confidence scoring initially.\n\n### Watch for\n- Missing action items when speakers use indirect language\n- Owners assigned to the wrong person when multiple names appear\n- Priority defaults to 'medium' for everything without clear signals\n- Format drift when the transcript contains non-standard formatting or timestamps

About the author
Prasad Kumkar
CEO & MD, Inference Systems
Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.
His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us