Contractor Invoice: How to Bill for Labor, Materials and Progress
Updated
Whether you're a general contractor, plumber, electrician, roofer or handyman, a clear invoice gets you paid faster and avoids arguments about what was agreed. This guide shows how to bill for labor and materials, deposits, change orders and progress payments, with a complete contractor invoice example you can copy.
The short answer
A contractor invoice should show:
- Your business name, contact details and license number
- The client's name and the job site address
- An invoice number, the date and the job or quote reference
- Labor and materials as separate lines
- Approved change orders, each on its own line
- Any deposit or progress payments already received
- The balance due, the due date and how to pay
What to include on a contractor invoice
- Your business details: name, address, phone, email and logo
- Your license number, if your trade is licensed. Many states require it on contracts and bids, and it reassures clients on invoices too.
- The client's name and billing address
- The job site address, if it's different (rename Ship To to "Job Site" on our template)
- Invoice number, date and due date, plus the quote, estimate or contract number
- Labor, as hours × rate or a fixed price per task
- Materials, itemized or as a total, matching what was quoted
- Change orders, each with its number and description
- Payments already received and the balance due
- Payment methods and any warranty terms
Labor and materials
Keep labor and materials on separate lines. Clients can see exactly what they're paying for, and it matters for tax in many places, because labor and materials are often taxed differently.
| Line type | How to show it | Example |
|---|---|---|
| Hourly labor | Hours as the quantity, hourly rate as the rate | Labor: demolition and prep, 16 h × $65 |
| Fixed-price labor | Quantity 1, the agreed price | Install vanity and toilet, $450 |
| Materials | Per item, or one line for the package | Porcelain tile, 120 sq ft × $6.50 |
| Fees | Their own lines | Permit fee, dumpster rental, call-out |
If you mark up materials, decide upfront whether you show the markup or include it in the price, and keep it consistent with your quote.
Contractor invoice example
A remodeling contractor's final invoice for a bathroom, with a deposit already paid and one approved change order:
Ridgeline Builders LLC
2100 S Lamar Blvd, Austin, TX 78704
(512) 555-0142 · [email protected]
License #: RB-12345
INVOICE
# 1189
Bill To:
Karen Mitchell
7 Willow Creek Dr, Austin, TX 78745
| Item | Quantity | Rate | Amount |
|---|---|---|---|
| Labor: demolition and prep (hours) | 16 | $65.00 | $1,040.00 |
| Labor: tile installation, floor and shower (hours) | 24 | $65.00 | $1,560.00 |
| Porcelain tile and setting materials (sq ft) | 120 | $6.50 | $780.00 |
| Install vanity, toilet and shower valve | 1 | $450.00 | $450.00 |
| Change order #1: add recessed shower niche | 1 | $350.00 | $350.00 |
Notes:
Job site: 7 Willow Creek Dr, Austin. Deposit of $1,500.00 received Oct 12. 1-year workmanship warranty. Pay by check, bank transfer or card.
- Subtotal:
- $4,180.00
- Total:
- $4,180.00
- Amount Paid:
- $1,500.00
- Balance Due:
- $2,680.00
Deposits and change orders
Deposits. Asking for a deposit before ordering materials is standard. Put the amount in your written quote or contract, and show it on the final invoice as Amount Paid, as in the example. Some places limit deposits on home improvement work. California, for example, caps them at 10% of the contract price or $1,000, whichever is less. Check the rules where you work.
Change orders. When the client asks for extra work, write a change order with the price and get it approved in writing before you do it. On the invoice, add each approved change order as its own line with its number. That way there's never a surprise on the final bill.
Start with a quote or estimate, and use a work order to describe the job for your crew.
Progress billing and retainage
On bigger jobs, invoice in stages as the work is completed instead of waiting until the end. A common schedule:
-
Deposit on signing
To order materials and book the job.
-
Progress invoices at milestones
For example after demolition, after rough-in, after drywall. Each invoice describes the stage, for example "Stage 2 of 4: rough-in plumbing and electrical, 30% of contract", and lists payments received so far.
-
Final invoice at completion
The last stage plus any change orders, less everything already paid. Many clients pay the final invoice after a walkthrough.
Retainage, common on commercial projects, is a percentage of each payment, often 5% to 10%, that the client holds back until the whole project is accepted. Show the retainage withheld on each progress invoice, then invoice the total retainage at the end.
Getting paid on time
- Invoice the day you finish, or right from the job site on your phone.
- Match the quote. Use the same line items and prices, so the client can check it quickly.
- Get change orders signed before doing extra work.
- Make paying easy: accept card, bank transfer and check, and say so on the invoice.
- Use short terms for homeowners: due on completion or Net 15.
- Follow up on the due date. With a free invoices.net account, you can email the invoice and see when the client has opened it.
Frequently asked questions
What should a contractor invoice include?
Your business name, contact details and license number if you have one, the client's name, the job site address, an invoice number and date, separate lines for labor and materials, any change orders, deposits already paid, the balance due, the due date and how to pay.
Should I list labor and materials separately?
Yes. Separate lines make the invoice easier for the client to check, and in many places labor and materials are taxed differently. Show labor as hours × rate or a fixed price, and materials as items or a single total, as agreed in your quote.
How much deposit can a contractor ask for?
It depends on the job and on local law. Some places cap deposits on home improvement jobs, for example California limits them to 10% of the contract price or $1,000, whichever is less. Check the rules for your state or country, and put the deposit in your written agreement.
What is progress billing?
Progress billing means invoicing in stages as the work is completed, for example after demolition, after rough-in and at completion, instead of one invoice at the end. Each invoice shows the work done in that stage and what has already been paid.
What is retainage?
Retainage is a percentage of each payment, often 5% to 10%, that the client holds back until the whole project is finished and accepted. It is common on commercial construction. Show it on each progress invoice so both sides can track the amount held back.
How do I invoice for a change order?
Add the approved change order as its own line, with its number and description, for example "Change order #1: add shower niche". Only invoice change orders the client has approved in writing.
Do I charge sales tax on a contractor invoice?
It depends on where you work and the type of job. Some states and countries tax materials, some tax labor, and some treat contractors as the end consumer of materials. Check your local rules or ask an accountant.
Can I send contractor invoices from my phone?
Yes. invoices.net works in your phone's browser, so you can write the invoice at the job site, download the PDF or email it to the client before you leave.
Related guides
- How to Make an InvoiceWhat to put on an invoice, how to number it, payment terms, and how to send it.
- Free Invoice TemplateA free template you fill in online: every field explained, plus templates for quotes, receipts and more.
- Photography InvoiceSession fees, retainers, deliverables and usage rights for photographers.
- Consulting InvoiceHourly, day-rate and retainer billing, expenses and POs for consultants.
- Cleaning InvoicePer-visit and monthly billing, extras and recurring clients for cleaning businesses.
- Freelance Invoice GuideHourly vs project billing, deposits, payment terms and getting paid on time as a freelancer.