Why Contractors Underprice Jobs
Underpricing is one of the most common and damaging mistakes in contracting. It usually happens for one of three reasons: not knowing your true costs, pricing to win rather than to profit, or copying competitor prices without understanding what those prices actually cover.
The math is unforgiving. If your true cost to complete a job is $8,000 and you price it at $8,500, you're working with a 5.9% margin — before taxes. A single callback, a material price increase, or a few extra hours of labor and you've broken even or lost money. Most contractors need at least a 20–35% gross margin to cover overhead and generate real profit.
Pricing correctly means knowing your costs in detail, not estimating them vaguely. The steps below will walk you through the full calculation.
Step 1: Calculate Your True Hourly Cost
Before you can price a job, you need to know what it actually costs your business to operate for an hour, day, or week. This is your overhead rate — and most contractors underestimate it significantly.
Your overhead includes:
- • Vehicle costs (payments, insurance, fuel, maintenance)
- • Insurance (general liability, workers comp)
- • Tools and equipment (purchases + leases)
- • Software and subscriptions
- • Marketing and advertising
- • Your own salary (if you pay yourself or factor in your time)
- • Taxes (self-employment tax, quarterly estimated taxes)
- • Office supplies, permits, licenses
Add all monthly overhead costs. Divide by the number of billable hours you work per month. That's your overhead cost per hour. A common result for a solo contractor is $40–$80/hour just in overhead before any materials.
Critical note on billable hours: Don't use total working hours. A 40-hour work week often yields only 25–30 billable hours after estimating, admin, materials runs, and drive time. If you have $5,000/month in overhead and 120 billable hours, your overhead rate is $41.67/hour. If you only counted 160 hours, you'd think it was $31.25 — a $10/hour underestimate that costs you on every job.
Step 2: Estimate Materials and Subcontractor Costs
For each job, list every material you'll need and get accurate pricing. Then add your material markup (typically 15–25%) to cover:
- • Your time sourcing and purchasing materials
- • Storage, handling, and waste
- • Price fluctuations between estimate and job start
If you're using subcontractors, get firm quotes before sending your estimate. Add 10–20% over the sub cost to cover coordination time and your general contractor risk.
One commonly overlooked factor: material price changes between estimate and job start. If there's more than a few weeks between your estimate and when you buy materials, prices may have moved. Either build a buffer into your estimate (5–10% on volatile materials) or include language in your estimate stating that material prices are valid for 30 days.
Step 3: Estimate Labor Hours Accurately
Labor estimation is where most contractors lose money. Common mistakes:
- • Estimating based on best-case scenarios (no traffic, everything goes perfectly)
- • Forgetting setup, cleanup, and drive time
- • Not accounting for callbacks and warranty work
- • Using the rate for skilled work on the whole job
A good rule: take your initial labor estimate and add 15–20% for contingency. Then multiply hours by your fully-loaded labor rate (direct pay + payroll taxes + benefits).
Use historical data. If you've tracked labor hours on similar jobs before, use that data — not gut feeling. Contractors who job cost consistently find that their labor estimates improve significantly after 6–12 months of comparing estimated vs. actual hours. The pattern of where you consistently run over becomes clear, and you can adjust future estimates accordingly.
Step 4: Apply Your Profit Margin
After calculating your total costs (overhead + materials + labor), you need to add your target profit margin. This is money the business makes beyond paying its expenses — used for growth, equipment, and rainy days.
Typical contractor profit margins by job size:
| Job Size | Markup on Cost | Gross Margin |
|---|---|---|
| Under $10,000 | 50–100% | 33–50% |
| $10,000–$50,000 | 30–50% | 23–33% |
| $50,000–$250,000 | 20–30% | 17–23% |
| $250,000–$500,000 | 10–20% | 9–17% |
| $500,000+ | 5–10% | 5–9% |
These are markups on total cost, not gross margins. A 50% markup on $10,000 in costs = $15,000 job price = 33% gross margin. Note that markup and margin are different numbers — a common source of confusion. Markup is applied to cost; margin is calculated from price.
Your target margin should reflect your business goals. If you want to grow and invest in equipment, you need a higher margin than if you're running a lean, stable operation. Many contractors target 25–35% gross margin as a sustainable baseline.
Step 5: Build a Complete Estimate
A professional estimate isn't just a number — it's a document that sets expectations, protects you legally, and often determines whether you win the job. A complete estimate includes:
- • Line-by-line breakdown of materials (with specifications)
- • Labor line items by task or phase
- • Subcontractor line items (if applicable)
- • A clear payment schedule (deposit, milestones, final)
- • What is explicitly excluded from the scope
- • Estimate validity period (typically 30 days)
- • Acceptance signature line
Itemized estimates win more jobs than lump-sum numbers because they show customers exactly what they're paying for. They also protect you — if a customer later claims something was "included," you can point to the estimate and show it wasn't.
Step 6: Do a Price Check Before Sending
Before sending any estimate, answer these three questions:
- Does this price cover all my actual costs (labor at full overhead rate + materials + subs)?
- Does it include my overhead allocation for the days/hours I'll spend on this job?
- Does it leave a profit margin I'm satisfied with?
If the answer to any of these is "I'm not sure," you need to recalculate before sending. CogniFlow Books includes a built-in Price Check tool that does this automatically — showing your projected margin before you commit to any job price.
How to Handle Price Pushback from Customers
Getting pushback on your price is normal. How you respond determines whether you maintain your margin or give it away. A few principles:
- Understand the objection before responding. "That's expensive" and "I got a lower quote from someone else" require different responses. Ask questions before you adjust your number.
- Reduce scope, not margin. If a customer needs a lower price, offer to remove scope items rather than cutting your margin. "I can remove the painting and save you $800" is a better response than just discounting $800.
- Know your walk-away number. Before every estimate, know the lowest you'll accept. When a customer pushes below that number, politely decline. A job that doesn't cover your costs is worse than no job.
- Use data to justify your price. "My costs for this job are X, and I need Y margin to run my business" is a stronger position than simply repeating a number. Some customers respond well to transparency.
Common Pricing Mistakes to Avoid
- • Matching competitor prices without knowing their costs. Their overhead may be completely different from yours.
- • Pricing to win the job rather than to profit from it. A job that loses money is worse than no job.
- • Forgetting to account for taxes. 15–25% of net profit goes to self-employment and income taxes.
- • Not updating pricing as costs rise. Material costs, fuel, and labor all change. Review your overhead calculation at least every 6 months.
- • Using the same margin on all job types. Some job types have higher risk, more management time, or more volatile costs. They deserve a higher margin than predictable, straightforward jobs.
- • Confusing revenue with profit. A $200,000 year in revenue sounds impressive until you realize your costs were $195,000. Focus on margin, not top-line numbers.
Price Check Every Job with CogniFlow Books
CogniFlow Books includes a built-in Price Check tool on every estimate and invoice. Enter the job duration, number of workers, and your rate — and instantly see your projected margin before sending. No spreadsheets required. Know your numbers before you commit to any job price.
Try It Free