{"product_id":"whole-house-fan-owner-makes","title":"How Much Whole House Fan Installation Owners Make: $118K Year 1","description":"\u003cbr\u003e\u003cdiv class=\"card_smpl\"\u003e\n\u003cp\u003eA whole house fan installation business owner can model about \u003cstrong\u003e$118K in first-year pre-tax owner economics\u003c\/strong\u003e if they take the modeled $85K general manager role and the business produces $33K in EBITDA In a mature year, the same owner-operator view reaches about \u003cstrong\u003e$709K\u003c\/strong\u003e, based on $85K manager pay plus $624K EBITDA These are researched planning assumptions, not a salary guarantee The model uses $585K first-year revenue, $45K marketing spend, 22% equipment and consumables cost, and breakeven in Month 7\u003c\/p\u003e\n\n\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003csection class=\"fml-owner-metric-cards\" aria-label=\"Whole house fan installation\"\u003e\u003cdiv class=\"metric-grid\"\u003e\n\u003carticle class=\"metric-card is-green\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Pre-tax owner take-home if the owner also runs the general manager role; Year 1 is $118K and Year 5 is $709K in the model.\"\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=\"Pre-tax owner take-home if the owner also runs the general manager role; Year 1 is $118K and Year 5 is $709K in the model.\"\u003e$118K to $709K\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"EBITDA margin equals EBITDA divided by revenue; it runs from 6% in Year 1 to 25% in Year 5, before taxes and owner pay.\"\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=\"EBITDA margin equals EBITDA divided by revenue; it runs from 6% in Year 1 to 25% in Year 5, before taxes and owner pay.\"\u003e6% to 25%\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"This is model revenue needed to support the pay range shown here: $585K in Year 1 and $2.49M in Year 5, before taxes.\"\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=\"This is model revenue needed to support the pay range shown here: $585K in Year 1 and $2.49M in Year 5, before taxes.\"\u003e$585K to $2.49M\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Hard because breakeven lands in Month 7, startup cash dips to $790K in Month 2, and staffing plus installs raise execution risk.\"\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=\"Hard because breakeven lands in Month 7, startup cash dips to $790K in Month 2, and staffing plus installs raise execution risk.\"\u003eHard\u003c\/strong\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWant to calculate your own whole house fan business profit?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-owner-calculator\" aria-label=\"Sample Business Owner Income Calculator\" data-locale=\"en-US\" data-currency=\"USD\" data-default-scenario=\"base\" data-export-filename=\"Sample Business Owner Income Calculator.xlsx\" data-source-site-name=\"Financial Models Lab\" data-source-site-url=\"https:\/\/financialmodelslab.com\" data-source-page-title=\"Sample Business Owner Income Calculator\" data-note-title=\"Planning note:\" data-note-text=\"Research-based planning estimate only; it is not guaranteed salary, tax advice, or owner distribution advice. The model's breakeven is Month 7.\"\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 target-pay gap from revenue, margin, costs, reserves, and target pay.\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=\"Monthly sales before expenses. Use the average operating month, not a one-time peak month.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly sales before expenses. Use the average operating month, not a one-time peak month.\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=\"Monthly sales before expenses. Use the average operating month, not a one-time peak month.\" data-low=\"42000\" data-base=\"48750\" data-high=\"97833\" name=\"monthlyRevenue\" type=\"text\" inputmode=\"numeric\" value=\"48,750\"\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 equipment and consumable costs.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of revenue left after direct equipment and consumable costs.\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 equipment and consumable costs.\" name=\"grossMargin\" type=\"range\" min=\"0\" max=\"100\" step=\"1\" data-low=\"75\" data-base=\"78\" data-high=\"80\" value=\"78\"\u003e\u003coutput\u003e78%\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 wages, payroll burden, and subcontractor cost before owner pay.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly wages, payroll burden, and subcontractor cost before owner pay.\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 wages, payroll burden, and subcontractor cost before owner pay.\" data-low=\"19500\" data-base=\"18375\" data-high=\"31500\" name=\"laborCost\" type=\"text\" inputmode=\"numeric\" value=\"18,375\"\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, licensing, and equipment lease payments.\"\u003ei\u003cspan role=\"tooltip\"\u003eRent, insurance, software, utilities, licensing, and equipment lease payments.\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, licensing, and equipment lease payments.\" data-low=\"6200\" data-base=\"6200\" data-high=\"6200\" name=\"fixedOverhead\" type=\"text\" inputmode=\"numeric\" value=\"6,200\"\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 marketing and lead spending needed to keep demand flowing.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly marketing and lead spending needed to keep demand flowing.\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 marketing and lead spending needed to keep demand flowing.\" data-low=\"3000\" data-base=\"3750\" data-high=\"5000\" name=\"marketing\" type=\"text\" inputmode=\"numeric\" value=\"3,750\"\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 or financing payments.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly loan or financing payments.\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 or financing payments.\" 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 of profit set aside for taxes before owner take-home.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of profit set aside 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 of profit set aside for taxes before owner take-home.\" name=\"taxReserve\" type=\"range\" min=\"0\" max=\"45\" step=\"1\" data-low=\"18\" 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 of profit held back for repairs, growth, and cash buffer.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of profit held back for repairs, growth, and cash buffer.\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 of profit held back for repairs, growth, and cash buffer.\" name=\"reinvestmentReserve\" type=\"range\" min=\"0\" max=\"35\" step=\"1\" data-low=\"8\" data-base=\"10\" data-high=\"12\" value=\"10\"\u003e\u003coutput\u003e10%\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 calculate the pay gap.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly owner income goal used to calculate the 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 calculate the pay gap.\" data-low=\"6000\" data-base=\"7083\" data-high=\"10000\" name=\"targetOwnerPay\" type=\"text\" inputmode=\"numeric\" value=\"7,083\"\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$6,790\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\"\u003e14%\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$49,287\u003c\/strong\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-metric is-target-gap is-negative\"\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$-293\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$81,480\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$9,700\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$2,910\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$-293\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$48,750\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: 78%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$38,025\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: 58%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$28,325\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: 6%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$2,910\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: 14%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$6,790\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. The model's breakeven is Month 7.\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 test the full owner-income model?\u003c\/span\u003e\u003c\/h3\u003e\n\n\u003cp\u003eYes—the \u003ca href=\"\/products\/whole-house-fan-financial-model\"\u003eWhole House Fan Installation Financial Model Template\u003c\/a\u003e shows revenue, margin, costs, reserves, and owner take-home assumptions; open it to test scenarios.\u003c\/p\u003e\n\n\u003ch4\u003eOwner-income model highlights\u003c\/h4\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eOwner take-home scenarios\u003c\/li\u003e\n\u003cli\u003eRevenue and EBITDA charts\u003c\/li\u003e\n\u003cli\u003eCAC, marketing, staffing tables\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\/whole-house-fan-financial-model-dashboard-financialmodelslab_b259fd41-d3df-4822-8adc-225bc2fc0f9d.webp\"\u003e\n\u003cimg class=\"preview-img\" width=\"100%\" height=\"auto\" src=\"\/cdn\/shop\/files\/whole-house-fan-financial-model-dashboard-financialmodelslab_b259fd41-d3df-4822-8adc-225bc2fc0f9d.webp?width=500\" alt=\"Whole House Fan Installation Financial Model dashboard summarizing key KPIs, runway\/cash and performance with a dynamic dashboard, investor-ready visuals to spot cash-flow blind spots.\"\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 revenue can a whole house fan installation business make?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eWhole House Fan Installation can scale from \u003cstrong\u003e$585K\u003c\/strong\u003e in year 1 to \u003cstrong\u003e$1.174M\u003c\/strong\u003e in year 2, \u003cstrong\u003e$1.537M\u003c\/strong\u003e in year 3, \u003cstrong\u003e$2.036M\u003c\/strong\u003e in year 4, and \u003cstrong\u003e$2.492M\u003c\/strong\u003e at maturity, but that is business revenue, not owner income. Fan installs make up \u003cstrong\u003e95%\u003c\/strong\u003e of customer allocation in year 1 and \u003cstrong\u003e85%\u003c\/strong\u003e in the mature year as maintenance and upgrades grow. Seasonal cooling demand can pull sales into warmer months, so cash has to cover slower periods and the schedule has to stay full.\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\u003eRevenue mix\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e95%\u003c\/strong\u003e install mix in year 1\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e85%\u003c\/strong\u003e install mix at maturity\u003c\/li\u003e\n\u003cli\u003eMaintenance grows after installs\u003c\/li\u003e\n\u003cli\u003eUpgrades add repeat sales\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\u003eCapacity drivers\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eCrews set install volume\u003c\/li\u003e\n\u003cli\u003eInstall hours cap output\u003c\/li\u003e\n\u003cli\u003eLead flow fills the pipeline\u003c\/li\u003e\n\u003cli\u003eBooked schedules protect cash\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 whole house fan installs per month to make a living?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eFor \u003cstrong\u003eWhole House Fan Installation\u003c\/strong\u003e, plan on about \u003cstrong\u003e41 installs per month\u003c\/strong\u003e to make a living before reserves and extra costs; see \u003ca href=\"\/blogs\/profitability\/whole-house-fan\"\u003eHow Increase Whole House Fan Installation Profitability?\u003c\/a\u003e for the profit levers. Here’s the quick math: \u003cstrong\u003e$1,000 ticket × 70% contribution = $700\/install\u003c\/strong\u003e, and \u003cstrong\u003e$28,492\u003c\/strong\u003e in monthly overhead, marketing, and payroll needs roughly \u003cstrong\u003e41 jobs\u003c\/strong\u003e.\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\u003eMonthly target\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e$1,000\u003c\/strong\u003e average install ticket\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e22%\u003c\/strong\u003e cost of goods sold\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e8%\u003c\/strong\u003e variable costs\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$700\u003c\/strong\u003e contribution per install\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\u003ePay math\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e$6,200\u003c\/strong\u003e fixed overhead\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$3,750\u003c\/strong\u003e marketing spend\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$18,542\u003c\/strong\u003e payroll average\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eMonth 7\u003c\/strong\u003e model breakeven\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eIs whole house fan installation a good business or add-on?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eWhole House Fan Installation is a good business, but it’s often a better \u003cstrong\u003eadd-on\u003c\/strong\u003e to an existing HVAC shop. An \u003cstrong\u003eowner-operator\u003c\/strong\u003e can keep margin and protect \u003cstrong\u003eEBITDA\u003c\/strong\u003e by handling sales, scheduling, and general management in-house instead of paying about \u003cstrong\u003e$85K\u003c\/strong\u003e for that manager role. If you already have crews, trucks, licensing, and homeowner relationships, the add-on model can cut \u003cstrong\u003ecustomer acquisition cost\u003c\/strong\u003e and let you price electrical subcontracting into each job.\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\u003eBest as a standalone\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eOwner handles sales and scheduling.\u003c\/li\u003e\n\u003cli\u003eKeep general management in-house.\u003c\/li\u003e\n\u003cli\u003eProtect margin with lean overhead.\u003c\/li\u003e\n\u003cli\u003eDo not scale faster than leads.\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\u003eBest as an add-on\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eUse existing crews and trucks.\u003c\/li\u003e\n\u003cli\u003eLower \u003cstrong\u003eCAC\u003c\/strong\u003e with existing relationships.\u003c\/li\u003e\n\u003cli\u003ePrice electrical subcontracting into jobs.\u003c\/li\u003e\n\u003cli\u003eMature payroll can reach \u003cstrong\u003e$785K\u003c\/strong\u003e as revenue grows to \u003cstrong\u003e$2,492M\u003c\/strong\u003e.\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 to see what most changes owner take-home?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-main-income-drivers\" aria-label=\"Main income driver cards for whole house fan installation.\"\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\u003eInstall Volume\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$585K-$2.5M\u003c\/strong\u003e\u003cp\u003eMore completed installs scale revenue fast and help the business get past Month 7 break-even.\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\u003eInstall Margin\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e70%\u003c\/strong\u003e\u003cp\u003eFirst-year COGS at 22% plus 8% variable costs leaves about 70% before fixed overhead.\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\u003eAverage Ticket\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$1K-$1.05K\u003c\/strong\u003e\u003cp\u003eAt about $1,000 per install in Year 1, a small price lift flows straight into take-home profit.\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\u003eLead Gen\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$45K\/$450\u003c\/strong\u003e\u003cp\u003e$45K of first-year marketing at a $450 CAC decides how many qualified jobs land on the calendar.\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\u003eCrew Productivity\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e8-7 hrs\u003c\/strong\u003e\u003cp\u003eInstall time drops from 8.0 hours to 7.0 hours by Year 5, so each crew can finish more jobs.\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\u003eOverhead Reserve\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$6.2K\/mo\u003c\/strong\u003e\u003cp\u003e$6.2K in fixed overhead hits every month, and seasonal slowdowns can turn paper profit into cash strain.\u003c\/p\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWhole House Fan Installation Core Six Income Drivers\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\u003cbr\u003e\n\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eCompleted Installation 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\u003eCompleted Installation Volume\u003c\/h3\u003e\n    \u003cp\u003eCompleted installs are what turn booked work into owner pay. At \u003cstrong\u003e$1,000 per install\u003c\/strong\u003e, each completion adds about \u003cstrong\u003e$700\u003c\/strong\u003e of contribution before other costs, so the first-year \u003cstrong\u003e$585K revenue\u003c\/strong\u003e plan only works if enough jobs close to cover \u003cstrong\u003e$45K marketing\u003c\/strong\u003e, \u003cstrong\u003e$2,225K payroll\u003c\/strong\u003e, and \u003cstrong\u003e$744K fixed overhead\u003c\/strong\u003e.\u003c\/p\u003e\n    \u003cp\u003e\u003cstrong\u003eBooked work does not pay overhead until it gets finished.\u003c\/strong\u003e If you overbook attic jobs without crew capacity, callbacks and missed appointments rise, cash slows, and \u003cstrong\u003eEBITDA\u003c\/strong\u003e drops because volume is doing less real work than the schedule says.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row1\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack jobs from booked to complete\u003c\/h3\u003e\n      \u003cp\u003eMeasure \u003cstrong\u003ebooked jobs\u003c\/strong\u003e, \u003cstrong\u003ecompleted installs\u003c\/strong\u003e, crew capacity, and callback rate each week. Use those inputs to forecast cash and decide how many attic jobs the team can finish without slipping on quality. \u003cstrong\u003eIf the crew can't finish, the top-line number is fake.\u003c\/strong\u003e\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003e\u003cstrong\u003eCount completed installs weekly\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003eTrack missed appointments\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003eWatch callback rates\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003eCap jobs to crew capacity\u003c\/strong\u003e\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 step1\"\u003e1\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eAverage Ticket Per Install\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 Ticket Per Install\u003c\/h3\u003e\n\u003cp\u003eIf the average install ticket stays near \u003cstrong\u003e$1,000\u003c\/strong\u003e in year one, the business only has so much gross profit per job to cover payroll and overhead. At \u003cstrong\u003e80 billable hours\u003c\/strong\u003e and \u003cstrong\u003e$125\/hour\u003c\/strong\u003e, that starting price is thin on complex attic work, but the mature assumption of \u003cstrong\u003e70 hours\u003c\/strong\u003e at \u003cstrong\u003e$150\/hour\u003c\/strong\u003e lifts the ticket to about \u003cstrong\u003e$1,050\u003c\/strong\u003e and helps take-home income.\u003c\/p\u003e\n\u003cp\u003eThis driver is shaped by fan size, controls, attic venting, electrical work, and local labor rates. The risk is simple: underprice a hard attic job and margin drops fast. With direct costs held steady, every \u003cstrong\u003e$100\u003c\/strong\u003e of ticket lift adds about \u003cstrong\u003e$78\u003c\/strong\u003e of gross profit at \u003cstrong\u003e22%\u003c\/strong\u003e COGS, or about \u003cstrong\u003e$81\u003c\/strong\u003e at \u003cstrong\u003e19%\u003c\/strong\u003e COGS.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row2\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003ePrice the scope, not just the fan\u003c\/h3\u003e\n\u003cp\u003eTrack each quote by the parts that change price: fan size, controls, attic venting, electrical work, and labor hours. If a job needs extra attic work, price it as a separate line item so the crew is not eating the extra time.\u003c\/p\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eTrack\u003c\/strong\u003e ticket by job type.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eFlag\u003c\/strong\u003e complex attic installs.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003ePrice\u003c\/strong\u003e add-ons before work starts.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCompare\u003c\/strong\u003e hours sold vs. hours used.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eHere’s the quick math: moving from \u003cstrong\u003e$1,000\u003c\/strong\u003e to \u003cstrong\u003e$1,100\u003c\/strong\u003e adds about \u003cstrong\u003e$78–$81\u003c\/strong\u003e of gross profit per install if direct costs stay controlled. That extra margin is what gives the owner room to pay themselves after payroll, vehicle costs, and overhead.\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;\"\u003eGross Margin Per Whole House Fan Install\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"left-row3\"\u003e\n\u003ch3\u003eGross Margin Per Install\u003c\/h3\u003e\n\u003cp\u003eGross margin here is the gap between the install price and direct job costs: equipment, fan inventory, consumables, and install labor. With first-year \u003cstrong\u003eCOGS at 22%\u003c\/strong\u003e, a \u003cstrong\u003e$1,000\u003c\/strong\u003e install leaves about \u003cstrong\u003e$780\u003c\/strong\u003e before vehicle, referral, payroll, and overhead. That money is what helps pay the owner.\u003c\/p\u003e\n\u003cp\u003eIn the mature year, \u003cstrong\u003eCOGS falls to 19%\u003c\/strong\u003e, so a \u003cstrong\u003e$1,050\u003c\/strong\u003e ticket keeps about \u003cstrong\u003e$851\u003c\/strong\u003e gross profit. The swing is real: extra materials, attic surprises, and warranty work can eat that margin fast. If direct cost control slips, owner pay drops even when sales stay flat.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"right-row3\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eTrack Job Cost by Install\u003c\/h3\u003e\n\u003cp\u003eMeasure each job with the same inputs every time: sell price, equipment cost, consumables, direct labor hours, and any add-on materials. Here’s the quick math: \u003cstrong\u003eGross profit = ticket minus direct COGS\u003c\/strong\u003e. On a \u003cstrong\u003e$1,000\u003c\/strong\u003e job, every \u003cstrong\u003e1 point\u003c\/strong\u003e of cost creep is \u003cstrong\u003e$10\u003c\/strong\u003e less gross profit.\u003c\/p\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eCode attic extras separately.\u003c\/li\u003e\n\u003cli\u003eTrack warranty work by job.\u003c\/li\u003e\n\u003cli\u003eSet purchase limits before install.\u003c\/li\u003e\n\u003cli\u003eQuote venting changes up front.\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 step3\"\u003e3\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eInstallation Crew Productivity\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"right-row4\"\u003e\n    \u003ch3\u003eInstallation Crew Productivity\u003c\/h3\u003e\n    \u003cp\u003eIf a standard fan install takes \u003cstrong\u003e80 billable hours\u003c\/strong\u003e in year one and \u003cstrong\u003e70 billable hours\u003c\/strong\u003e in the mature year, the same crew can complete more work and lift gross profit. The gain only sticks when scope is clear and workmanship stays clean. \u003cstrong\u003eTravel time\u003c\/strong\u003e, \u003cstrong\u003eattic access\u003c\/strong\u003e, \u003cstrong\u003eventing issues\u003c\/strong\u003e, and \u003cstrong\u003eelectrical delays\u003c\/strong\u003e can cut daily job count and shrink owner pay.\u003c\/p\u003e\n    \u003cp\u003eThe main risk is treating a complex attic job like a standard one. That usually creates rework, callbacks, and lost hours, so the saved labor never reaches the bottom line. One clean rule matters: faster installs help income only when the crew keeps quality high and finishes on the first pass.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row4\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Hours, Access, and Rework\u003c\/h3\u003e\n      \u003cp\u003eMeasure \u003cstrong\u003ebillable hours per install\u003c\/strong\u003e, \u003cstrong\u003edrive time\u003c\/strong\u003e, and \u003cstrong\u003ecallbacks\u003c\/strong\u003e by job type. The owner needs the real inputs: crew hours, attic complexity, venting scope, and any electrical work. If a job looks like \u003cstrong\u003e70 hours\u003c\/strong\u003e on paper but keeps taking \u003cstrong\u003e80+\u003c\/strong\u003e after delays, the price and schedule are too thin.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003e\u003cstrong\u003eTrack first-pass completion\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003eSeparate easy and complex jobs\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003ePrice attic and electrical add-ons\u003c\/strong\u003e\u003c\/li\u003e\n        \u003cli\u003e\u003cstrong\u003ePre-scope access before booking\u003c\/strong\u003e\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eUse that data to set crew mix and daily routing. Put the best installers on the hardest jobs, and don’t stack too many unknowns in one day. When labor hours fall without quality slips, more of each install becomes gross profit, and that is what funds owner draw and taxes.\u003c\/p\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;\"\u003eLead Generation And Close Rate\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row5\"\u003e\n    \u003ch3\u003eLead Quality and Close Rate\u003c\/h3\u003e\n    \u003cp\u003eOwner pay depends on \u003cstrong\u003ebooked installs\u003c\/strong\u003e, not raw leads. With \u003cstrong\u003e$45K\u003c\/strong\u003e first-year marketing and \u003cstrong\u003e$450 CAC\u003c\/strong\u003e, the model implies about \u003cstrong\u003e100 customers\u003c\/strong\u003e; in the mature year, \u003cstrong\u003e$100K\u003c\/strong\u003e at \u003cstrong\u003e$350 CAC\u003c\/strong\u003e implies about \u003cstrong\u003e286 customers\u003c\/strong\u003e. If lead quality slips, estimator time gets wasted and payroll gets burned on empty crew days.\u003c\/p\u003e\n    \u003cp\u003eThis driver includes lead source mix, close rate, referral share, and fit by market. \u003cstrong\u003eReferrals cost 3% of revenue\u003c\/strong\u003e in year one and \u003cstrong\u003e4%\u003c\/strong\u003e in the mature year, so they can protect margin. Warm-weather markets and high utility costs may lift demand, but only qualified homes and ready buyers turn that demand into owner take-home.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row5\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eMeasure Close Rate by Source\u003c\/h3\u003e\n      \u003cp\u003eTrack leads, estimates, booked jobs, and cancelled jobs by source. That tells you if the issue is demand or sales. A simple rule: if paid leads are cheap but weak, the real cost is estimator time plus crew gaps, not just ad spend.\u003c\/p\u003e\n      \u003cp\u003ePush more referral and warm-market leads, and qualify harder before the site visit. Use a short intake check on home type, utility pain, and timing. If close rate rises while CAC stays at \u003cstrong\u003e$450\u003c\/strong\u003e first year or \u003cstrong\u003e$350\u003c\/strong\u003e mature year, more revenue turns into profit instead of overhead.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eTrack CAC by lead source.\u003c\/li\u003e\n        \u003cli\u003eCount booked installs, not leads.\u003c\/li\u003e\n        \u003cli\u003eReject poor-fit homes early.\u003c\/li\u003e\n        \u003cli\u003eWatch estimator hours lost.\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 step5\"\u003e5\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eOverhead, Seasonality, And Reserves\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"right-row6\"\u003e\n    \u003ch3\u003eOverhead, Seasonality, And Reserves\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eFixed overhead\u003c\/strong\u003e cuts owner income before taxes and draws. In this model, overhead is \u003cstrong\u003e$6,200\/month\u003c\/strong\u003e for\nrent, insurance, software, utilities, licensing, and equipment leases. That cost sits on top of project income, so low volume or slow collections hit take-home fast. One clean rule: if cash is tight, owner pay is the first thing that gets squeezed.\u003c\/p\u003e\n    \u003cp\u003eThe cash pattern matters as much as profit. \u003cstrong\u003eMinimum cash is $790K in Month 2\u003c\/strong\u003e, \u003cstrong\u003ebreakeven is Month 7\u003c\/strong\u003e, and \u003cstrong\u003epayback is 20 months\u003c\/strong\u003e. Reserves need to cover callbacks, warranty work, slow months, and marketing gaps. Seasonal cash crunches can push bad pricing, which protects sales today but weakens owner income later.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row6\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Cash Runway Before You Discount\u003c\/h3\u003e\n      \u003cp\u003eModel monthly cash using \u003cstrong\u003ecompleted installs\u003c\/strong\u003e, \u003cstrong\u003eaverage ticket\u003c\/strong\u003e, gross margin, and fixed overhead. Then stress test the weak months, not the best months. If cash falls near the \u003cstrong\u003eMonth 2 low point\u003c\/strong\u003e, delay owner draws, tighten spend, and keep price discipline so you do not buy volume with margin loss.\u003c\/p\u003e\n      \u003cp\u003eWatch these inputs every month:\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003e\n\u003cstrong\u003e$6,200\u003c\/strong\u003e fixed overhead\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003e$790K\u003c\/strong\u003e minimum cash\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003eMonth 7\u003c\/strong\u003e breakeven\u003c\/li\u003e\n        \u003cli\u003e\n\u003cstrong\u003e20-month\u003c\/strong\u003e payback\u003c\/li\u003e\n        \u003cli\u003eCallback and warranty spend\u003c\/li\u003e\n        \u003cli\u003eMarketing gap months\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 step6\"\u003e6\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eCompare low, base, and high owner-income outcomes\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-scenario-table\" aria-label=\"Whole House Fan Installation Owner Income Scenarios\" data-site-name=\"Financial Models Lab\" data-site-url=\"https:\/\/financialmodelslab.com\" data-source-title=\"Whole House Fan Installation Owner Income Scenarios\" data-note-label=\"Planning note\" data-note-text=\"Scenario 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 moves with install volume, crew size, and recurring service mix. Early years are thin; later years improve as maintenance and upgrade work spread fixed costs.\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\u003eLow, base, and high owner income cases for planning.\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\"\u003eLean ramp\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\"\u003eScaled crew\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\"\u003eMature capacity\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 lean ramp case, where year 1 output and owner income stay low.\"\u003eThis is the lean ramp case, where year 1 output and owner income stay low.\u003c\/td\u003e\n\u003ctd data-export-value=\"This is the modeled operating case, with income rising as the crew and recurring work scale.\"\u003eThis is the modeled operating case, with income rising as the crew and recurring work scale.\u003c\/td\u003e\n\u003ctd data-export-value=\"This is the upside case, where mature capacity lifts owner income.\"\u003eThis is the upside case, where mature capacity lifts owner income.\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=\"It mirrors year 1 with about $585K revenue, $33K EBITDA, $45K marketing, 22% COGS, and 8% variable costs while the owner still carries the $85K manager role.\"\u003eIt mirrors year 1 with about $585K revenue, $33K EBITDA, $45K marketing, 22% COGS, and 8% variable costs while the owner still carries the $85K manager role.\u003c\/td\u003e\n\u003ctd data-export-value=\"It mirrors year 3 with about $1.537M revenue, $368K EBITDA, $75K marketing, and a scaled crew handling more maintenance and upgrade work.\"\u003eIt mirrors year 3 with about $1.537M revenue, $368K EBITDA, $75K marketing, and a scaled crew handling more maintenance and upgrade work.\u003c\/td\u003e\n\u003ctd data-export-value=\"It mirrors the mature year with about $2.492M revenue, $624K EBITDA, $100K marketing, and full crew capacity with more recurring work.\"\u003eIt mirrors the mature year with about $2.492M revenue, $624K EBITDA, $100K marketing, and full crew capacity with more recurring work.\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=\"585K revenue; 33K EBITDA; 45K marketing; 22% COGS; 8% variable costs\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003e585K revenue\u003c\/li\u003e\n\u003cli\u003e33K EBITDA\u003c\/li\u003e\n\u003cli\u003e45K marketing\u003c\/li\u003e\n\u003cli\u003e22% COGS\u003c\/li\u003e\n\u003cli\u003e8% variable costs\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"1.537M revenue; 368K EBITDA; 75K marketing; scaled crew; recurring work mix\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003e1.537M revenue\u003c\/li\u003e\n\u003cli\u003e368K EBITDA\u003c\/li\u003e\n\u003cli\u003e75K marketing\u003c\/li\u003e\n\u003cli\u003escaled crew\u003c\/li\u003e\n\u003cli\u003erecurring work mix\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"2.492M revenue; 624K EBITDA; 100K marketing; 19% COGS; mature capacity\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003e2.492M revenue\u003c\/li\u003e\n\u003cli\u003e624K EBITDA\u003c\/li\u003e\n\u003cli\u003e100K marketing\u003c\/li\u003e\n\u003cli\u003e19% COGS\u003c\/li\u003e\n\u003cli\u003emature capacity\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=\"$118K\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$118K\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eLean ramp\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$453K\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$453K\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eScaled crew\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$709K\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$709K\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-warning\"\u003eMature capacity\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 early cash flow and staffing gaps.\"\u003eUse this to stress-test early cash flow and staffing gaps.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this as the planning case for a steady growth path.\"\u003eUse this as the planning case for a steady growth path.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this to test upside if the team stays full and demand holds.\"\u003eUse this to test upside if the team stays full and demand holds.\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 Scenario 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":49304328962291,"sku":"whole-house-fan-owner-makes","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/whole-house-fan-owner-makes.webp?v=1782695443","url":"https:\/\/financialmodelslab.com\/products\/whole-house-fan-owner-makes","provider":"Financial Models Lab","version":"1.0","type":"link"}