{"product_id":"blower-door-testing-owner-makes","title":"How Much Blower Door Testing Owners Make at $277K Revenue","description":"\u003cbr\u003e\u003cdiv class=\"card_smpl\"\u003e\n\u003cp\u003eA blower door testing business owner can plan around roughly \u003cstrong\u003e$96,000 before personal taxes\u003c\/strong\u003e in the first year under the supplied assumptions That equals an $85,000 owner-operator salary plus about $11,000 in operating profit on $277,000 of revenue The model assumes about 480 paid jobs a year, or 92 billable tests per week, at a blended average of about $578 per job This is a planning estimate, not a guaranteed salary\u003c\/p\u003e\n\n\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003csection class=\"fml-owner-metric-cards\" aria-label=\"Top Owner Income KPI Cards\"\u003e\u003cdiv class=\"metric-grid\"\u003e\n\u003carticle class=\"metric-card is-green\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Year 1 take-home before tax: $85k owner salary plus about $11k operating profit; excludes debt, taxes, and extra distributions.\"\u003e\u003cimg class=\"metric-icon\" src=\"\/cdn\/shop\/files\/fml-owner-income-kpi-owner-income.svg\" alt=\"Owner income icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003eOwner income\u003c\/span\u003e\u003cstrong class=\"metric-value\" tabindex=\"0\" data-tooltip=\"Year 1 take-home before tax: $85k owner salary plus about $11k operating profit; excludes debt, taxes, and extra distributions.\"\u003e$96k\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Year 1 owner-inclusive margin is about 35%: $96k take-home on $277k revenue; company margin after payroll is about 4%.\"\u003e\u003cimg class=\"metric-icon\" src=\"\/cdn\/shop\/files\/fml-owner-income-kpi-net-margin.svg\" alt=\"Net margin icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003eNet margin\u003c\/span\u003e\u003cstrong class=\"metric-value\" tabindex=\"0\" data-tooltip=\"Year 1 owner-inclusive margin is about 35%: $96k take-home on $277k revenue; company margin after payroll is about 4%.\"\u003e35%\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Year 1 revenue is $277k, which supports about $96k owner take-home at the model mix and billable rate assumptions.\"\u003e\u003cimg class=\"metric-icon\" src=\"\/cdn\/shop\/files\/fml-owner-income-kpi-revenue-target.svg\" alt=\"Revenue for target pay icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003eRevenue for target pay\u003c\/span\u003e\u003cstrong class=\"metric-value\" tabindex=\"0\" data-tooltip=\"Year 1 revenue is $277k, which supports about $96k owner take-home at the model mix and billable rate assumptions.\"\u003e$277k\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Based on Month 8 breakeven and $821k minimum cash, the model needs strong early demand and tight cash control.\"\u003e\u003cimg class=\"metric-icon\" src=\"\/cdn\/shop\/files\/fml-owner-income-kpi-business-difficulty.svg\" alt=\"Business difficulty icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003eBusiness difficulty\u003c\/span\u003e\u003cstrong class=\"metric-value\" tabindex=\"0\" data-tooltip=\"Based on Month 8 breakeven and $821k minimum cash, the model needs strong early demand and tight cash control.\"\u003eHard\u003c\/strong\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWant to test your own owner pay?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-owner-calculator\" aria-label=\"Owner Income Calculator for Blower Door Testing Service\" data-locale=\"en-US\" data-currency=\"USD\" data-default-scenario=\"base\" data-export-filename=\"Owner Income Calculator for Blower Door Testing Service.xlsx\" data-source-site-name=\"Financial Models Lab\" data-source-site-url=\"https:\/\/financialmodelslab.com\" data-source-page-title=\"Owner Income Calculator for Blower Door Testing Service\" data-note-title=\"Planning note:\" data-note-text=\"Research-based planning estimate only. It is not guaranteed salary, tax advice, or owner distribution advice.\"\u003e\u003cdiv class=\"fml-owner-card\"\u003e\n\u003cheader class=\"fml-owner-header\"\u003e\u003cdiv class=\"fml-owner-heading\"\u003e\n\u003cp class=\"fml-owner-eyebrow\"\u003eOwner income calculator\u003c\/p\u003e\n\u003cp class=\"fml-owner-intro\"\u003eEstimate owner take-home and the target-pay gap from revenue, margin, labor, fixed overhead, reserves, and your monthly pay goal.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-scenarios\" aria-label=\"Income scenario presets\"\u003e\n\u003cbutton class=\"fml-owner-scenario\" type=\"button\" data-scenario=\"low\"\u003eLow\u003c\/button\u003e\u003cbutton class=\"fml-owner-scenario is-active\" type=\"button\" data-scenario=\"base\"\u003eBase\u003c\/button\u003e\u003cbutton class=\"fml-owner-scenario\" type=\"button\" data-scenario=\"high\"\u003eHigh\u003c\/button\u003e\n\u003c\/div\u003e\u003c\/header\u003e\u003cdiv class=\"fml-owner-layout\"\u003e\n\u003cform class=\"fml-owner-inputs\"\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eMonthly revenue\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Average monthly service revenue from blower door tests, audits, and compliance work.\"\u003ei\u003cspan role=\"tooltip\"\u003eAverage monthly service revenue from blower door tests, audits, and compliance work.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"monthlyRevenue\" data-owner-kind=\"money\" data-owner-label=\"Monthly revenue\" data-owner-note=\"Average monthly service revenue from blower door tests, audits, and compliance work.\" data-low=\"23167\" data-base=\"80083\" data-high=\"138000\" name=\"monthlyRevenue\" type=\"text\" inputmode=\"numeric\" value=\"80,083\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eGross margin\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Percent of revenue left after direct field costs like travel, consumables, calibration, and retests.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of revenue left after direct field costs like travel, consumables, calibration, and retests.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-percent\"\u003e\n\u003cinput data-owner-field=\"grossMargin\" data-owner-kind=\"percent\" data-owner-label=\"Gross margin\" data-owner-note=\"Percent of revenue left after direct field costs like travel, consumables, calibration, and retests.\" name=\"grossMargin\" type=\"range\" min=\"0\" max=\"100\" step=\"1\" data-low=\"68\" data-base=\"71\" data-high=\"74\" value=\"71\"\u003e\u003coutput\u003e71%\u003c\/output\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eLabor cost\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly payroll for the owner and technicians before owner take-home.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly payroll for the owner and technicians before owner take-home.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"laborCost\" data-owner-kind=\"money\" data-owner-label=\"Labor cost\" data-owner-note=\"Monthly payroll for the owner and technicians before owner take-home.\" data-low=\"12500\" data-base=\"25000\" data-high=\"37917\" name=\"laborCost\" type=\"text\" inputmode=\"numeric\" value=\"25,000\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eFixed overhead\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Rent, insurance, software, utilities, memberships, and office costs.\"\u003ei\u003cspan role=\"tooltip\"\u003eRent, insurance, software, utilities, memberships, and office costs.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"fixedOverhead\" data-owner-kind=\"money\" data-owner-label=\"Fixed overhead\" data-owner-note=\"Rent, insurance, software, utilities, memberships, and office costs.\" data-low=\"2950\" data-base=\"2950\" data-high=\"2950\" name=\"fixedOverhead\" type=\"text\" inputmode=\"numeric\" value=\"2,950\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eMarketing\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly lead gen and customer acquisition spend.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly lead gen and customer acquisition spend.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"marketing\" data-owner-kind=\"money\" data-owner-label=\"Marketing\" data-owner-note=\"Monthly lead gen and customer acquisition spend.\" data-low=\"1000\" data-base=\"2083\" data-high=\"2917\" name=\"marketing\" type=\"text\" inputmode=\"numeric\" value=\"2,083\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eDebt service\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly loan payments if you finance equipment, vehicles, or startup costs.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly loan payments if you finance equipment, vehicles, or startup costs.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"debtService\" data-owner-kind=\"money\" data-owner-label=\"Debt service\" data-owner-note=\"Monthly loan payments if you finance equipment, vehicles, or startup costs.\" data-low=\"0\" data-base=\"0\" data-high=\"0\" name=\"debtService\" type=\"text\" inputmode=\"numeric\" value=\"\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eTax reserve\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Percent set aside from profit for taxes before owner take-home.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent set aside from profit for taxes before owner take-home.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-percent\"\u003e\n\u003cinput data-owner-field=\"taxReserve\" data-owner-kind=\"percent\" data-owner-label=\"Tax reserve\" data-owner-note=\"Percent set aside from profit for taxes before owner take-home.\" name=\"taxReserve\" type=\"range\" min=\"0\" max=\"45\" step=\"1\" data-low=\"15\" data-base=\"20\" data-high=\"22\" value=\"20\"\u003e\u003coutput\u003e20%\u003c\/output\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eReinvestment reserve\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Percent held back for repairs, equipment replacement, and working capital.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent held back for repairs, equipment replacement, and working capital.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-percent\"\u003e\n\u003cinput data-owner-field=\"reinvestmentReserve\" data-owner-kind=\"percent\" data-owner-label=\"Reinvestment reserve\" data-owner-note=\"Percent held back for repairs, equipment replacement, and working capital.\" name=\"reinvestmentReserve\" type=\"range\" min=\"0\" max=\"35\" step=\"1\" data-low=\"5\" data-base=\"8\" data-high=\"10\" value=\"8\"\u003e\u003coutput\u003e8%\u003c\/output\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eTarget owner pay\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly owner income goal used to measure the target-pay gap.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly owner income goal used to measure the target-pay gap.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"targetOwnerPay\" data-owner-kind=\"money\" data-owner-label=\"Target owner pay\" data-owner-note=\"Monthly owner income goal used to measure the target-pay gap.\" data-low=\"6000\" data-base=\"8500\" data-high=\"12000\" name=\"targetOwnerPay\" type=\"text\" inputmode=\"numeric\" value=\"8,500\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003c\/form\u003e\n\u003caside class=\"fml-owner-results\" aria-live=\"polite\"\u003e\u003cspan class=\"fml-owner-tag\"\u003eOwner income output\u003c\/span\u003e\u003cdiv class=\"fml-owner-metrics\"\u003e\n\u003cdiv class=\"fml-owner-metric is-primary\"\u003e\n\u003cspan class=\"fml-owner-metric-label\"\u003eOwner Income\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly take-home after tax and reinvestment reserves.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly take-home after tax and reinvestment reserves.\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cstrong data-owner-output=\"monthlyOwnerIncome\"\u003e$19,315\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-metric\"\u003e\n\u003cspan class=\"fml-owner-metric-label\"\u003eNet Margin\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Owner income divided by monthly revenue.\"\u003ei\u003cspan role=\"tooltip\"\u003eOwner income divided by monthly revenue.\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cstrong data-owner-output=\"netProfitMargin\"\u003e24%\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-metric\"\u003e\n\u003cspan class=\"fml-owner-metric-label\"\u003eRevenue for Target Pay\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly revenue needed to support the target owner pay.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly revenue needed to support the target owner pay.\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cstrong data-owner-output=\"revenueNeeded\"\u003e$58,928\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-metric is-target-gap is-positive\"\u003e\n\u003cspan class=\"fml-owner-metric-label\"\u003eTarget Pay Gap\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Owner income minus target owner pay. Negative means the target pay is not covered.\"\u003ei\u003cspan role=\"tooltip\"\u003eOwner income minus target owner pay. Negative means the target pay is not covered.\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003cstrong data-owner-output=\"targetPayGap\"\u003e$10,815\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdl class=\"fml-owner-result-list\"\u003e\n\u003cdiv\u003e\n\u003cdt\u003eAnnual owner income\u003c\/dt\u003e\n\u003cdd data-owner-output=\"annualOwnerIncome\"\u003e$231,779\u003c\/dd\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdt\u003eProfit before reserves\u003c\/dt\u003e\n\u003cdd data-owner-output=\"profitBeforeReserves\"\u003e$26,826\u003c\/dd\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdt\u003eTax + reinvestment reserve\u003c\/dt\u003e\n\u003cdd data-owner-output=\"reserveAmount\"\u003e$7,511\u003c\/dd\u003e\n\u003c\/div\u003e\n\u003cdiv\u003e\n\u003cdt\u003eTarget pay gap\u003c\/dt\u003e\n\u003cdd data-owner-output=\"cashAfterTargetPay\"\u003e$10,815\u003c\/dd\u003e\n\u003c\/div\u003e\n\u003c\/dl\u003e\n\u003cdiv class=\"fml-owner-bridge\"\u003e\n\u003cdiv class=\"fml-owner-bar-row\" data-owner-bridge=\"revenue\"\u003e\n\u003cspan\u003eRevenue\u003c\/span\u003e\u003cdiv\u003e\u003ci style=\"--fml-owner-share: 100%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$80,083\u003c\/b\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-bar-row\" data-owner-bridge=\"grossProfit\"\u003e\n\u003cspan\u003eGross profit\u003c\/span\u003e\u003cdiv\u003e\u003ci style=\"--fml-owner-share: 71%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$56,859\u003c\/b\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-bar-row\" data-owner-bridge=\"operatingCosts\"\u003e\n\u003cspan\u003eOperating costs\u003c\/span\u003e\u003cdiv\u003e\u003ci style=\"--fml-owner-share: 38%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$30,033\u003c\/b\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-bar-row\" data-owner-bridge=\"reserveAmount\"\u003e\n\u003cspan\u003eReserves\u003c\/span\u003e\u003cdiv\u003e\u003ci style=\"--fml-owner-share: 9%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$7,511\u003c\/b\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-bar-row\" data-owner-bridge=\"ownerIncome\"\u003e\n\u003cspan\u003eOwner income\u003c\/span\u003e\u003cdiv\u003e\u003ci style=\"--fml-owner-share: 24%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$19,315\u003c\/b\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cbutton class=\"fml-owner-export\" type=\"button\" data-owner-export\u003eEXPORT XLSX\u003c\/button\u003e\u003c\/aside\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-note\"\u003e\n\u003cspan class=\"fml-owner-note-icon\" aria-hidden=\"true\"\u003e!\u003c\/span\u003e\u003cp\u003e\u003cstrong\u003ePlanning note:\u003c\/strong\u003e Research-based planning estimate only. It is not guaranteed salary, tax advice, or owner distribution advice.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003cbr\u003e\u003cdiv class=\"container_new_design_blog\"\u003e\n\n\u003cdiv class=\"text-section_blog text-2_new_design_blog\"\u003e\n\n\u003cdiv class=\"line_top_blog\"\u003e\u003cbr\u003e\u003c\/div\u003e\n\n\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eWant to see what owner pay looks like in the model?\u003c\/span\u003e\u003c\/h3\u003e\n\n\u003cp\u003eThe \u003ca href=\"\/products\/blower-door-testing-financial-model\"\u003eBlower Door Testing Service Financial Model Template\u003c\/a\u003e shows pricing, volume, service mix, revenue, direct costs, marketing, fixed overhead, payroll, capex, reserves, and owner income. Base case: \u003cstrong\u003e$277,000\u003c\/strong\u003e first-year revenue, \u003cstrong\u003e$85,000\u003c\/strong\u003e owner salary, \u003cstrong\u003e$65,000\u003c\/strong\u003e senior technician salary, \u003cstrong\u003e$35,400\u003c\/strong\u003e fixed overhead, and \u003cstrong\u003e$95,500\u003c\/strong\u003e launch capex. Open the model to test the assumptions.\u003c\/p\u003e\n\n\u003ch4\u003eOwner-income model highlights\u003c\/h4\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eOwner pay in plain view\u003c\/li\u003e\n\u003cli\u003eRevenue and cost drivers\u003c\/li\u003e\n\u003cli\u003eTest scenarios before launch\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv class=\"image-section_blog image-2_new_design_blog\"\u003e\n\n\u003cdiv class=\"preview-card\" data-preview-src=\"\/cdn\/shop\/files\/blower-door-testing-financial-model-dashboard-financialmodelslab_6dede209-c293-4e95-89d6-9f9e4a23f047.webp\"\u003e\n\u003cimg class=\"preview-img\" width=\"100%\" height=\"auto\" src=\"\/cdn\/shop\/files\/blower-door-testing-financial-model-dashboard-financialmodelslab_6dede209-c293-4e95-89d6-9f9e4a23f047.webp?width=500\" alt=\"Blower Door Testing Service Financial Model dashboard summarizes key KPIs, runway and cash position with a dynamic dashboard, helping spot cash-flow blind spots and present investor-ready metrics.\"\u003e\n\u003cdiv class=\"preview-overlay\"\u003e\n\u003cbutton class=\"preview-btn\" type=\"button\" style=\"align-items: center; vertical-align: middle; display: inline-flex; justify-content: center; gap: 6px; line-height: 1;\"\u003e\nPREVIEW \u003csvg fill=\"#fff\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" aria-hidden=\"true\" focusable=\"false\" role=\"presentation\" viewbox=\"0 0 448 512\" width=\"14\"\u003e\u003cpath d=\"M416 176V86.63L246.6 256L416 425.4V336c0-8.844 7.156-16 16-16s16 7.156 16 16v128c0 8.844-7.156 16-16 16h-128c-8.844 0-16-7.156-16-16s7.156-16 16-16h89.38L224 278.6L54.63 448H144C152.8 448 160 455.2 160 464S152.8 480 144 480h-128C7.156 480 0 472.8 0 464v-128C0 327.2 7.156 320 16 320S32 327.2 32 336v89.38L201.4 256L32 86.63V176C32 184.8 24.84 192 16 192S0 184.8 0 176v-128C0 39.16 7.156 32 16 32h128C152.8 32 160 39.16 160 48S152.8 64 144 64H54.63L224 233.4L393.4 64H304C295.2 64 288 56.84 288 48S295.2 32 304 32h128C440.8 32 448 39.16 448 48v128C448 184.8 440.8 192 432 192S416 184.8 416 176z\"\u003e\u003c\/path\u003e\u003c\/svg\u003e\n\u003c\/button\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003c\/div\u003e\n\u003c\/div\u003e\n\n\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eHow much to charge for a blower door test?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eFor a \u003cstrong\u003eBlower Door Testing Service\u003c\/strong\u003e, don’t use one flat price. Use job-based hourly pricing: \u003cstrong\u003e$125\/hour\u003c\/strong\u003e for a residential energy audit, \u003cstrong\u003e$150\/hour\u003c\/strong\u003e for new construction compliance, and \u003cstrong\u003e$110\/hour\u003c\/strong\u003e for multi-unit contracts, with a \u003cstrong\u003e$578\u003c\/strong\u003e Year 1 average from a \u003cstrong\u003e60% residential\u003c\/strong\u003e, \u003cstrong\u003e30% new construction\u003c\/strong\u003e, and \u003cstrong\u003e10% multi-unit\u003c\/strong\u003e mix. Price higher when the home is bigger, the report is more complex, travel is longer, retests are likely, close rate is lower, or services are bundled.\u003c\/p\u003e\n\u003cdiv class=\"container_2_clmn_row\"\u003e\n\u003cdiv class=\"card_smpl\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-intro-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eResidential pricing\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e$125\/hour\u003c\/strong\u003e for audits\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e4 hours\u003c\/strong\u003e equals \u003cstrong\u003e$500\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003eLarger homes need higher fees\u003c\/li\u003e\n\u003cli\u003eRetests add billable time\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"card_smpl blue_card\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-colons-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eContract pricing\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e$150\/hour\u003c\/strong\u003e for compliance work\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$110\/hour\u003c\/strong\u003e for multi-unit jobs\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e15 hours\u003c\/strong\u003e can reach \u003cstrong\u003e$1,650\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003eBundle reports to lift ticket size\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eCan a blower door testing business scale?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eYes—\u003cstrong\u003eBlower Door Testing Service\u003c\/strong\u003e can scale, but only if technician time stays booked. The plan starts with \u003cstrong\u003e1 owner-operator\u003c\/strong\u003e and \u003cstrong\u003e1 senior technician\u003c\/strong\u003e, then adds \u003cstrong\u003e1 junior technician\u003c\/strong\u003e and \u003cstrong\u003e0.5 admin\u003c\/strong\u003e in Year 2, \u003cstrong\u003e2 senior technicians\u003c\/strong\u003e by Year 3, and \u003cstrong\u003e3 senior plus 3 junior technicians\u003c\/strong\u003e by Year 5. Unit costs also improve, with fuel and maintenance down from \u003cstrong\u003e8%\u003c\/strong\u003e to \u003cstrong\u003e6%\u003c\/strong\u003e, calibration from \u003cstrong\u003e4%\u003c\/strong\u003e to \u003cstrong\u003e2%\u003c\/strong\u003e, digital marketing from \u003cstrong\u003e12%\u003c\/strong\u003e to \u003cstrong\u003e8%\u003c\/strong\u003e, and CAC from \u003cstrong\u003e$150\u003c\/strong\u003e to \u003cstrong\u003e$120\u003c\/strong\u003e.\u003c\/p\u003e\n\u003cdiv class=\"container_2_clmn_row\"\u003e\n\u003cdiv class=\"card_smpl\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-intro-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eWhy it scales\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eYear 1:\u003c\/strong\u003e 1 owner, 1 senior tech.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eYear 2:\u003c\/strong\u003e add 1 junior, 0.5 admin.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eYear 3:\u003c\/strong\u003e 2 senior techs.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eYear 5:\u003c\/strong\u003e 3 senior, 3 junior techs.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"card_smpl blue_card\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-colons-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eWhat can break it\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eWeak lead flow\u003c\/strong\u003e kills utilization.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePoor route density\u003c\/strong\u003e adds dead travel.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eRework\u003c\/strong\u003e wipes out margin gains.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eLow booking volume\u003c\/strong\u003e raises CAC pressure.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eHow many blower door tests per week to make a living?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eYou need about \u003cstrong\u003e9 paid blower door tests per week\u003c\/strong\u003e to make a living from a Blower Door Testing Service: \u003cstrong\u003e452 jobs\/year ÷ 52 = 8.7\u003c\/strong\u003e. For setup details, see \u003ca href=\"\/blogs\/how-to-open\/blower-door-testing\"\u003eHow Do I Launch A Blower Door Testing Service Business?\u003c\/a\u003e; at a \u003cstrong\u003e$578\u003c\/strong\u003e blended fee and \u003cstrong\u003e71%\u003c\/strong\u003e contribution margin, each job contributes about \u003cstrong\u003e$410\u003c\/strong\u003e before fixed overhead and payroll.\u003c\/p\u003e\n\u003cdiv class=\"container_2_clmn_row\"\u003e\n\u003cdiv class=\"card_smpl blue_card\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-colons-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eQuick Math\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e$578\u003c\/strong\u003e blended fee\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e71%\u003c\/strong\u003e contribution margin\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$410\u003c\/strong\u003e contribution per paid job\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e452\u003c\/strong\u003e jobs\/year break-even\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"card_smpl\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-intro-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eCapacity Check\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eCover \u003cstrong\u003e$35,400\u003c\/strong\u003e fixed overhead\u003c\/li\u003e\n\u003cli\u003eFund \u003cstrong\u003e$65,000\u003c\/strong\u003e technician payroll\u003c\/li\u003e\n\u003cli\u003eTarget \u003cstrong\u003e$85,000\u003c\/strong\u003e owner salary\u003c\/li\u003e\n\u003cli\u003ePlan drive, setup, reports, retests\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\n\n\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWant the six drivers that move owner income?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-main-income-drivers\" aria-label=\"Main income drivers for a blower door testing service.\"\u003e\u003carticle class=\"driver-option is-cards\"\u003e\u003cdiv class=\"main-driver-grid\"\u003e\n\u003carticle class=\"main-driver-card is-primary\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e1\u003c\/span\u003e\u003ch4\u003eBillable Volume\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e92\/wk\u003c\/strong\u003e\u003cp\u003eMore tests feed the $277K revenue base fastest, so this is the main lever on owner take-home.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"main-driver-card\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e2\u003c\/span\u003e\u003ch4\u003eTest Price\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$578\u003c\/strong\u003e\u003cp\u003eEach price lift drops into profit quickly because the service already runs on a strong 71% contribution margin.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"main-driver-card\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e3\u003c\/span\u003e\u003ch4\u003eRoute Density\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e71% CM\u003c\/strong\u003e\u003cp\u003eTighter routes cut drive time and fuel, which protects margin and lets the same team complete more work.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"main-driver-card\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e4\u003c\/span\u003e\u003ch4\u003eCompliance Demand\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e50%\u003c\/strong\u003e\u003cp\u003eA stronger mix of new construction compliance and referrals keeps demand steadier and supports higher-value jobs.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"main-driver-card\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e5\u003c\/span\u003e\u003ch4\u003eAdd-On Mix\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e4.2 hrs\u003c\/strong\u003e\u003cp\u003eSelling more billable hours per active customer lifts revenue without needing the same jump in new leads.\u003c\/p\u003e\u003c\/article\u003e\u003carticle class=\"main-driver-card\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e6\u003c\/span\u003e\u003ch4\u003eCost Discipline\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$150K\u003c\/strong\u003e\u003cp\u003eWith $2,950 monthly fixed overhead, $150K payroll, and $95,500 of capex later, staffing control decides how much cash stays in the business.\u003c\/p\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eBlower Door Testing Service Core Six Income Drivers\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\u003cbr\u003e\n\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eBillable Test Volume\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"left-row1\"\u003e\n\u003ch3\u003eBillable Test Volume\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eBillable test volume\u003c\/strong\u003e is the first income lever because paid completed tests create revenue before margin math. At the base case of \u003cstrong\u003e480 tests a year\u003c\/strong\u003e, or \u003cstrong\u003e92 a week\u003c\/strong\u003e, with \u003cstrong\u003e$578\u003c\/strong\u003e average revenue per test, every extra weekly test adds about \u003cstrong\u003e$30,000\u003c\/strong\u003e in annual revenue before costs.\u003c\/p\u003e\n\u003cp\u003eThe catch is capacity. Drive time, setup, test length, report writing, cancellations, access issues, and retests all cut realized volume. If the calendar fills with distant low-margin jobs, you can look busy and still take home less because each test uses more unpaid time and fuel. The real metric is completed, billed tests per week, not just booked appointments.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"right-row1\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eProtect Completed-Test Throughput\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eTrack completed tests, not booked slots.\u003c\/strong\u003e Measure booked, completed, canceled, and retest rates each week, plus average drive time and report hours per job. That shows whether \u003cstrong\u003e92 weekly tests\u003c\/strong\u003e is realistic at your current route mix. If completed volume falls, owner pay falls fast because fixed overhead and admin time stay in place.\u003c\/p\u003e\n\u003cp\u003eProtect margin by grouping jobs by zip, setting access rules up front, and charging travel or minimum fees on far jobs. A schedule with shorter drives and fewer re-tests keeps more of the \u003cstrong\u003e$578 per test\u003c\/strong\u003e in contribution profit, so added volume turns into cash for payroll, reserves, and owner draw instead of extra windshield time.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"step-circle step1\"\u003e1\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eAverage Fee Per Test\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"right-row2\"\u003e\n    \u003ch3\u003eAverage Fee Per Test\u003c\/h3\u003e\n    \u003cp\u003eRevenue per blower door test changes by scope: \u003cstrong\u003e$500\u003c\/strong\u003e residential, \u003cstrong\u003e$375\u003c\/strong\u003e new construction compliance, and \u003cstrong\u003e$1,650\u003c\/strong\u003e multi-unit. The modeled blended average is about \u003cstrong\u003e$578\u003c\/strong\u003e. After \u003cstrong\u003e29%\u003c\/strong\u003e direct and variable costs, each test contributes about \u003cstrong\u003e$410\u003c\/strong\u003e before fixed overhead and owner pay, so fee mix drives cash flow fast.\u003c\/p\u003e\n    \u003cp\u003eWhat this hides is job mix. Larger homes, code reports, multi-unit work, and retests can lift the ticket, but a higher price can also lower close rate. If the average fee slips, the same test count still leaves less cash for software, insurance, mileage, and the owner’s draw.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row2\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Fee Mix and Margin\u003c\/h3\u003e\n      \u003cp\u003eMeasure average fee by job type each month: residential, compliance, multi-unit, and retest. Compare quoted price to closed price, and watch whether the blended average stays near \u003cstrong\u003e$578\u003c\/strong\u003e. That check matters because \u003cstrong\u003e29%\u003c\/strong\u003e of revenue goes to direct and variable costs before fixed overhead gets paid.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eTrack close rate by scope\u003c\/li\u003e\n        \u003cli\u003eFlag discounts below target\u003c\/li\u003e\n        \u003cli\u003ePrice travel and reports\u003c\/li\u003e\n        \u003cli\u003eReview fee mix weekly\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eRaise fees first on larger homes and code reports, where the ticket can support more revenue per stop. If higher quotes start hurting wins, tighten lead quality instead of chasing volume. The goal is simple: protect margin so each booked test funds overhead and owner pay.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"step-circle step2\"\u003e2\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eRoute Density\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"left-row3\"\u003e\n\u003ch3\u003eRoute Density\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eRoute density\u003c\/strong\u003e is how many paid tests you can stack into one trip area. In this business, it changes take-home pay because every extra mile eats time and cash. With \u003cstrong\u003e480 tests a year\u003c\/strong\u003e at \u003cstrong\u003e$578\u003c\/strong\u003e average revenue, fuel and vehicle maintenance at \u003cstrong\u003e8%\u003c\/strong\u003e of revenue in Year 1 are about \u003cstrong\u003e$46 per test\u003c\/strong\u003e; by Year 5, \u003cstrong\u003e6%\u003c\/strong\u003e cuts that to \u003cstrong\u003e$35\u003c\/strong\u003e. Clustered jobs keep more of the \u003cstrong\u003e$410\u003c\/strong\u003e contribution per job.\u003c\/p\u003e\n\u003cp\u003eHere’s the catch: geography is an income variable, not just a scheduling issue. Metro routes can support more same-day jobs, but rural routes add unpaid windshield time, lower test count per day, and may need travel fees or tighter minimums. If a calendar fills with far-apart stops, revenue can look fine while owner pay shrinks from wasted driving and fatigue.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"right-row3\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eImprove Route Density\u003c\/h3\u003e\n\u003cp\u003eTrack \u003cstrong\u003edrive minutes per completed test\u003c\/strong\u003e, mileage per stop, and cancelled trips by ZIP code. The goal is simple: put the next job near the last one. Group tests by neighborhood, builder, or property manager, and price rural work with a travel fee or a higher minimum so the route cost shows up in the quote, not in the owner’s margin.\u003c\/p\u003e\n\u003cp\u003eRun the calendar by geography first, then by time. Same-day work makes sense in dense metro zones, but outside that footprint it can crush efficiency. If a route keeps pushing fuel and vehicle costs above the modeled \u003cstrong\u003e8%\u003c\/strong\u003e in Year 1, tighten service area, reduce appointment count, or raise the price on low-density jobs.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"step-circle step3\"\u003e3\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eCompliance And Referral Demand\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"right-row4\"\u003e\n\u003ch3\u003eCompliance and Referral Demand\u003c\/h3\u003e\n\u003cp\u003eWhen code-compliance jobs and builder referrals stay strong, the calendar fills faster and the owner earns more from the same truck, tools, and report process. In the supplied mix, new construction compliance rises from \u003cstrong\u003e30%\u003c\/strong\u003e in Year 1 to \u003cstrong\u003e50%\u003c\/strong\u003e by Year 5, so referral flow directly affects utilization, pricing power, and take-home profit.\u003c\/p\u003e\n\u003cp\u003eThe key inputs are referral volume, close rate, compliance share, and average fee per job. Builders, \u003cstrong\u003eHERS raters\u003c\/strong\u003e, insulation contractors, HVAC contractors, remodelers, and code-compliance workflows can support repeat work and justify \u003cstrong\u003especialized reporting fees\u003c\/strong\u003e. If referrals slow, idle time rises and owner pay gets squeezed even when demand looks steady on paper.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row4\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eTrack referral quality, not just lead count\u003c\/h3\u003e\n\u003cp\u003eMeasure how many jobs come from each source, how many convert, and how often they are compliance tests versus general audits. A referral channel that sends \u003cstrong\u003ehigher-compliance work\u003c\/strong\u003e can lift average ticket and reduce empty days, which matters more than raw inquiries. One clean metric: compliance share by month. If it climbs toward \u003cstrong\u003e50%\u003c\/strong\u003e, pricing power usually follows.\u003c\/p\u003e\n\u003cp\u003eUse a simple dashboard with source, close rate, fee, and idle days. Then test small price increases on reports tied to code-compliance work, since those jobs need documentation and are less price-shopped. If builder referrals are weak, the owner has to spend more on marketing to keep the schedule full, and that usually cuts margin before it shows up in revenue.\u003c\/p\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eTrack jobs by referral source\u003c\/li\u003e\n\u003cli\u003eWatch compliance share monthly\u003c\/li\u003e\n\u003cli\u003ePrice report work separately\u003c\/li\u003e\n\u003cli\u003eCount idle days per week\u003c\/li\u003e\n\u003cli\u003eCompare close rate by source\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"step-circle step4\"\u003e4\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eAdd-On Service Mix\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row5\"\u003e\n    \u003ch3\u003eAdd-On Service Mix\u003c\/h3\u003e\n    \u003cp\u003eBase blower door tests drive the business, but \u003cstrong\u003eadd-ons\u003c\/strong\u003e can lift blended ticket value if they stay optional. A \u003cstrong\u003e$1,650\u003c\/strong\u003e multi-unit job already shows how scope changes revenue fast. The risk is simple: if the add-on takes more time than it pays for, owner take-home falls even when top-line revenue rises.\u003c\/p\u003e\n    \u003cp\u003eTrack \u003cstrong\u003eattach rate\u003c\/strong\u003e (jobs sold with an add-on), add-on price, extra labor time, and travel. \u003cstrong\u003eThermal imaging\u003c\/strong\u003e needs \u003cstrong\u003e$6,000\u003c\/strong\u003e in launch capex, so it should be forecast as scenario revenue, not assumed income. Add-ons like duct leakage testing, infrared scans, air-sealing verification, diagnostic reports, and audit packages only help if they raise margin, not just workload.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row5\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Add-On Margin, Not Just Sales\u003c\/h3\u003e\n      \u003cp\u003ePrice each add-on against the extra minutes on site, reporting time, and vehicle cost. If a $500 residential test adds a $150 diagnostic report but only takes 20 more minutes, that’s good. If it adds an hour of unpaid w\nork, it hurts cash flow. Treat every add-on as its own mini job with its own margin.\u003c\/p\u003e\n      \u003cp\u003eMeasure these inputs every month:\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eBase test count\u003c\/li\u003e\n        \u003cli\u003eAdd-on attach rate\u003c\/li\u003e\n        \u003cli\u003eAverage add-on fee\u003c\/li\u003e\n        \u003cli\u003eExtra labor minutes\u003c\/li\u003e\n        \u003cli\u003eIncremental gross margin\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eKeep the model conservative. If demand for add-ons is thin, they should stay upside, not the budget line that pays your salary.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"step-circle step5\"\u003e5\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eStaffing And Overhead Discipline\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"right-row6\"\u003e\n\u003ch3\u003eStaffing And Overhead Discipline\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eYear 1 fixed overhead is $2,950 per month\u003c\/strong\u003e and \u003cstrong\u003epayroll is $150,000\u003c\/strong\u003e, so the business has about \u003cstrong\u003e$185,400\u003c\/strong\u003e a year to cover before owner pay. With \u003cstrong\u003eabout $410\u003c\/strong\u003e of contribution per job after \u003cstrong\u003e29% direct and variable costs\u003c\/strong\u003e, break-even is roughly \u003cstrong\u003e452 jobs a year\u003c\/strong\u003e, or \u003cstrong\u003e38 jobs a month\u003c\/strong\u003e, before the owner takes a draw.\u003c\/p\u003e\n\u003cp\u003eThis driver includes staffing levels, technician utilization, office overhead, and reserves. Hiring can raise capacity, but if booked hours stay thin, payroll becomes margin drag fast. One clean rule: more headcount only helps if it lifts completed tests enough to cover wages, overhead, and slow periods.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row6\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eTrack Payroll Utilization\u003c\/h3\u003e\n\u003cp\u003eMeasure \u003cstrong\u003ecompleted jobs per technician\u003c\/strong\u003e, \u003cstrong\u003econtribution per job\u003c\/strong\u003e, and \u003cstrong\u003efully loaded payroll as a share of contribution\u003c\/strong\u003e. Here’s the quick math: if the team does not add enough volume to spread the \u003cstrong\u003e$185,400\u003c\/strong\u003e fixed load, owner pay gets squeezed even when revenue looks busy. Keep staffing tied to booked work, not hope.\u003c\/p\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eTrack jobs, not just hours.\u003c\/li\u003e\n\u003cli\u003eWatch idle time and travel time.\u003c\/li\u003e\n\u003cli\u003eKeep reserve cash for replacements.\u003c\/li\u003e\n\u003cli\u003eCover calibration, vehicles, software, insurance.\u003c\/li\u003e\n\u003cli\u003eHire only with proven demand.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eBuild reserves before adding payroll. That cash needs to cover \u003cstrong\u003eequipment replacement\u003c\/strong\u003e, \u003cstrong\u003ecalibration\u003c\/strong\u003e, \u003cstrong\u003evehicles\u003c\/strong\u003e, \u003cstrong\u003esoftware\u003c\/strong\u003e, \u003cstrong\u003einsurance\u003c\/strong\u003e, and slow months. If utilization drops, cut fixed spend early; if it stays strong, staffing can raise revenue capacity without hurting owner take-home.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n\u003cdiv class=\"step-circle step6\"\u003e6\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eCompare lean, base, and high-utilization owner income scenarios\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-scenario-table\" aria-label=\"Blower Door Testing Service Owner Income Scenarios\" data-site-name=\"Financial Models Lab\" data-site-url=\"https:\/\/financialmodelslab.com\" data-source-title=\"Blower Door Testing Service Owner Income Scenarios\" data-note-label=\"Planning note\" data-note-text=\"These owner-income ranges are researched planning assumptions, not guaranteed earnings, salary promises, tax advice, or distributions.\"\u003e\u003cdiv class=\"fml-scenario-table-card\"\u003e\n\u003cheader class=\"fml-scenario-table-header\"\u003e\u003cdiv\u003e\n\u003cp class=\"fml-scenario-table-eyebrow\"\u003eOwner income scenarios\u003c\/p\u003e\n\u003cp class=\"fml-scenario-table-description\"\u003eOwner income shifts with test volume, route density, and labor mix. More technician hours and denser routes lift take-home; owner-heavy coverage and weak volume keep it tight.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-scenario-table-actions\"\u003e\u003cbutton class=\"fml-scenario-table-export\" type=\"button\" data-scenario-export\u003eEXPORT XLSX\u003c\/button\u003e\u003c\/div\u003e\u003c\/header\u003e\u003cdiv class=\"fml-scenario-table-wrap\"\u003e\u003ctable class=\"fml-scenario-table-grid\"\u003e\n\u003ccaption\u003eCompare the low, base, and high owner-income paths for this testing service.\u003c\/caption\u003e\n\u003cthead\u003e\u003ctr\u003e\n\u003cth class=\"fml-scenario-table-stub\" scope=\"col\" data-export-value=\"Scenario\"\u003eScenario\u003c\/th\u003e\n\u003cth class=\"fml-scenario-table-column\" scope=\"col\" data-export-value=\"Low Case\"\u003e\n\u003cspan class=\"fml-scenario-column-title\"\u003eLow Case\u003c\/span\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eCash risk\u003c\/span\u003e\n\u003c\/th\u003e\n\u003cth class=\"fml-scenario-table-column\" scope=\"col\" data-export-value=\"Base Case\"\u003e\n\u003cspan class=\"fml-scenario-column-title\"\u003eBase Case\u003c\/span\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eModeled base\u003c\/span\u003e\n\u003c\/th\u003e\n\u003cth class=\"fml-scenario-table-column\" scope=\"col\" data-export-value=\"High Case\"\u003e\n\u003cspan class=\"fml-scenario-column-title\"\u003eHigh Case\u003c\/span\u003e\u003cspan class=\"fml-scenario-badge is-warning\"\u003eRoute density\u003c\/span\u003e\n\u003c\/th\u003e\n\u003c\/tr\u003e\u003c\/thead\u003e\n\u003ctbody\u003e\n\u003ctr data-scenario-row\u003e\n\u003cth class=\"fml-scenario-row-heading\" scope=\"row\" data-export-value=\"Launch model\"\u003e\u003cspan class=\"fml-scenario-row-heading-inner\"\u003e\u003cspan class=\"fml-scenario-row-icon is-launch\" aria-hidden=\"true\"\u003e\u003cimg class=\"fml-scenario-row-icon-img\" src=\"\/cdn\/shop\/files\/scenario-launch-model.svg\" alt=\"Launch model icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003e\u003cspan class=\"fml-scenario-row-title\"\u003eLaunch model\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/th\u003e\n\u003ctd data-export-value=\"This is the lower-earnings path, with lighter weekly test volume and the owner covering most field work.\"\u003eThis is the lower-earnings path, with lighter weekly test volume and the owner covering most field work.\u003c\/td\u003e\n\u003ctd data-export-value=\"This is the modeled middle path built from the supplied operating assumptions.\"\u003eThis is the modeled middle path built from the supplied operating assumptions.\u003c\/td\u003e\n\u003ctd data-export-value=\"This is the upside path, with more weekly tests, denser routing, and higher technician output.\"\u003eThis is the upside path, with more weekly tests, denser routing, and higher technician output.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-scenario-row\u003e\n\u003cth class=\"fml-scenario-row-heading\" scope=\"row\" data-export-value=\"Typical setup\"\u003e\u003cspan class=\"fml-scenario-row-heading-inner\"\u003e\u003cspan class=\"fml-scenario-row-icon is-setup\" aria-hidden=\"true\"\u003e\u003cimg class=\"fml-scenario-row-icon-img\" src=\"\/cdn\/shop\/files\/scenario-typical-setup.svg\" alt=\"Typical setup icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003e\u003cspan class=\"fml-scenario-row-title\"\u003eTypical setup\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/th\u003e\n\u003ctd data-export-value=\"The owner does most jobs, travel is less efficient, fixed overhead stays lean, and take-home stays tight.\"\u003eThe owner does most jobs, travel is less efficient, fixed overhead stays lean, and take-home stays tight.\u003c\/td\u003e\n\u003ctd data-export-value=\"The model assumes 92 tests a week, a $578 average fee, 29% direct and variable costs, $35,400 fixed overhead, and $150,000 payroll, which puts owner take-home near $96,000 before tax.\"\u003eThe model assumes 92 tests a week, a $578 average fee, 29% direct and variable costs, $35,400 fixed overhead, and $150,000 payroll, which puts owner take-home near $96,000 before tax.\u003c\/td\u003e\n\u003ctd data-export-value=\"The business runs more tests with denser routes, more add-on work, and better technician use, so revenue rises faster than fixed overhead.\"\u003eThe business runs more tests with denser routes, more add-on work, and better technician use, so revenue rises faster than fixed overhead.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-scenario-row\u003e\n\u003cth class=\"fml-scenario-row-heading\" scope=\"row\" data-export-value=\"Cost drivers\"\u003e\u003cspan class=\"fml-scenario-row-heading-inner\"\u003e\u003cspan class=\"fml-scenario-row-icon is-drivers\" aria-hidden=\"true\"\u003e\u003cimg class=\"fml-scenario-row-icon-img\" src=\"\/cdn\/shop\/files\/scenario-cost-drivers.svg\" alt=\"Cost drivers icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003e\u003cspan class=\"fml-scenario-row-title\"\u003eCost drivers\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/th\u003e\n\u003ctd data-export-value=\"Fewer tests; long drive times; owner-heavy labor; weaker add-ons\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eFewer tests\u003c\/li\u003e\n\u003cli\u003elong drive times\u003c\/li\u003e\n\u003cli\u003eowner-heavy labor\u003c\/li\u003e\n\u003cli\u003eweaker add-ons\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"92 tests per week; $578 average fee; 29% direct and variable costs; $35,400 fixed overhead; $150,000 payroll\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003e92 tests per week\u003c\/li\u003e\n\u003cli\u003e$578 average fee\u003c\/li\u003e\n\u003cli\u003e29% direct and variable costs\u003c\/li\u003e\n\u003cli\u003e$35,400 fixed overhead\u003c\/li\u003e\n\u003cli\u003e$150,000 payroll\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"More tests; denser routes; stronger add-ons; higher technician use; lower CAC\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eMore tests\u003c\/li\u003e\n\u003cli\u003edenser routes\u003c\/li\u003e\n\u003cli\u003estronger add-ons\u003c\/li\u003e\n\u003cli\u003ehigher technician use\u003c\/li\u003e\n\u003cli\u003elower CAC\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-scenario-row\u003e\n\u003cth class=\"fml-scenario-row-heading\" scope=\"row\" data-export-value=\"Owner income range\"\u003e\u003cspan class=\"fml-scenario-row-heading-inner\"\u003e\u003cspan class=\"fml-scenario-row-icon is-range\" aria-hidden=\"true\"\u003e\u003cimg class=\"fml-scenario-row-icon-img\" src=\"\/cdn\/shop\/files\/scenario-planning-range.svg\" alt=\"Owner income range icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003e\u003cspan class=\"fml-scenario-row-title\"\u003eOwner income range\u003c\/span\u003e\u003cspan class=\"fml-scenario-row-subtitle\"\u003eBefore owner reserves\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/th\u003e\n\u003ctd data-export-value=\"$0 - $45,000\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$0 - $45,000\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eTight take-home\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$84,000 - $108,000\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$84,000 - $108,000\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eBalanced model\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$125,000 - $175,000\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$125,000 - $175,000\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-warning\"\u003eUpside density\u003c\/span\u003e\n\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003ctr data-scenario-row\u003e\n\u003cth class=\"fml-scenario-row-heading\" scope=\"row\" data-export-value=\"Best fit\"\u003e\u003cspan class=\"fml-scenario-row-heading-inner\"\u003e\u003cspan class=\"fml-scenario-row-icon is-fit\" aria-hidden=\"true\"\u003e\u003cimg class=\"fml-scenario-row-icon-img\" src=\"\/cdn\/shop\/files\/scenario-best-fit.svg\" alt=\"Best fit icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003e\u003cspan class=\"fml-scenario-row-title\"\u003eBest fit\u003c\/span\u003e\u003c\/span\u003e\u003c\/span\u003e\u003c\/th\u003e\n\u003ctd data-export-value=\"Use this to stress test slow starts, thin routing, and weak demand.\"\u003eUse this to stress test slow starts, thin routing, and weak demand.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this as the core plan for normal demand and steady utilization.\"\u003eUse this as the core plan for normal demand and steady utilization.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this to test what happens when volume scales cleanly and staffing stays efficient.\"\u003eUse this to test what happens when volume scales cleanly and staffing stays efficient.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\u003c\/div\u003e\n\u003cdiv class=\"fml-scenario-table-note\"\u003e\n\u003cspan class=\"fml-scenario-table-note-icon\" aria-hidden=\"true\"\u003e!\u003c\/span\u003e\u003cp\u003e\u003cstrong\u003ePlanning note:\u003c\/strong\u003e These owner-income ranges are researched planning assumptions, not guaranteed earnings, salary promises, tax advice, or distributions.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003c\/section\u003e","brand":"FinancialModelsLab","offers":[{"title":"Default Title","offer_id":49303628873971,"sku":"blower-door-testing-owner-makes","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/blower-door-testing-owner-makes.webp?v=1782676914","url":"https:\/\/financialmodelslab.com\/products\/blower-door-testing-owner-makes","provider":"Financial Models Lab","version":"1.0","type":"link"}