Write Scope-of-Work Documents from Meeting Notes

You'll end up with: A structured, client-ready scope-of-work draft with clear deliverables, milestones, and explicit in-scope / out-of-scope boundaries — produced from rough meeting notes

Overview
25–35 min
Intermediate
Free
2 tools
Cost breakdown
ClaudeFree
Google DocsFree
TotalFree
Common mistake

Letting the AI paste vague meeting language ("we'll optimize the funnel") straight into the SOW without testable deliverables. Fix: force a mirror-and-gap pass first (Step 1), then make every deliverable observable (artifact, metric, workshop count, approval gate) before any polished prose (Steps 2–3).

Before you start
  • Raw meeting notes or transcript chunk (even ugly)
  • Client / project name
  • Your role (implementation vs advisory vs creative)
  • Known deadline or phase dates (even tentative)
  • Known fee model (fixed phases, hourly bucket, retainer) or TBD
  • One sentence on what success looks like for the client
  • Open Claude and Google Docs (or Word or Notion if you must — pick one doc surface and stick to it for the final paste)
1

Extract facts, decisions, and gaps from your notes

Turn messy notes into decisions, open questions, constraints, and risks — no SOW sections yet.

ClaudeFreeOpen Claude
Exact action

1. Open https://claude.ai and start a **new chat** (keep everything in this single thread through Order 4). 2. Paste this prompt and fill in the brackets: "I need to turn rough meeting notes into a scope of work — but do NOT draft an SOW yet. Only extract structure. Project / client name: [...] My role (implementation / advisory / creative): [...] Fee model hint (fixed phases / hourly bucket / retainer / unknown): [...] Hard deadlines or phases already discussed: [...] Raw notes or transcript excerpt: [paste everything] Reply with ONLY four labeled sections — no document headings, no legalese: (a) Decisions — bullets for what both sides already agreed. (b) Open questions — bullets for anything ambiguous or unresolved. (c) Constraints — budget, tech stack, stakeholders, approvals, access. (d) Risks — what could blow scope, timeline, or budget. Do not write 'Scope of Work' prose yet." 3. Read Claude's output. If it sneaks in draft sentences that sound like contract language, reply: "Remove all SOW-style wording — bullets only under the four sections above." 4. If your notes were fuzzy, insist until you see **at least three** open questions called out (or an explicit line that the notes are complete — then add your own questions as bullets).

You can point to each deliverable idea in your notes and see it reflected as a **decision** or **open question**; if the notes were vague, you still see **at least three** open questions surfaced.
Claude started writing "Scope of Work" sections or polished paragraphs — restart and add: "Do not draft document sections or contract language; extraction only under (a)–(d)."
2

Build the SOW skeleton and explicit boundaries

Lock section headings and separate what's in scope vs out of scope using only Step 1.

ClaudeFreeOpen Claude
Exact action

1. In the **same chat**, paste: "Using ONLY the extraction you just produced (decisions / open questions / constraints / risks), build an SOW **skeleton** — still no detailed deliverables table yet. Use these section headings (rename slightly if the project is tiny): Overview & objectives; Scope & deliverables (placeholder subsection); Timeline & milestones (placeholder); Client responsibilities; Assumptions; Out of scope; Changes & re-estimation; Acceptance. Under **In scope**, bullet only concrete work implied by the extraction — each bullet must trace to a phrase in Step 1. Under **Out of scope**, bullets for what you will **not** do unless separately agreed — aim for **at least three** bullets unless you explain why fewer apply. If out-of-scope is genuinely unknown, write one line 'none yet — to be agreed' plus **one** specific question to ask the client next. Keep tone professional but plain — no marketing fluff." 2. Scan in-scope bullets for hedge words like "etc." — if you see them, ask Claude to replace each with named categories. 3. If out-of-scope is empty while in-scope reads like marketing hype, prompt: "Add boundaries implied by budget, constraints, and risks from Step 1."

Out-of-scope has **at least three** bullets **or** an explicit 'none yet — to be agreed' plus **one** follow-up question; every in-scope bullet maps back to Step 1 without vague "etc."
Out-of-scope is empty while in-scope reads like a landing page — re-prompt: "Add boundaries implied by budget, tool constraints, and risks from the extraction."
3

Draft deliverables, milestones, and acceptance criteria

Build a testable deliverables table and phased milestones with observable acceptance.

ClaudeFreeOpen Claude
Exact action

