Free tool · No account needed · Updated October 2026

Change order log template for small contractors

The final invoice goes out and the client says "I thought the tile upgrade was included." A change order log is the one page that ends that conversation: every extra on the job, what it cost, who signed it and when, and what the job adds up to now. Here's a free one built for remodelers and small crews, not for a commercial project office.

Short version: keep one log per job. Add a row each time you send a change order, fill in who signed and when, and keep the original contract price at the top so the new total is always one glance away. Download the blank change order log (CSV). Free, no email.

Download the free log

Download the change order log (CSV)

It opens in Excel, Numbers or Google Sheets. In Google Sheets, use File → Import and upload the file (Google's import steps). In Excel or Numbers, just open it, then save it as a spreadsheet file so your entries and formulas are kept.

The columns:

ColumnWhat goes in it
Change order #CO #1, #2, ... matching the number on the signed form
Date sentThe day you gave the client the change order
What changed and whyOne plain sentence; the full scope is on the signed form
Amount ($)The price of this change (negative for a credit)
Schedule impact"+2 days" or "none"
Statussent, signed or declined
Signed byThe client's name as signed
Date signedThe day they signed
Running total of change orders ($)Adds itself up as you enter amounts

A Google Sheets "Make a copy" version and an Excel (.xlsx) file are planned; for now the CSV works in both.

A filled-in example

Here's what a log looks like partway through a kitchen remodel with an original contract of $42,000:

CO #Date sentWhat changed and whyAmountScheduleStatusSigned byDate signedRunning total
1Mar 4Rot under sink base: replace 4×6 ft of subfloor, sister one joist$860+1 daysignedJ. RiveraMar 4$860
2Mar 9Client upgrade: tile backsplash to full height behind range$1,240+1 daysignedJ. RiveraMar 10$2,100
3Mar 15Add 2 GFCI outlets on island, new circuit from panel$640nonesent$2,740

Example figures for illustration only; not a real job.

Original contract $42,000 + signed change orders $2,100 = current contract total $44,100. CO #3 isn't signed yet, so it isn't part of the total, and the work doesn't start until it is. (The running-total column shows $2,740 because it adds every amount typed; more on that below.)

Keep the original contract at the top

The template's running total adds up the change orders. What the client actually cares about is the new job total, so put two lines above the table (insert two rows at the top of the sheet):

In a spreadsheet, that's a cell like =B1+SUMIF(F:F,"signed",D:D), where B1 holds the original price, column F the status and column D the amounts (adjust the letters if you move things). This is the number to show the client on every new change order, and it's the line that prevents invoice shock.

One thing to know about the downloaded file: its running-total column adds every amount you type, whatever the status. Use the current-contract-total line for the number you show the client, or leave the Amount blank for a change order that's declined or not yet signed and fill it in once it's signed. A version with a built-in original-contract line and a total that counts only signed rows is planned.

How to use the log on a real job

  1. One log per job. Name the file after the job address. A single log for all jobs gets unreadable by the third client.
  2. A row for every change, before the work. Write the row when you send the change order, not when you invoice. If a row says "sent" and the work has started, that's the risk to fix today.
  3. Number change orders in order and never reuse a number. If a change order is declined, keep its row with status "declined", so there's no gap in the numbering to explain later.
  4. Record credits too. If the client drops something from the original scope, log it as a negative amount so the total stays honest.
  5. Keep the signed document with the row. The log is the index; the signed change order is the proof. Save the PDF in the job folder and name it after the CO number (e.g. "CO-03 island outlets.pdf").
  6. Send the client the log with the final invoice. When every extra is listed with a signature and date, there's little left to argue about.

The log is not the signature

A log tells you what was agreed. It isn't the client's agreement. Each row needs a signed change order behind it that states the scope, the price, the new contract total and the schedule impact.

In some places that's the law, not just good practice. California's home improvement rules, for example, say a change order becomes part of the contract only if it is "in writing and signed by the parties prior to the commencement of any work covered by a change order" (Business and Professions Code § 7159(c)(5), checked October 18, 2026). Other states and countries have their own rules.

For the signed document, use our free change order form: fill in the scope and line items, it works out the new contract total, and you print it or save it as a PDF for the client to sign. Nothing you type is uploaded. If the client isn't on site, see how to get a change order signed by text.

This page is general information, not legal advice. Rules for home improvement contracts and change orders differ by state and country. Check the rules where you work, or ask a local construction attorney or your licensing board.

What a log spreadsheet can't do

A spreadsheet is fine for a few jobs. It gets harder when:

Skip the spreadsheet: the log keeps itself

We're building Change Order Pad: write the change order on site, text the client a signing link, and both of you get a signed PDF with a timestamp, with each job's change orders and running total kept together. A flat $19/month for your whole crew, with a 14-day free trial. It isn't launched yet; join the waitlist for 50% off for life.

We only email you about early access. Privacy policy