Skip to main content

Pricing a Tiny Home Build So It Actually Makes Money: The True-COGS Playbook

Published 12 min readMike ThriftMike Thrift
Pricing a Tiny Home Build So It Actually Makes Money: The True-COGS Playbook
On this page

You just quoted $40,000 for a tiny home build. Materials came to roughly $22,000, so you figure you are pocketing $18,000 for a few weeks of work. Then the build starts: your lead carpenter needs 300 hours, not the 220 you guessed. The electrician's final hookup costs more than the rough-in allowance. The trailer delivery, the dumpster, the permit fees — none of them were in your quote. By move-in day, the "profitable" job has paid you less per hour than your own crew earns.

This is the most common way tiny home builders go broke while staying busy. The houses keep selling, the shop stays full, and the bank account never grows — because the price was set from a cost number that was never real. The fix is learning to price from true cost of goods sold: every dollar of material, every burdened hour of labor, and every direct job cost, tracked per build.

Why Tiny Home Builds Lose Money on Paper-Thin Math​

Tiny homes look like a high-margin product. A finished tiny home on wheels sells for $60,000 to $95,000 from a professional builder in 2026, while a DIY shell can go up for $25,000 to $45,000 in materials. That gap between material cost and selling price feels like pure profit — and that feeling is exactly the trap.

Labor alone typically runs 30% to 60% of a tiny home project's total cost. On a $40,000 build, that means $12,000 to $24,000 of labor hiding behind your materials receipt. Builders who estimate from the lumberyard invoice and treat labor as "whatever is left over" have the math backwards: labor is usually the largest cost on the job, and it is the one most often underestimated.

The second trap is optimism about hours. Most builders estimate labor by picturing themselves doing the work at full speed — then hand the job to employees who drive to the site, wait on inspections, make material runs, and fix callbacks. Every one of those hours costs you money whether or not it appears in the estimate. A job quoted at 220 hours that takes 300 has blown its labor budget by 36% before a single change order.

Build Your True COGS: The Three Buckets​

True cost of goods sold for a build has three buckets: materials, labor, and subcontractors plus direct job costs. If a dollar was spent to produce that specific home, it belongs in one of them. Get all three right and your quote rests on bedrock. Miss one and you are donating the difference to your customer.

Bucket 1: Materials — Every Stick, Screw, and Appliance​

Start with the full material takeoff, not a remembered round number. A typical tiny home on wheels needs:

  • Trailer or foundation: often $4,000 to $7,000 for a purpose-built tiny home trailer
  • Framing lumber and sheathing: the lumber package is usually the single biggest material line
  • Roofing, siding, windows, and doors: a tiny home has a lot of weather-tight shell per square foot of living space, so these costs add up fast
  • Electrical, plumbing, and mini-split HVAC: rough-in plus fixtures, panel, water heater, and fittings
  • Appliances and finishes: range, fridge, washer-dryer combo, cabinetry, flooring, tile, and paint

Then add the three material costs builders most often forget. First, a waste factor of 5% to 10% for cuts, breakage, and the wrong-size order you cannot return. Second, delivery fees and freight, which are real money on a build that needs a dozen separate deliveries. Third, price drift between quote and purchase — lumber and fixture prices move, and a quote that was accurate in March can be underwater by June.

Track material receipts per build, not per month. When all builds share one "materials" pile in your books, you can never answer the only question that matters: did this house make money? Keep each build's receipts tagged to that job, and aim to hold material variance — actual versus estimated — under 5% per unit.

Bucket 2: Labor — Burdened, Not Bare Wages​

This is where most quotes die. If you pay a carpenter $25 per hour, your cost is not $25 per hour. The fully burdened rate adds:

  • Employer payroll taxes: 7.65% for Social Security and Medicare alone, plus federal and state unemployment insurance
  • Workers' compensation: premiums run highest for hands-on carpentry class codes, and they scale directly with payroll
  • Benefits and paid time off: every vacation day and holiday is payroll with zero billable output
  • Non-billable hours: drive time, material runs, inspections, safety meetings, callbacks, and weather days

