Skip to content
ArumSoft Learning
KO
    Word templateProjects and IT

    Statement of Work (SOW) Template for Word

    Most disputes with contractors come from two gaps: nobody wrote down what "done" means, and nobody agreed how changes get approved. This statement of work closes both. It is a finished four-page example for a fictional website project, with every deliverable tied to an acceptance criterion and a due date, every payment tied to an accepted deliverable, and a change control section that says exactly how scope can move.

    Pages:
    4
    Works with:
    Word for Microsoft 365, Word 2016 or later, Word for Mac (Word for the web can fill in fields)
    Updated:

    Statement of Work Template.docx

    Word document (.docx) · 17 KB · 4 pages

    Download template

    Free to download. No sign-up needed. No macros.

    What you can do with it

    • Summary block with fill-in fields for both parties, SOW number, dates, total fee and a payment terms dropdown
    • Scope written as in and out lists, plus a callout that anything else needs a change request
    • Deliverables table with acceptance criteria and date pickers; payment schedule tied to accepted deliverables
    • Acceptance process with deemed acceptance, change control with an approved changes table, signature block
    First two pages of the Statement of Work Word template: summary table with client, contractor, SOW number, dates, fee and payment terms, table of contents, objectives and scope sections
    Pages 1 and 2 of the four-page sample, a fixed-fee website redesign for a fictional dental group.

    What's inside

    The document has 4 pages. Each part below is a heading in the file, so you can jump to it from the Navigation Pane (View > Navigation Pane).

    PartWhat it coversWhat you write
    Summary blockWho the parties are and the commercial basicsParties, contacts, SOW number, governing agreement, dates, fee, payment terms
    1–2. Background and scopeWhy the work exists and its boundariesObjectives with measurable success, in-scope and out-of-scope lists
    3–4. Deliverables and paymentsWhat gets delivered, how it is judged and paidDeliverables table with criteria and dates; milestone payment table
    5–7. Acceptance, assumptions, change controlHow sign-off and changes workReview window, client inputs, change request rules
    8–9. Fees and signaturesRates, expenses, invoicing and authorityHourly rate for changes, expense approval, signers

    Before you start

    • Have the master agreement (independent contractor agreement or MSA) at hand: the SOW refers to it and does not repeat its legal terms.
    • Agree on the list of deliverables and how each will be checked before you write prices.
    • Decide the fee model (fixed fee or time and materials) and the payment terms.

    Step-by-step guide

    1. Fill in the summary block

      Click each gray field and type: both legal names and contacts, the SOW number (also in the header), the governing agreement, start and end dates, total fee, and pick the payment terms from the dropdown.

    2. Write measurable objectives

      Replace the three success measures with yours. Each should be something both sides could check on launch day.

    3. Draw the scope line

      List what is included, then what is not. The out-of-scope list prevents more arguments than the in-scope list.

    4. Tie deliverables to acceptance

      For each deliverable write a criterion a third person could verify, and pick a due date. Then tie each payment row to the acceptance of a deliverable.

    5. Set the rules for sign-off and change

      Adjust the review window in the acceptance process and the response time in change control. Leave the approved changes table with its placeholder row for later.

    6. Sign and update

      Update the table of contents (right-click > Update Field), delete the gray note, and collect both signatures. Save the signed version as PDF.

    Field and control map

    Every content control and field in the document, in the order they appear. Gray-boxed fields in Word are the content controls.

    NameTypeWhereValue in the sample
    SOW numberTextHeaderSOW-2026-07
    Client legal nameTextBodyBrightline Dental Group, LLC
    Contractor legal nameTextBodyMara Chen Design Studio
    Client contactTextBodyPriya Natarajan, Practice Manager
    Contractor contactTextBodyMara Chen, Principal
    SOW numberTextBodySOW-2026-07
    AgreementTextBodyIndependent Contractor Agreement dated March 2, 2026
    Start dateDate pickerBodyNovember 16, 2026
    End dateDate pickerBodyFebruary 26, 2027
    Total feeTextBody$24,600 (fixed fee)
    Payment termsDropdownBodyNet 15 (Due on receipt / Net 15 / Net 30 / Net 45)
    D1 dueDate pickerBodyNovember 30, 2026
    D2 dueDate pickerBodyDecember 18, 2026
    D3 dueDate pickerBodyJanuary 29, 2027
    D4 dueDate pickerBodyFebruary 19, 2027
    Change descriptionTextBodyDescribe the approved change
    Fee impactTextBody$0
    Date impactTextBodyNone
    Client signerTextBodyPriya Natarajan, Practice Manager
    Signed dateDate pickerBody2 fields: Click or tap to enter a date.
    Contractor signerTextBodyMara Chen, Principal
    Client nameTextFooterBrightline Dental Group
    Contractor nameTextFooterMara Chen Design Studio
    { TOC \o "1-2" \h \z \u }FieldBodycontents list
    { PAGE }FieldFooter1
    { NUMPAGES }FieldFooter4
    { SEQ Table \* ARABIC }FieldBody1, 2, 3

    Every field, control and style, explained

    The code in each card is read straight from the .docx file (the XML Word stores, or the field code you see with Alt+F9), so it is exactly what the template contains.

    Numbered headingsHeading 1 and Heading 2 styles
    <w:lvl w:ilvl="0">
      <w:start w:val="1"/>
      <w:numFmt w:val="decimal"/>
      <w:pStyle w:val="Heading1"/>
      <w:lvlText w:val="%1."/>
      <w:lvlJc w:val="left"/>
      <w:pPr>
        <w:ind w:left="440" w:hanging="440"/>
      </w:pPr>
    </w:lvl>
    <w:lvl w:ilvl="1">
      <w:start w:val="1"/>
      <w:numFmt w:val="decimal"/>
      <w:pStyle w:val="Heading2"/>
      <w:lvlText w:val="%1.%2"/>
      <w:lvlJc w:val="left"/>
      <w:pPr>
        <w:ind w:left="660" w:hanging="660"/>
      </w:pPr>
    </w:lvl>

    The section numbers (1., 2., 6.1 …) are not typed. A multilevel list is linked to the Heading 1 and Heading 2 styles, so any paragraph you set to Heading 1 gets the next number and the table of contents picks it up.

    Piece by piece

    <w:pStyle w:val="Heading1"/>
    Links list level 1 to the Heading 1 style (level 2 to Heading 2).
    <w:lvlText w:val="%1."/>
    Level 1 shows its counter and a period: 1., 2., 3.
    <w:lvlText w:val="%1.%2"/>
    Level 2 shows the parent number, a period and its own counter: 6.1, 6.2.
    <w:ind w:left="440" w:hanging="440"/>
    Hanging indent so wrapped heading text lines up after the number.

    In the sample: 1. Background and objectives, 2. Scope of work, 2.1 In scope … (11 headings)

    How it is used: To add a section, type the heading, then pick Heading 1 (Ctrl+Alt+1) or Heading 2 (Ctrl+Alt+2) on the Home tab. Numbers after it update by themselves.

    How to change it: Home > Multilevel List > Define New Multilevel List to change the format (for example "Section 1"). Keep "Link level to style" set to Heading 1 and Heading 2.

    Learn this: How to Plan and Structure Long Documents in Word: Outline View and Multilevel Numbering →
    Table of contentsContents page
    { TOC \o "1-2" \h \z \u }

    A TOC field builds the contents list from the Heading 1 and Heading 2 paragraphs. The file ships with the entries and page numbers already filled in, so it looks right the moment you open it.

    Piece by piece

    \o "1-2"
    Include heading levels 1 to 2.
    \h
    Make each entry a link to its heading (Ctrl+click in Word).
    \z
    Hide page numbers in Web Layout view.
    \u
    Use the paragraph outline level, so the styles decide what is listed.

    In the sample: 11 entries. First: 1. Background and objectives … page 2

    How it is used: After you add or rename sections, right-click the contents list and choose Update Field > Update entire table.

    How to change it: References > Table of Contents > Custom Table of Contents: set "Show levels" to 3 to list Heading 3 as well.

    Learn this: How to Add a Table of Contents, Captions, and Cross-References in Word →
    Page X of YFooter
    Page { PAGE } of { NUMPAGES }

    The footer counts pages with two fields: PAGE is the current page and NUMPAGES is the total. Both recalculate when the document is printed, saved as PDF or scrolled in Print Layout.

    Piece by piece

    PAGE
    The number of the page the field sits on.
    NUMPAGES
    The total number of pages in the document.

    In the sample: Page 1 of 4 on the first page

    How it is used: Nothing to do: add or delete pages and the numbers follow.

    How to change it: Double-click the footer to edit the text around the fields. Insert > Page Number > Format Page Numbers sets the starting number.

    Learn this: How to Set Up Pages in Word: Margins, Breaks, Headers, Footers, and Page Numbers →
    Numbered table captionsCaptions above tables
    { SEQ Table \* ARABIC }

    Each table caption uses a SEQ field that counts tables in order. Insert a new captioned table in the middle and every later caption renumbers.

    Piece by piece

    SEQ Table
    A counter named "Table". Every SEQ Table field adds 1.
    \* ARABIC
    Show the counter as 1, 2, 3.

    In the sample: 3 caption(s): Table 1 to Table 3

    How it is used: Captions are what a "see Table 2" cross-reference points to (References > Cross-reference).

    How to change it: References > Insert Caption adds a new one. If numbers look stale, press Ctrl+A then F9 to update all fields.

    Learn this: How to Add a Table of Contents, Captions, and Cross-References in Word →
    Fill-in fields (plain text content controls)Gray-boxed fields
    <w:sdtPr>
      <w:alias w:val="Client legal name"/>
      <w:tag w:val="client_legal_name"/>
      <w:text/>
    </w:sdtPr>

    Names, numbers and other details people change every time are plain text content controls. Click one and type: the text replaces the sample, keeps the formatting, and the field still shows its name when selected.

    Piece by piece

    <w:alias w:val="…"/>
    The title shown on the control’s tab when you click it.
    <w:tag w:val="…"/>
    A machine-readable name, useful for mail merge or code.
    <w:text/>
    Plain text: one line, one format, so pasted text cannot break the layout.
    <w:showingPlcHdr/>
    Present when the field shows gray placeholder text instead of a value.

    In the sample: Client legal name = Brightline Dental Group, LLC

    How it is used: 15 in this template: SOW number, Client legal name, Contractor legal name, Client contact, Contractor contact, Agreement, Total fee, Change description, Fee impact, Date impact, Client signer, Contractor signer, Client name, Contractor name. Use Developer > Design Mode to see every control at once, or the Selection Pane to jump between them.

    How to change it: Developer > Properties changes the title, tag and placeholder. To show the Developer tab: File > Options > Customize Ribbon > Developer.

    Learn this: How to Create Fillable Forms with Content Controls in Word →
    Date pickersDate fields
    <w:sdtPr>
      <w:alias w:val="Start date"/>
      <w:tag w:val="start_date"/>
      <w:date w:fullDate="2026-11-16T00:00:00Z">
        <w:dateFormat w:val="MMMM d, yyyy"/>
        <w:lid w:val="en-US"/>
        <w:storeMappedDataAs w:val="dateTime"/>
        <w:calendar w:val="gregorian"/>
      </w:date>
    </w:sdtPr>

    Dates are date picker content controls: click the arrow to pick from a calendar, or type a date in any format and Word shows it as "November 2, 2026".

    Piece by piece

    w:fullDate
    The stored date, independent of how it is shown.
    <w:dateFormat w:val="MMMM d, yyyy"/>
    Display format: full month name, day, four-digit year.
    <w:lid w:val="en-US"/>
    Language used for month names.
    <w:storeMappedDataAs w:val="dateTime"/>
    Stores a real date value if the control is mapped to data.

    In the sample: Start date = November 16, 2026

    How it is used: 8 in this template: Start date, End date, D1 due, D2 due, D3 due, D4 due, Signed date. Pick the date from the calendar so every date in the document has the same format.

    How to change it: Developer > Properties > Display the date like this, for example d MMMM yyyy or yyyy-MM-dd.

    Learn this: How to Create Fillable Forms with Content Controls in Word →
    Dropdown listsStatus and choice fields
    <w:sdtPr>
      <w:alias w:val="Payment terms"/>
      <w:tag w:val="payment_terms"/>
      <w:dropDownList>
        <w:listItem w:displayText="Due on receipt" w:value="Due on receipt"/>
        <w:listItem w:displayText="Net 15" w:value="Net 15"/>
        <w:listItem w:displayText="Net 30" w:value="Net 30"/>
        <w:listItem w:displayText="Net 45" w:value="Net 45"/>
      </w:dropDownList>
    </w:sdtPr>

    Fields with a fixed set of answers are dropdown list content controls, so everyone uses the same words (useful when you search or count documents later).

    Piece by piece

    <w:dropDownList>
    A list the reader must pick from (no free typing).
    <w:listItem w:displayText="…" w:value="…"/>
    One choice: the text shown and the value stored.

    In the sample: Payment terms = Net 15 (Due on receipt / Net 15 / Net 30 / Net 45)

    How it is used: 1 in this template: Payment terms. Click the field and choose from the list.

    How to change it: Developer > Properties > Add, Modify or Remove choices. Use a Combo Box instead if people need to type their own answer.

    Learn this: How to Create Fillable Forms with Content Controls in Word →
    Callout styleNotes, tips and warnings
    <w:style w:type="paragraph" w:styleId="Callout">
      <w:name w:val="Callout"/>
      <w:basedOn w:val="Normal"/>
      <w:pPr>
        <w:pBdr>
          <w:left w:val="single" w:color="F2A93B" w:sz="24" w:space="8"/>
        </w:pBdr>
        <w:shd w:fill="EEF2F8" w:color="auto" w:val="clear"/>
        <w:spacing w:after="160" w:before="120"/>
        <w:ind w:left="180" w:right="180"/>
      </w:pPr>
      <w:rPr>
        <w:sz w:val="21"/>
      </w:rPr>
    </w:style>

    Notes and warnings use a paragraph style named Callout: tinted background, amber bar on the left, indented on both sides. Because it is a style, every callout matches and you can restyle them all at once.

    Piece by piece

    <w:shd w:fill="EEF2F8"/>
    Light blue-gray background.
    <w:left w:val="single" w:sz="24" w:color="F2A93B"/>
    Amber bar, 3 pt wide, on the left edge.
    <w:ind w:left="180" w:right="180"/>
    Indented 1/8 inch on each side.

    In the sample: Used for the notes, tips and warnings in the body.

    How it is used: Put the cursor in a paragraph and pick Callout in the Styles gallery.

    How to change it: Right-click Callout in the Styles gallery > Modify > Format > Border or Shading. All callouts change together.

    Learn this: How to Use Styles and the Navigation Pane in Word →
    Repeating table headersEvery table with a dark header row
    <w:trPr>
      <w:cantSplit/>
      <w:tblHeader/>
    </w:trPr>

    Header rows are marked to repeat at the top of each page when a table breaks, and rows are set not to split across pages, so a long table stays readable when printed.

    Piece by piece

    <w:tblHeader/>
    Repeat this row at the top of each page.
    <w:cantSplit/>
    Keep each row on one page.

    In the sample: 3 of 5 tables repeat their header row

    How it is used: Add rows with Tab in the last cell; the header keeps repeating.

    How to change it: Click in the header row > Table Layout > Repeat Header Rows. Short tables are also set to keep with the next paragraph so they do not split.

    Learn this: How to Build and Format Tables That Read Well in Word →
    Guidance notesGray italic notes
    <w:style w:type="paragraph" w:styleId="Guidance">
      <w:name w:val="Guidance"/>
      <w:basedOn w:val="Normal"/>
      <w:pPr>
        <w:spacing w:after="100"/>
      </w:pPr>
      <w:rPr>
        <w:i/>
        <w:iCs/>
        <w:color w:val="6B7280"/>
        <w:sz w:val="19"/>
      </w:rPr>
    </w:style>

    Instructions for whoever fills in the template use a Guidance style (gray italics). Delete them before you send the document; with a style, Find and Replace can remove them all at once.

    Piece by piece

    <w:i/>
    Italic.
    <w:color w:val="6B7280"/>
    Gray text.

    In the sample: One note under the title block.

    How it is used: Home > Replace > More > Format > Style > Guidance finds every note.

    How to change it: Right-click Guidance in the Styles gallery > Modify.

    Learn this: How to Use Styles and the Navigation Pane in Word →

    Tips and limits

    • A SOW is not a contract on its own here: it sits under the agreement named in the summary. Have a lawyer review the agreement if the project is large.
    • Write acceptance criteria as observable facts ("passes automated checks with no critical issues"), not opinions ("looks professional").
    • Deemed acceptance (a deliverable is accepted if nobody replies in five business days) protects the contractor from stalled reviews; keep it reasonable for both sides.
    • Payment terms is a dropdown so everyone uses the same wording. Edit its choices under Developer > Properties.
    • This template is not legal advice.

    Learn the skills behind this template

    Was this guide helpful? Spot a mistake? Send feedback · admin@arumsoft.com