{"product_id":"ozone-pool-system-owner-makes","title":"How Much Ozone Pool System Business Owners Make: $95k-$238k In Year 1","description":"\u003cbr\u003e\u003cdiv class=\"container_new_design\"\u003e\n\u003cdiv class=\"text-section text-1_new_design\"\u003e\n\u003cdiv class=\"line_top\"\u003e\u003c\/div\u003e\n\u003cp\u003eYou’re asking if this can pay you, not just book sales This model covers installation revenue, gross margin, overhead, reserves, and owner compensation before taxes, with \u003cstrong\u003e$780k in Year 1 revenue\u003c\/strong\u003e, \u003cstrong\u003e$143k in Year 1 EBITDA\u003c\/strong\u003e, and a \u003cstrong\u003e$95k general manager salary\u003c\/strong\u003e\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\u003cdiv class=\"image-section image-1_new_design\" id=\"main_article_image\"\u003e\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003csection class=\"fml-owner-metric-cards\" aria-label=\"Owner income outlook\"\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 owner pay ranges from $95k salary to $238k pre-tax capacity, based on GM pay plus EBITDA before taxes, debt, reserves, and reinvestment.\"\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 owner pay ranges from $95k salary to $238k pre-tax capacity, based on GM pay plus EBITDA before taxes, debt, reserves, and reinvestment.\"\u003e$95k-$238k\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Year 1 EBITDA margin is $143k on $780k revenue; true net margin will be lower after taxes, debt, and reinvestment.\"\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 EBITDA margin is $143k on $780k revenue; true net margin will be lower after taxes, debt, and reinvestment.\"\u003e18.3%\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Year 1 revenue is $780k, or about $65k a month, from 150 residential installs, 12 commercial installs, and 80 maintenance plans.\"\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 $780k, or about $65k a month, from 150 residential installs, 12 commercial installs, and 80 maintenance plans.\"\u003e$780k\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Hard because startup capex is $131k, cash bottoms at $826k in Month 2, and payback takes 14 months; warranty and callback costs can strain cash.\"\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 startup capex is $131k, cash bottoms at $826k in Month 2, and payback takes 14 months; warranty and callback costs can strain cash.\"\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\" data-locale=\"en-US\" data-currency=\"USD\" data-default-scenario=\"base\" data-export-filename=\"Owner Income Calculator.xlsx\" data-source-site-name=\"Financial Models Lab\" data-source-site-url=\"https:\/\/financialmodelslab.com\" data-source-page-title=\"Owner Income Calculator\" data-note-title=\"Planning note:\" data-note-text=\"Research-based planning estimate only. Actual owner income is not guaranteed and it is not 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, 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 collected before expenses. Use the average operating month, not a peak month.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly sales collected before expenses. Use the average operating month, not a 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 collected before expenses. Use the average operating month, not a peak month.\" data-low=\"45000\" data-base=\"65000\" data-high=\"100000\" name=\"monthlyRevenue\" type=\"text\" inputmode=\"numeric\" value=\"65,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\u003eGross margin\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Percent of revenue left after direct hardware, parts, and selling costs.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of revenue left after direct hardware, parts, and selling 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 hardware, parts, and selling costs.\" name=\"grossMargin\" type=\"range\" min=\"0\" max=\"100\" step=\"1\" data-low=\"76\" data-base=\"80\" data-high=\"82\" value=\"80\"\u003e\u003coutput\u003e80%\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, contractors, benefits, and staffing coverage before owner pay.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly payroll, contractors, benefits, and staffing coverage 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 payroll, contractors, benefits, and staffing coverage before owner pay.\" data-low=\"22000\" data-base=\"25700\" data-high=\"34000\" name=\"laborCost\" type=\"text\" inputmode=\"numeric\" value=\"25,700\"\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, admin, and recurring overhead.\"\u003ei\u003cspan role=\"tooltip\"\u003eRent, insurance, software, utilities, admin, and recurring overhead.\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, admin, and recurring overhead.\" data-low=\"8000\" data-base=\"8850\" data-high=\"9800\" name=\"fixedOverhead\" type=\"text\" inputmode=\"numeric\" value=\"8,850\"\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 generation and customer acquisition spend needed to keep installs moving.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly lead generation and customer acquisition spend needed to keep installs moving.\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 generation and customer acquisition spend needed to keep installs moving.\" data-low=\"2500\" data-base=\"3500\" data-high=\"5000\" name=\"marketing\" type=\"text\" inputmode=\"numeric\" value=\"3,500\"\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, financing, or required debt-service payments.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly loan, financing, or required debt-service 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, financing, or required debt-service 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=\"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\u003eReinvestment reserve\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Percent of profit kept for repairs, growth, working capital, and risk buffer.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of profit kept for repairs, growth, working capital, and risk 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 kept for repairs, growth, working capital, and risk buffer.\" 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=\"Target monthly owner income used to measure the target-pay gap.\"\u003ei\u003cspan role=\"tooltip\"\u003eTarget monthly owner income 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=\"Target monthly owner income used to measure the target-pay gap.\" data-low=\"6000\" data-base=\"10000\" data-high=\"15000\" name=\"targetOwnerPay\" type=\"text\" inputmode=\"numeric\" value=\"10,000\"\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$11,439\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\"\u003e18%\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$62,806\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$1,439\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$137,268\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$13,950\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,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$1,439\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$65,000\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: 80%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$52,000\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: 59%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$38,050\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: 4%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$2,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: 18%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$11,439\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. Actual owner income is not guaranteed and it is not 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 check owner income in the financial model?\u003c\/span\u003e\u003c\/h3\u003e\n\n\u003cp\u003eThis screenshot is about \u003cstrong\u003eincome planning\u003c\/strong\u003e: revenue, EBITDA, cash, Month 2 breakeven, Month 14 payback, IRR 1502%, and ROE 882%, plus owner take-home assumptions. Open the \u003ca href=\"\/products\/ozone-pool-system-financial-model\"\u003eOzone Pool Sanitation System Financial Model Template\u003c\/a\u003e.\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 modeled\u003c\/li\u003e\n\u003cli\u003eRevenue, EBITDA, cash flow\u003c\/li\u003e\n\u003cli\u003eScenario testing included\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\/ozone-pool-system-financial-model-dashboard-financialmodelslab_73d91716-e956-406f-8471-3cb9cd501f21.webp\"\u003e\n\u003cimg class=\"preview-img\" width=\"100%\" height=\"auto\" src=\"\/cdn\/shop\/files\/ozone-pool-system-financial-model-dashboard-financialmodelslab_73d91716-e956-406f-8471-3cb9cd501f21.webp?width=500\" alt=\"Ozone Pool Sanitation System Financial Model dashboard summarizing key KPIs, runway and cash position with charts and investor-ready visuals to track performance and avoid 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;\"\u003eCan an ozone pool system business scale beyond owner-operated income?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eYes — an \u003cstrong\u003eOzone Pool Sanitation System\u003c\/strong\u003e business can scale beyond owner income, but only if it adds crews, tight quality control, and disciplined scheduling. The \u003cstrong\u003eYear 1\u003c\/strong\u003e small crew model uses one lead technician, one sales consultant, and junior technician support, with \u003cstrong\u003e$308k\u003c\/strong\u003e annualized payroll; by \u003cstrong\u003eYear 5\u003c\/strong\u003e, the larger model reaches \u003cstrong\u003e900 residential installs\u003c\/strong\u003e, \u003cstrong\u003e85 commercial installs\u003c\/strong\u003e, and \u003cstrong\u003e1,200 maintenance plans\u003c\/strong\u003e. The catch is simple: scale raises \u003cstrong\u003ewarranty exposure\u003c\/strong\u003e, \u003cstrong\u003einventory needs\u003c\/strong\u003e, customer education, and technician utilization pressure, so it is not automatic.\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\u003eCash-first setup\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eOwner-operated\u003c\/strong\u003e protects cash flow.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eSmall crews\u003c\/strong\u003e keep overhead lean.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eOne lead tech\u003c\/strong\u003e anchors installs.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eScheduling\u003c\/strong\u003e drives output per week.\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\u003eScale constraints\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003eWarranty exposure\u003c\/strong\u003e rises with volume.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eInventory\u003c\/strong\u003e demand grows fast.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eCustomer education\u003c\/strong\u003e takes more time.\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003eUtilization pressure\u003c\/strong\u003e hits technicians.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eHow much can I pay myself from an ozone pool system business?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eYou can pay yourself a \u003cstrong\u003e$95k Year 1 salary\u003c\/strong\u003e from an Ozone Pool Sanitation System business if you act as general manager; see \u003ca href=\"\/blogs\/operating-costs\/ozone-pool-system\"\u003eWhat Are Ozone Pool Sanitation System Operating Costs?\u003c\/a\u003e for the cost pressure behind that decision. If you also distribute all \u003cstrong\u003e$143k EBITDA\u003c\/strong\u003e, pre-tax pay capacity reaches \u003cstrong\u003e$238k\u003c\/strong\u003e, but that’s not the same as safe take-home because startup capex is \u003cstrong\u003e$131k\u003c\/strong\u003e and minimum cash need is \u003cstrong\u003e$826k\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\u003eOwner Pay\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eTake \u003cstrong\u003e$95k\u003c\/strong\u003e salary as general manager\u003c\/li\u003e\n\u003cli\u003eAdd \u003cstrong\u003e$143k\u003c\/strong\u003e EBITDA only if cash allows\u003c\/li\u003e\n\u003cli\u003eReach \u003cstrong\u003e$238k\u003c\/strong\u003e pre-tax pay capacity\u003c\/li\u003e\n\u003cli\u003eSeparate capacity from safe take-home\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\u003eCash Limits\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eProtect \u003cstrong\u003e$826k\u003c\/strong\u003e minimum cash need\u003c\/li\u003e\n\u003cli\u003eFund \u003cstrong\u003e$131k\u003c\/strong\u003e startup capex first\u003c\/li\u003e\n\u003cli\u003eFounder installs improve labor cash\u003c\/li\u003e\n\u003cli\u003eTechnician installs raise payroll but scale volume\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWhat is the profit margin on ozone pool system installation?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eFor an Ozone Pool Sanitation System, the profit margin story starts ugly at the unit level: Year 1 hardware sourcing is \u003cstrong\u003e105%\u003c\/strong\u003e of revenue and installation parts are \u003cstrong\u003e35%\u003c\/strong\u003e, so direct equipment and parts cost is \u003cstrong\u003e140%\u003c\/strong\u003e before labor, commissions, vehicles, and overhead. The key is to keep gross margin separate from net profit; see the full \u003ca href=\"\/blogs\/profitability\/ozone-pool-system\"\u003eHow Increase Profits Ozone Pool Sanitation System?\u003c\/a\u003e math, where gross margin is about \u003cstrong\u003e860%\u003c\/strong\u003e and \u003cstrong\u003eEBITDA margin\u003c\/strong\u003e is \u003cstrong\u003e183%\u003c\/strong\u003e in Year 1.\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\u003eMargin split\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e105%\u003c\/strong\u003e hardware sourcing\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e35%\u003c\/strong\u003e installation parts\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e140%\u003c\/strong\u003e direct cost base\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e183%\u003c\/strong\u003e Year 1 EBITDA margin\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\u003eMargin drags\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003e\n\u003cstrong\u003e40%\u003c\/strong\u003e commissions cut take-home\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e20%\u003c\/strong\u003e vehicle cost bites hard\u003c\/li\u003e\n\u003cli\u003eCallbacks raise job cost\u003c\/li\u003e\n\u003cli\u003ePermits and weak leads hurt too\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;\"\u003eWhat drives owner income most?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-main-income-drivers\" aria-label=\"Main income drivers for the ozone pool sanitation system.\"\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\u003e162\u003c\/strong\u003e\u003cp\u003eMore installs spread fixed overhead across more jobs, so owner take-home rises fastest here.\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\u003eProject Price\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$4.6K\u003c\/strong\u003e\u003cp\u003eA higher blended ticket lifts revenue without adding the same share of labor or ad spend.\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\u003eEquipment Margin\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e14%\u003c\/strong\u003e\u003cp\u003eKeeping hardware and parts near the model's Year 1 direct cost protects gross profit on each job.\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\u003eLabor Efficiency\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$308K\u003c\/strong\u003e\u003cp\u003eCrew productivity matters because wages scale with field work, and weak routing cuts EBITDA fast.\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\u003eCustomer Cost\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$3.5K\u003c\/strong\u003e\u003cp\u003eLower marketing and referral spend keeps each booked install worth more after commissions.\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\u003eMaintenance Attach\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e80\u003c\/strong\u003e\u003cp\u003eMore annual plans add recurring cash and smooth income between larger install jobs.\u003c\/p\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eOzone Pool Sanitation System Core Six Income Drivers\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\u003cbr\u003e\n\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eInstallation 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 Installs\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eIncome comes from completed installs\u003c\/strong\u003e, not booked calls. The plan assumes \u003cstrong\u003e162 total installs\u003c\/strong\u003e in Year 1 and \u003cstrong\u003e985 total installs\u003c\/strong\u003e in Year 5, which is about \u003cstrong\u003e6.1x\u003c\/strong\u003e more volume. That only helps owner take-home if technicians, vehicles, parts, scheduling, and quality checks keep up.\u003c\/p\u003e\n    \u003cp\u003eWhen install volume grows but jobs slip, travel time rises, or rework stacks up, payroll and fuel hit cash before the extra revenue shows up. One clean install is better than two messy ones. Watch booked calls, close rate, install completion rate, and callback rate so volume turns into profit, not just activity.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row1\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTighten Install Flow\u003c\/h3\u003e\n      \u003cp\u003eTrack \u003cstrong\u003einstalls per crew\u003c\/strong\u003e, per day, and per zip code. That shows whether growth is coming from dense routes or from long drives that waste time. Compare booked visits to finished installs every week so you can spot where the funnel breaks.\u003c\/p\u003e\n      \u003cp\u003eUse a pre-job checklist: site confirmed, parts loaded, route set, and final quality check done. If missed appointments or redo visits rise, owner pay drops because labor, fuel, and callback costs climb faster than revenue.\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 Project Price\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 Project Price\u003c\/h3\u003e\n\u003cp\u003eAverage project price is the money per completed install, and it sets revenue per job. In Year 1, the pricing inputs are \u003cstrong\u003e$3,800\u003c\/strong\u003e for a residential install and \u003cstrong\u003e$14,500\u003c\/strong\u003e for a commercial install. Higher-ticket jobs lift revenue and can improve the owner’s draw, but only if they do not drag out sales, permits, or documentation.\u003c\/p\u003e\n\u003cp\u003ePrice is not one number. It moves with \u003cstrong\u003epool type\u003c\/strong\u003e, \u003cstrong\u003esystem size\u003c\/strong\u003e, \u003cstrong\u003eretrofit complexity\u003c\/strong\u003e, \u003cstrong\u003eautomation integration\u003c\/strong\u003e, and \u003cstrong\u003ebundled upgrades\u003c\/strong\u003e. Treat the blended ticket as a scenario input, not a promise, because commercial jobs can raise revenue per install while adding longer sales cycles and more paperwork.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row2\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003ePrice by job mix, not gut feel\u003c\/h3\u003e\n\u003cp\u003eTrack average selling price by job type and compare it with booked labor hours, gross profit, and cash collected. If a higher quote does not lift gross profit per install, it is not helping owner income. Keep a price sheet for the main inputs, then log every change order so upgrades show up in the numbers.\u003c\/p\u003e\n\u003cp\u003eKeep commercial deals separate in the forecast. They can push revenue up fast, but slower approvals and more documentation can delay cash. Watch \u003cstrong\u003equote-to-close rate\u003c\/strong\u003e, \u003cstrong\u003edays to collect\u003c\/strong\u003e, and \u003cstrong\u003egross profit per install\u003c\/strong\u003e before lowering price to win volume.\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;\"\u003eEquipment Margin\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row3\"\u003e\n    \u003ch3\u003eEquipment Margin\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eEquipment margin\u003c\/strong\u003e is the gap between what you charge for the ozone unit package and what you pay for hardware and install parts. In Year 1, \u003cstrong\u003e105% hardware sourcing\u003c\/strong\u003e plus \u003cstrong\u003e35% installation components\u003c\/strong\u003e creates \u003cstrong\u003e140% direct cost\u003c\/strong\u003e, or about \u003cstrong\u003e-40% gross margin\u003c\/strong\u003e. That means each sale can burn cash unless installed price and supplier terms improve.\u003c\/p\u003e\n    \u003cp\u003eBy Year 5, direct cost falls to \u003cstrong\u003e110%\u003c\/strong\u003e as hardware drops to \u003cstrong\u003e85%\u003c\/strong\u003e and parts to \u003cstrong\u003e25%\u003c\/strong\u003e, but that still leaves only \u003cstrong\u003e-10%\u003c\/strong\u003e gross margin before labor, sales costs, and overhead. The quick math is simple: if equipment cost stays above revenue, owner pay depends on volume, tighter buying, and fewer warranty hits. Equipment margin is not total job margin.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row3\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Supplier Cost Discipline\u003c\/h3\u003e\n      \u003cp\u003eMeasure \u003cstrong\u003ehardware cost as % of revenue\u003c\/strong\u003e, \u003cstrong\u003eparts cost as % of revenue\u003c\/strong\u003e, and \u003cstrong\u003ewarranty returns\u003c\/strong\u003e on every install. If a job is priced at $10,000, Year 1 direct cost is about \u003cstrong\u003e$14,000\u003c\/strong\u003e; Year 5 is about \u003cstrong\u003e$11,000\u003c\/strong\u003e. Better supplier terms help, but overbuying inventory or stocking slow movers can tie up cash and cut owner draw.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eTrack cost by job, not monthly average.\u003c\/li\u003e\n        \u003cli\u003eSeparate hardware from install parts.\u003c\/li\u003e\n        \u003cli\u003eWatch inventory turns and dead stock.\u003c\/li\u003e\n        \u003cli\u003ePrice for warranty risk, not just unit cost.\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;\"\u003eLabor Efficiency\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"right-row4\"\u003e\n    \u003ch3\u003eLabor Efficiency\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eLabor efficiency\u003c\/strong\u003e is how much gross profit is left after payroll, and in Year 1 that payroll base is already about \u003cstrong\u003e$308k\u003c\/strong\u003e from the lead technician, junior technician, sales and education consultant, office administrator, and general manager. If installs are slow, spread out, or need rework, that fixed labor load can eat owner pay fast.\u003c\/p\u003e\n    \u003cp\u003eThe key inputs are \u003cstrong\u003ecompleted installs\u003c\/strong\u003e, route tightness, standard install steps, and the split between owner-installed jobs and hired crews. Owner installs save cash now, but hired crews raise capacity and also add training, supervision, and scheduling risk. One clean job beats two messy ones.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row4\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Install Time, Travel, and Rework\u003c\/h3\u003e\n      \u003cp\u003eMeasure \u003cstrong\u003einstalls per technician per week\u003c\/strong\u003e, drive time between jobs, and the share of jobs that need a return visit. If routes stay tight and jobs follow the same install checklist, labor cost per install falls and more gross profit reaches the owner’s draw.\u003c\/p\u003e\n      \u003cp\u003eWatch these three numbers each month: \u003cstrong\u003epayroll versus completed installs\u003c\/strong\u003e, \u003cstrong\u003erework rate\u003c\/strong\u003e, and \u003cstrong\u003eowner labor hours\u003c\/strong\u003e. If the team grows, set clear install standards before adding more crews, because one bad handoff can turn labor savings into warranty work and margin loss.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eCount completed installs, not booked calls.\u003c\/li\u003e\n        \u003cli\u003eTrack travel time by route.\u003c\/li\u003e\n        \u003cli\u003eLog rework and callbacks fast.\u003c\/li\u003e\n        \u003cli\u003eCompare payroll to gross profit monthly.\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;\"\u003eCustomer Acquisition Cost\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row5\"\u003e\n    \u003ch3\u003eCustomer Acquisition Cost\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eCAC\u003c\/strong\u003e is the cash needed to win one installed customer. Here it includes \u003cstrong\u003e$3,500 per month\u003c\/strong\u003e in digital marketing and lead generation, plus \u003cstrong\u003e40%\u003c\/strong\u003e of revenue in Year 1 for commissions and referral fees. On \u003cstrong\u003e$744k\u003c\/strong\u003e of Year 1 install revenue and \u003cstrong\u003e162\u003c\/strong\u003e installs, that is about \u003cstrong\u003e$339.6k\u003c\/strong\u003e in acquisition spend, or about \u003cstrong\u003e$2.1k\u003c\/strong\u003e per install.\u003c\/p\u003e\n    \u003cp\u003eThis hits owner take-home before the first site visit. If lead quality is weak or pool owners need more education, the same spend produces fewer closes, so CAC rises even when ad spend does not. Seasonality, local pool density, and close rate can swing installed revenue without a matching change in marketing cost.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row5\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eLower Cost per Install\u003c\/h3\u003e\n      \u003cp\u003eTrack \u003cstrong\u003ecost per closed install\u003c\/strong\u003e, not just leads. Split out fixed digital spend, referral fees, and sales commissions, then compare them to monthly installs and revenue so you can see whether the funnel is buying real jobs or just site visits.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eMeasure close rate by lead source.\u003c\/li\u003e\n        \u003cli\u003eCut weak referral channels fast.\u003c\/li\u003e\n        \u003cli\u003eMatch spend to peak pool season.\u003c\/li\u003e\n        \u003cli\u003eTeach the upgrade before quoting.\u003c\/li\u003e\n        \u003cli\u003eForecast CAC against installed revenue.\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eAs Year 1 scales, variable fees alone can reach \u003cstrong\u003e40%\u003c\/strong\u003e of revenue, so the best lever is better leads, tighter sales, and higher close rates. If your team spends the same \u003cstrong\u003e$3,500\u003c\/strong\u003e a month but closes more qualified pool owners, more of each install survives to gross profit and owner draw.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"ste\np-circle step5\"\u003e5\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eRecurring Maintenance Revenue\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"right-row6\"\u003e\n\u003ch3\u003eRecurring Maintenance Revenue\u003c\/h3\u003e\n\u003cp\u003eThis income stream comes from annual plans sold after installation, plus inspections, replacement parts, and service agreements. It is secondary to install revenue, but it can smooth cash in slow months. In Year 1, \u003cstrong\u003e80 plans × $450 = $36,000\u003c\/strong\u003e; by Year 5, \u003cstrong\u003e1,200 plans × $550 = $660,000\u003c\/strong\u003e. That lifts owner income only if service work stays efficient and on schedule.\u003c\/p\u003e\n\u003cp\u003eThe key inputs are \u003cstrong\u003eplan count\u003c\/strong\u003e, \u003cstrong\u003eprice per plan\u003c\/strong\u003e, attach rate at install, and service capacity. One line says it plainly: more recurring revenue helps most when it is sold with the original job. If routing gets messy or technicians are overbooked, the extra cash can get eaten by labor, callbacks, and missed appointments.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row6\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eSell and Schedule It at Install\u003c\/h3\u003e\n\u003cp\u003eTrack \u003cstrong\u003eattach rate\u003c\/strong\u003e, plan renewals, and service hours per route. If the team sells maintenance at installation, the business turns one-time jobs into steadier cash and better owner draw. If not, the business depends too much on new installs, which makes pay swings worse in off-season months.\u003c\/p\u003e\n\u003cp\u003eUse a simple test: compare recurring revenue per service day against technician cost and travel time. Keep replacement parts and inspection visits standardized, so gross margin does not leak into rework. The goal is not just \u003cstrong\u003e$36,000\u003c\/strong\u003e in Year 1 or \u003cstrong\u003e$660,000\u003c\/strong\u003e in Year 5; it is turning that revenue into clean cash after labor and dispatch.\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 owner-income scenarios\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-scenario-table\" aria-label=\"Ozone Pool Sanitation System Owner Income Scenarios\" data-site-name=\"Financial Models Lab\" data-site-url=\"https:\/\/financialmodelslab.com\" data-source-title=\"Ozone Pool Sanitation System 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 rises with install volume, service-plan mix, staffing, and reinvestment needs. Year 1 is founder-led; Years 3 to 5 need more technicians, sales help, and cash for growth.\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 cases show how pay capacity changes as the pool business scales.\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\"\u003eOwner role\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\"\u003eTeam build\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\"\u003eScale up\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=\"Founder-led Year 1 case with 150 residential installs, 12 commercial installs, and 80 maintenance plans.\"\u003eFounder-led Year 1 case with 150 residential installs, 12 commercial installs, and 80 maintenance plans.\u003c\/td\u003e\n\u003ctd data-export-value=\"Year 3 operating case with 450 residential installs, 40 commercial installs, and 450 maintenance plans.\"\u003eYear 3 operating case with 450 residential installs, 40 commercial installs, and 450 maintenance plans.\u003c\/td\u003e\n\u003ctd data-export-value=\"Year 5 upside case with 900 residential installs, 85 commercial installs, and 1,200 maintenance plans.\"\u003eYear 5 upside case with 900 residential installs, 85 commercial installs, and 1,200 maintenance plans.\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=\"Revenue is $780k, EBITDA is $143k, margin is 18.3%, and the owner-manager salary is $95k with limited room before reserves.\"\u003eRevenue is $780k, EBITDA is $143k, margin is 18.3%, and the owner-manager salary is $95k with limited room before reserves.\u003c\/td\u003e\n\u003ctd data-export-value=\"Revenue reaches $2.633m, EBITDA is $1.349m, margin is 51.2%, and the model supports a larger technician and sales team.\"\u003eRevenue reaches $2.633m, EBITDA is $1.349m, margin is 51.2%, and the model supports a larger technician and sales team.\u003c\/td\u003e\n\u003ctd data-export-value=\"Revenue reaches $5.845m, EBITDA is $3.766m, margin is 64.4%, and the business needs a bigger field team plus more cash for growth.\"\u003eRevenue reaches $5.845m, EBITDA is $3.766m, margin is 64.4%, and the business needs a bigger field team plus more cash for growth.\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=\"Lead generation; owner salary; light service team; hardware and parts; fuel and admin\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eLead generation\u003c\/li\u003e\n\u003cli\u003eowner salary\u003c\/li\u003e\n\u003cli\u003elight service team\u003c\/li\u003e\n\u003cli\u003ehardware and parts\u003c\/li\u003e\n\u003cli\u003efuel and admin\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"Technician payroll; sales staffing; marketing spend; hardware sourcing; installation parts\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eTechnician payroll\u003c\/li\u003e\n\u003cli\u003esales staffing\u003c\/li\u003e\n\u003cli\u003emarketing spend\u003c\/li\u003e\n\u003cli\u003ehardware sourcing\u003c\/li\u003e\n\u003cli\u003einstallation parts\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"Field labor; sales commissions; maintenance support; working capital; fleet and tools\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eField labor\u003c\/li\u003e\n\u003cli\u003esales commissions\u003c\/li\u003e\n\u003cli\u003emaintenance support\u003c\/li\u003e\n\u003cli\u003eworking capital\u003c\/li\u003e\n\u003cli\u003efleet and tools\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=\"$95k - $238k\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$95k - $238k\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eCash pressure\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"Mid-six-figure pay capacity\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003eMid-six-figure pay capacity\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eReinvest need\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"Upper-six-figure upside\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003eUpper-six-figure upside\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-warning\"\u003eQuality risk\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 test a lean launch and how much pay the business can support before working cash gets tight.\"\u003eUse this to test a lean launch and how much pay the business can support before working cash gets tight.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this as the steady-growth case once scheduling, training, and service quality are stable.\"\u003eUse this as the steady-growth case once scheduling, training, and service quality are stable.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this to test whether growth can stay consistent without slipping on install quality or service response.\"\u003eUse this to test whether growth can stay consistent without slipping on install quality or service response.\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":49304084545779,"sku":"ozone-pool-system-owner-makes","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/ozone-pool-system-owner-makes.webp?v=1782688717","url":"https:\/\/financialmodelslab.com\/products\/ozone-pool-system-owner-makes","provider":"Financial Models Lab","version":"1.0","type":"link"}