The Short Version
Most builders handle construction billing one of two ways: they create separate invoices for each draw manually, or they invoice the full contract amount at completion. Both approaches create problems. Manual draw invoices are time-consuming, disconnected from the original estimate, and make it hard to track what percentage of the contract has been collected. Full-contract invoicing at completion creates cash flow gaps that can run into six figures on larger projects. Progress invoicing — a built-in QuickBooks feature — solves both problems. I install this setup with every builder I work with who's running contracts with a draw structure, and it consistently recovers 2–4 hours per project in admin time.
Sound Familiar?
Signs your QuickBooks billing setup is costing you time and cash flow:
- You create a new invoice from scratch for each draw, manually typing in the amount and description
- Your draw invoices don't reference the original estimate, so it's hard to track total billings against contract value
- You've invoiced a client twice for the same phase or missed a draw because billing isn't systematized
- Your cash position goes negative mid-project because draws are running behind the cost curve
- You spend 30–45 minutes per invoice on a project with 4–6 draws
What We Found
How QuickBooks Progress Invoicing Works (And Why Most Builders Don't Use It)
QuickBooks progress invoicing is a native feature that lets you create an estimate and then invoice against it in partial amounts — by percentage of the total, by specific line items, or by a fixed dollar amount per draw. Each invoice is tied to the original estimate, so QuickBooks tracks cumulative billings, remaining balance, and percentage billed automatically.
Most builders don't use it because they don't know it exists, or they turned it on once and couldn't figure out the workflow, or their bookkeeper set things up in a way that didn't enable it. The feature is available in QuickBooks Online (all paid tiers) and QuickBooks Desktop (Pro, Premier, Enterprise). It requires a one-time settings activation.
Here's why this matters for cash flow — not just time savings:
When you manually create invoices for each draw without tying them to an estimate, you're billing reactively. Progress invoicing flips the model: you create the estimate, attach the draw schedule to it, and execute invoices according to the schedule. The schedule is visible in QuickBooks at any time. You can see at a glance which draws have been invoiced, which are outstanding, and what percentage of the contract has been collected.
For a builder running 6–8 active projects simultaneously, that visibility is the difference between knowing your cash position and guessing it.
The Draw-to-Cost Misalignment Problem
Cash flow in construction gets dangerous when draws are scheduled without reference to actual cost timing. I see builders structure draw schedules that look fair — equal thirds, or milestone-based — but actually create a 6–8 week window mid-project where costs outpace billings by $40,000–$80,000. Progress invoicing doesn't solve the draw schedule design problem, but it does make sure you're billing every draw on time rather than running a week late because invoice creation was cumbersome.
The other benefit: when all draws are invoiced from the same estimate in QuickBooks, your job profitability reporting actually works. QuickBooks can show you contract value, total billed, and job costs against the same estimate. This is the financial visibility that makes construction businesses manageable — and it requires progress invoicing to function correctly.
Setting Up QuickBooks Progress Invoicing: The Complete Process
Here's the step-by-step setup for both QuickBooks Online and QuickBooks Desktop — the activation, the estimate creation, and the draw invoicing workflow.
QuickBooks Online Setup
Step 1: Enable progress invoicing in settings. Go to Settings (gear icon) — Account and Settings — Sales — Progress Invoicing. Toggle "Create multiple partial invoices from a single estimate" to On. Save. This is the one-time activation step. Without it, the feature doesn't appear in your workflow.
Step 2: Create the project estimate. Create a new estimate in QuickBooks for the project. The estimate should reflect your contract value — either as a single line item (the contract total) or broken out by scope category if you want category-level tracking. Add the client, the project date, and save. This estimate becomes the master document all draws are billed against.
Step 3: Create your first progress invoice from the estimate. Open the estimate. Click "Create invoice." QuickBooks will ask what portion of the estimate to invoice — "All," "A percentage," or "Specific items." For draw-schedule billing, choose "A percentage" (e.g., 25% on a four-draw contract) or "Specific items" if draws are tied to scope categories. Save and send.
Step 4: Repeat for subsequent draws. When the next draw is due, go back to the estimate and create another invoice. QuickBooks shows how much has been billed and how much remains. The process takes 5–8 minutes per draw once set up.
QuickBooks Desktop Setup
In QuickBooks Desktop, go to Edit — Preferences — Jobs and Estimates — Company Preferences. Check "Do you create estimates?" (Yes) and "Do you do progress invoicing?" (Yes). Save. The workflow follows the same logic: create an estimate, then invoice against it by percentage or by specific line items.
Matching the QuickBooks estimate to your draw schedule
For this setup to function as a true draw-billing system, your QuickBooks estimate structure should mirror your contract draw schedule. If your contract has five draws — mobilization, rough-in complete, framing complete, drywall complete, final — structure the estimate with those five line items at the corresponding dollar amounts. Each progress invoice then corresponds exactly to one draw, with line item identification that matches what the client signed.
This eliminates the most common draw billing dispute: a client who claims they don't know what a draw invoice is for. When the invoice references a specific project milestone and shows cumulative billings against the contract total, there's no ambiguity about what's been earned and what's being collected.
Connecting progress invoicing to job costing
For full job cost visibility, each QuickBooks progress invoice should be tied to a QuickBooks customer:job record — the same job record where you're tracking cost entries. When set up correctly, QuickBooks can produce a job profitability report showing contract value (from the estimate), total revenue billed (from progress invoices), and total job costs — all in one view.
Most builders using JobTread for job costing run QuickBooks separately for billing and financial reporting. The integration works best when your QuickBooks customer:job structure matches your JobTread project structure. If they're misaligned, reconciliation becomes a weekly headache. The setup is straightforward — I cover it as part of the QuickBooks integration work — but it needs to be deliberate, not default.
What a healthy draw billing workflow looks like week to week
With progress invoicing set up correctly, billing a draw looks like this: when a project milestone is reached, open the corresponding QuickBooks estimate, click "Create invoice" for the appropriate draw percentage, review the amount, and send. Done in under 10 minutes. The draw history, remaining balance, and percentage collected update automatically.
Compare that to the manual approach — open a blank invoice, type the client name, type the project name, type the draw description, calculate the amount, cross-reference the previous invoice to confirm the math, save, send — which takes 25–40 minutes per draw and produces errors. Over 8 projects each with 4 draws, the manual approach costs 10–14 hours per year in billing admin. Progress invoicing cuts that to 2–3 hours.
Author: Grant Fuellenbach is the founder of Go First Consulting. He has worked with 312+ residential construction businesses and driven $5.3M+ in measurable client impact. Book a strategy call to discuss your QuickBooks setup.
Get Your QuickBooks and JobTread Working Together
Most builders lose hours per week to manual billing and reconciliation. A Go First strategy call identifies exactly where your QuickBooks setup is costing you time and cash flow.
Book a Strategy Call →Frequently Asked Questions
QuickBooks progress invoicing is a feature that lets you create a single estimate and then bill against it in partial increments — by percentage, by dollar amount, or by specific line items. Each partial invoice is tied to the original estimate, and QuickBooks tracks cumulative billings, remaining balance, and percentage collected automatically. It's available in QuickBooks Online (all paid tiers) and QuickBooks Desktop Pro, Premier, and Enterprise.
Go to Settings (gear icon) — Account and Settings — Sales — Progress Invoicing. Toggle 'Create multiple partial invoices from a single estimate' to On. Once enabled, create an estimate for the project, then click 'Create invoice' from the estimate to generate partial invoices by percentage or by specific line items. Each draw invoice is automatically linked to the estimate and the running balance updates with each invoice.
Yes — and this is the primary use case. Create a QuickBooks estimate that mirrors your contract draw schedule, with each draw as a line item at the corresponding dollar amount (e.g., 'Draw 1 - Mobilization,' 'Draw 2 - Rough-In Complete'). When a milestone is reached, open the estimate and create a progress invoice for that specific line item. The client receives an invoice that clearly references the milestone, and QuickBooks tracks what has been billed and what remains against the contract total.
QuickBooks and JobTread serve different functions — JobTread handles job costing, scheduling, and project management; QuickBooks handles billing, payables, and financial reporting. Progress invoicing lives in QuickBooks. For the two systems to produce reconcilable data, each QuickBooks customer:job record needs to correspond to the matching JobTread project, and your QuickBooks chart of accounts needs to be mapped to your JobTread cost codes. When the structure is aligned, job cost data from JobTread and billing data from QuickBooks can be viewed together for a complete job profitability picture.
Most residential construction contracts at $200,000–$1,000,000 use 4–6 draws. A common structure: mobilization/deposit (10–15%), framing complete (20–25%), rough-in complete (20%), drywall complete (20%), punch list complete (15%), final (5–10%). Draws should be sized so you're always slightly behind on collections relative to your cost curve — you've been paid slightly less than you've spent at any given point. This protects the client's interest and is standard in residential construction.