Do the math on non-billable time alone: if your crew is paid for 40 hours but produces 32 billable hours, every billable hour carries 25% more cost before insurance and taxes enter the picture. All in, labor burden typically adds 25% to 40% on top of bare wages. That $25-per-hour carpenter actually costs you $31 to $35 for every hour you can bill — and your quote must use the burdened number.

Run the example: 300 build hours at a $25 bare wage looks like $7,500 in the estimate. At a 1.35 burden multiplier, the real cost is $10,125. The $2,625 difference came straight out of your profit, and it was invisible the day you signed the contract.

One more labor cost builders erase: your own time. If you frame, wire, finish, or project-manage, those hours have a market value. Leaving them out makes every build look more profitable than it is — and guarantees you can never afford to hire someone to replace you. Price your hours at what a replacement would cost, burdened, even if you currently take it as owner's draw.

Bucket 3: Subcontractors and Direct Job Costs​

Everything hired or bought for this specific build goes here:

  • Licensed electrician and plumber work, especially final hookups and anything your crew cannot legally touch
  • Permits, plan checks, and inspection fees
  • Trailer delivery or crane time to set the home
  • Dumpster rental, portable toilet, and equipment rentals
  • Job-specific insurance riders or bonds

A common leak: deposits and progress payments to subs get booked as generic expenses instead of job costs, so the build looks cheaper than it is while "overhead" mysteriously balloons. Every sub invoice should be coded to its build the day it arrives. If a cost would not exist without this house, it is a direct job cost — full stop.

The Overhead You Forgot (and How to Allocate It)​

Even with perfect COGS, the job is not profitable until it carries its share of overhead: shop or yard rent, utilities, truck payments and fuel, tool replacement, business insurance, bookkeeping, marketing, software, and your base salary. Overhead does not appear on any single job's receipts, which is why builders ignore it — and why ignoring it is fatal.

Consider a stripped-down example. A contractor finishes a job: $8,000 contract, $5,200 in materials and labor. That looks like $2,800 of profit, a 35% margin. But the business runs $15,000 a month in overhead across 10 jobs, so each job carries $1,500. Actual profit is $1,300 — a 16% margin, less than half of what the contractor believed. Now imagine that contractor's surprise at year end, when ten "35% margin" jobs somehow produced a 16% year.

Allocate overhead with a simple method you will actually use:

  1. Total your monthly overhead — every recurring business cost that is not tied to a specific build.
  2. Divide by realistic monthly output — completed builds per month, or billable crew-hours if builds overlap.
  3. Add that share to every quote as its own line, right below COGS.

If your shop costs $7,000 a month all-in and you complete two builds a month, every quote needs a $3,500 overhead line. Skip it and each build quietly borrows $3,500 from the business. Two builds a month means you are lending yourself $84,000 a year at zero interest and wondering where the money went.

Markup Is Not Margin: Price From the Right Number​

Here is the arithmetic error that costs builders more than any other: confusing markup with margin. They sound interchangeable. They are not.

  • Markup is profit as a percentage of cost. A $25,000 build marked up 60% sells for $40,000.
  • Margin is profit as a percentage of price. That same $40,000 sale on $25,000 of cost yields a 37.5% margin — not 60%.

The gap always surprises people: a 25% markup produces only a 20% margin. A 50% markup produces a 33% margin. To earn a 40% margin — a reasonable minimum target for custom manufacturing like tiny home building, where each unit must cover real overhead — you need a 67% markup on cost. Builders who "add 30% for profit" are earning a 23% margin and calling it 30.

The Full $40,000 Build, Worked Honestly​

Put it all together for the build from the opening paragraph:

LineAmount
Materials (all-in with waste and delivery)$21,500
Labor: 300 hrs × $25 × 1.35 burden$10,125
Subs, permits, delivery, rentals$3,200
True COGS$34,825
Sale price$40,000
Gross profit$5,175 (12.9% margin)
Overhead share per build$3,500
True job profit$1,675 (4.2%)

That "easy $18,000" was really $1,675 — and one warranty callback erases it entirely. To earn a 40% gross margin on $34,825 of true cost, the price needs to be about $58,000 ($34,825 ÷ 0.60). Notice how that lands squarely in the real professional-builder range of $60,000 to $95,000. The market already knows what these homes cost to build profitably. The builders losing money are the ones pricing below it.

Before you sign any contract, compute your walk-away price: true COGS plus overhead share, with zero profit. Anything below that number means paying the customer for the privilege of building their house. Knowing it in advance turns desperate discounting into a calm "I can't do it for that" — the cheapest words in construction.

The Five Pricing Mistakes That Kill Tiny Home Builders​

1. Pricing from materials only. The lumberyard receipt is the most visible cost and often less than half the true total. Every quote must start from all three COGS buckets plus overhead, never from materials with a hopeful multiplier.

2. Using bare wages instead of burdened rates. If your estimate says $25 per hour and your true cost is $34, a 300-hour build leaks $2,700 before it starts. Calculate your burden multiplier once a year from real payroll data, and estimate every hour with it.

3. Forgetting your own labor. Unpaid owner hours are a subsidy, not a strategy. They hide in every "profitable" year that somehow never funds a vacation, a retirement contribution, or a hire. Burden your hours like any employee's.

4. Giving away change orders. Custom tiny homes breed mid-build changes: upgraded appliances, moved walls, nicer finishes. Each one needs a written change order priced with the same markup as the base contract — same day, before the work happens. Free changes are the fastest known way to convert a 40% margin into a 10% one.

5. Trimming margin to win the job. Discounting feels like buying revenue, but below your walk-away price you are buying work that loses money. Small builders operating on thin single-digit net margins have no cushion for the callback, the price spike, or the slow month. Hold your margin; let the underpriced jobs go to competitors who have not read this article.

A Simple Per-Build Bookkeeping System​

None of this works without books organized by build. Set up one job cost sheet per house with four lines — materials, labor, subs and direct costs, overhead share — and post every dollar to its build as it is spent, not at month end when receipts have gone feral. If you use accounting software, that means a job or project tag on every transaction; on paper, it means one envelope and one running tally per house.

Two habits separate builders who improve from builders who repeat:

  • Reconcile weekly. Enter receipts, code sub invoices to their builds, and compare spending to the estimate while there is still time to act. A 10% material overrun discovered in week two is a conversation with the supplier. Discovered at delivery, it is a donation.
  • Close out every build. When the home ships, finalize actual versus estimated costs line by line and write down what you misjudged. Feed the variance straight into your next quote's allowances. Three honest closeouts will improve your estimating more than three years of guessing.

This discipline pays off beyond pricing. Clean per-build records make warranty reserves sane, turn tax time from archaeology into arithmetic, and give a lender real numbers if you ever finance a bigger shop. Visualizing per-build costs on a dashboard makes overruns obvious weeks before they become losses.

Keep Every Build Profitable From Day One​

Pricing a tiny home is really two skills: knowing your true costs and having the books to prove them. Once every build carries its materials, its burdened labor, its direct costs, and its share of overhead, your quotes stop being hopes and start being math — and the gap between a $40,000 wish and a $58,000 business finally makes sense.

As you price your next build, maintaining clear per-job financial records is essential. Beancount.io provides plain-text accounting that gives you complete transparency and control over your financial data — no black boxes, no vendor lock-in. Get started for free and see why developers and finance professionals are switching to plain-text accounting.

Share this article

Follow this topic

Source: https://beancount.io/blog/2026/09/25/pricing-tiny-home-build-true-cogs-lumber-labor-guide

Published: September 25, 2026