1. In the **same chat**, paste: "Now draft the **Scope & deliverables** and **Timeline & milestones** sections using the skeleton and extraction above. Produce: (A) A **markdown table** with columns: Deliverable | Acceptance criteria (observable) | Owner (Client / Provider — use Provider for yourself) | Target date or phase. Rules: - Every acceptance criterion must describe something **observable** — a file delivered, a metric hit, a workshop held, a signed approval — not vibes. - Ban rows where acceptance is only subjective unless you add a proxy (replace "client happy" with "signed PDF delivered" or "≤2 revision rounds on wireframes"). - Merge duplicate rows. (B) A **milestone list** — either calendar dates from the notes or Phase 1 / 2 / 3 with what completes each phase. (C) Under **Acceptance**, 3–5 bullets on how sign-off works (e.g., written approval email, review window in business days). Flag any date as **TBD + blocker** when Step 1 didn't supply it." 2. If you see "ongoing support" without hours or cadence, prompt: "Either split into concrete recurring artifacts or cap hours per month." 3. Verify each row names **who proves done** and **what artifact proves it**.

Every deliverable row names **who proves done** and **what artifact proves it**; dates align with Step 1 constraints or read **TBD + blocker**.
Duplicate rows or "ongoing support" with no hours/cadence — prompt Claude to collapse, cap, or split into explicit artifacts.
4

Add assumptions, change process, fees placeholders, and disclaimer

Client assumptions, a lightweight change path, bracketed commercial placeholders, and a not-legal-advice line.

ClaudeFreeOpen Claude
Exact action

1. In the **same chat**, paste: "Append the remaining sections as plain text I can paste into a doc: **Assumptions** — bullets for inputs the client must provide (content, access, approvals, stakeholders). Focus on dependencies that usually blow deadlines. **Change requests** — **3–6 sentences** describing process only (how the client requests extra work, how you respond with estimated timeline and fee impact, what happens if they decline). **Not** legal language — business-process clarity. **Fees & invoicing** — use bracket placeholders copied from my notes only: [FEE STRUCTURE], [PAYMENT SCHEDULE], [DEPOSIT]. If I didn't give numbers in prior messages, **do not invent dollar amounts** — keep brackets. **Term** — [START DATE], [END DATE or ongoing], aligned with what we discussed. **Disclaimer** — one short line: this is a business scope summary for discussion, not legal advice; high-stakes deals should involve counsel. Compile everything **above** this message (skeleton, table, milestones) into one continuous markdown draft in logical section order." 2. Scan for hallucinated prices — if you see numbers you never typed in this chat, reply: "Strip all dollar amounts; use bracket placeholders only." 3. Confirm the change path reads actionable in under six sentences.

Change path is **3–6 sentences** and actionable; assumptions call out **client-side** dependencies; fee section uses **bracket placeholders** unless you pasted real numbers earlier.
Claude invented pricing not in your notes — strip numbers and re-prompt: "Bracket placeholders only for fees; no invented amounts."
5

Paste into Google Docs and run a consistency pass

Format the draft, fix tables and placeholders, and export if needed.

Google DocsFreeOpen Google Docs
Exact action

1. Open https://docs.google.com → **Blank** document. 2. Title it `[Client] — Scope of Work — [DATE]` using your real client name and today's date. 3. Paste the **full markdown draft** from Claude (Orders 1–4). 4. Apply **Heading 1 / Heading 2** styles to section titles; convert the deliverables table using Docs' **Table** tool if the paste breaks alignment. 5. Skim for **[brackets]**, **TBD**, mismatched dates, or duplicate sections — fix typos; don't rewrite scope without re-running Step 3 in Claude. 6. If the table is unreadable after one paste, go back to Claude **once** with: "Re-output **only** the markdown table from Step 3 as clean GitHub-flavored markdown" — then re-paste the repaired table. 7. Optional: **File → Download → PDF** if you need an attachment for email or e-sign prep.

One scrollable doc is ready to send or drop into PandaDoc / DocuSign later; placeholders are **intentional**; headings and table are readable.
Broken table or mixed fonts after paste — use Step 6's single repair prompt in Claude, then re-paste **once**; avoid endless reformatting loops.

All done!

You now have: A structured, client-ready scope-of-work draft with clear deliverables, milestones, and explicit in-scope / out-of-scope boundaries — produced from rough meeting notes

Explore more guides

Want this workflow built for your business?

Book a free audit