Statement of Work Generator
Generates formal Statements of Work (SOW) with project scope, milestones, acceptance criteria, payment schedule, and legal terms. Exports to PDF via pandoc. Prerequisites: python3, pandoc.
MCP get_skill({ skillId: "statement-of-work-generator-add9bc9e" })Use this skill with your agent
Create a free account and connect via MCP
# Statement of Work Generator
Generate formal Statements of Work with milestones, acceptance criteria, and payment schedules.
## When to Use
- "Create a SOW for {project}"
- "I need a formal statement of work for {client}"
- "Help me define the scope for a client project"
## Requirements
- **python3** for milestone and payment calculations
- **pandoc** for PDF/DOCX export
## Workflow
### Step 1 — Project Details
- **Client name and company**
- **Project name and description**
- **Start date and duration**
- **Total project value**
- **Payment structure** (milestones, monthly, upfront+final)
- **Key deliverables**
- **Acceptance criteria** (how deliverables are approved)
### Step 2 — Generate SOW
```markdown
# Statement of Work
**Project:** {PROJECT_NAME}
**Client:** {CLIENT_NAME}, {CLIENT_COMPANY}
**Contractor:** {YOUR_NAME}, {YOUR_COMPANY}
**Effective Date:** {START_DATE}
**SOW #:** {SOW_NUMBER}
---
## 1. Purpose
This Statement of Work defines the scope, deliverables, timeline, and terms for {PROJECT_DESCRIPTION}.
## 2. Scope of Work
### 2.1 In Scope
- {Deliverable 1}: {Detailed description}
- {Deliverable 2}: {Detailed description}
- {Deliverable 3}: {Detailed description}
### 2.2 Out of Scope
- {Excluded item 1}
- {Excluded item 2}
- {Excluded item 3}
### 2.3 Assumptions
- {Assumption 1 — e.g., client provides content by X date}
- {Assumption 2}
## 3. Milestones & Timeline
| # | Milestone | Deliverable | Due Date | Payment |
|---|-----------|------------|----------|--------|
| 1 | Project Kickoff | Discovery complete | {DATE} | ${AMOUNT} |
| 2 | {Milestone 2} | {Deliverable} | {DATE} | ${AMOUNT} |
| 3 | {Milestone 3} | {Deliverable} | {DATE} | ${AMOUNT} |
| 4 | Final Delivery | All deliverables | {DATE} | ${AMOUNT} |
| | **Total** | | | **${TOTAL}** |
## 4. Acceptance Criteria
- Each deliverable will be reviewed within {N} business days of submission
- Client provides written approval or specific revision requests
- Maximum {N} rounds of revisions per deliverable included
- Deliverable is considered accepted if no feedback within {N} business days
## 5. Payment Terms
- **Total value:** ${TOTAL}
- **Payment schedule:** Per milestone completion
- **Payment method:** {Bank transfer / PayPal / etc.}
- **Net terms:** {Net 15 / Net 30}
- **Late payment:** {Interest rate or policy}
## 6. Change Management
- Changes to scope require a written Change Order signed by both parties
- Change Orders may adjust timeline and budget
- Rate for additional work: ${RATE}/hr
## 7. Intellectual Property
- All deliverables become Client property upon full payment
- Contractor retains right to use work in portfolio
- Pre-existing IP remains with its owner
## 8. Confidentiality
- Both parties agree to keep project details confidential
- This obligation survives termination for {N} years
## 9. Termination
- Either party may terminate with {N} days written notice
- Client pays for all completed work and work-in-progress
- Contractor delivers all completed work upon termination
## 10. Signatures
| | Client | Contractor |
|---|--------|------------|
| Name | _____________ | _____________ |
| Title | _____________ | _____________ |
| Date | _____________ | _____________ |
| Signature | _____________ | _____________ |
```
### Step 3 — Payment Schedule Calculator
```bash
python3 << 'PYEOF'
milestones = [
{"name": "Kickoff / Discovery", "pct": 25},
{"name": "{Milestone 2}", "pct": 25},
{"name": "{Milestone 3}", "pct": 25},
{"name": "Final Delivery", "pct": 25},
]
total = {TOTAL_VALUE}
print("Payment Schedule:")
running = 0
for m in milestones:
amount = total * m["pct"] / 100
running += amount
print(f" {m['name']}: ${amount:,.2f} ({m['pct']}%) — Cumulative: ${running:,.2f}")
print(f"\nTotal: ${total:,.2f}")
PYEOF
```
### Step 4 — Export
```bash
mkdir -p outputs/contracts
pandoc "outputs/contracts/SOW-{NUMBER}.md" -o "outputs/contracts/SOW-{NUMBER}.pdf" --pdf-engine=wkhtmltopdf -V geometry:margin=1in
echo "SOW saved: outputs/contracts/SOW-{NUMBER}.pdf"
```
## Important Rules
- Always define Out of Scope explicitly — this prevents disputes
- Include acceptance criteria with specific timeframes
- Payment milestones should be tied to deliverables, not dates
- Include change management process — scope creep kills projects
- Add a disclaimer: this is a template, not legal advice — recommend legal review
## Example Prompts
- "Create a SOW for a 3-month website development project worth $15,000"
- "I need a statement of work for my consulting engagement"
- "Help me write a formal SOW for {client}'s mobile app project"Related Skills
More skills in Business & Freelance
Business Plan One-Pager
Creates a concise one-page business plan covering value proposition, market, revenue model, and key metrics. Researches market data via Brave Search and generates a Mermaid business model canvas. Prerequisites: brave-search MCP, python3.
Client Proposal Writer
Builds professional client proposals with scope, timeline, pricing, and terms — researches market rates via Brave Search and generates pandoc-ready documents. Prerequisites: brave-search MCP, python3, pandoc.
Competitor Analysis Report
Researches competitors via Brave Search and builds a comprehensive competitive landscape analysis with positioning, pricing, strengths/weaknesses, and strategic recommendations. Prerequisites: brave-search MCP, python3.
Invoice Generator
Generates professional invoices with line items, tax calculations, payment terms, and exports to PDF via pandoc. Tracks invoice numbers and calculates totals. Prerequisites: python3, pandoc.
Pricing Strategy Calculator
Helps freelancers and businesses set pricing using cost-plus, value-based, and competitive analysis methods. Researches market rates via Brave Search and runs breakeven calculations. Prerequisites: brave-search MCP, python3.
Explore Other Categories
Skills from other categories with shared topics