{"product_id":"plumber-owner-makes","title":"How Much Does a Plumbing Business Owner Make? $80K Plus Profit","description":"\u003cbr\u003e\u003cdiv class=\"card_smpl\"\u003e\n\u003cp\u003eA plumbing business owner income estimate in this model starts with a planned \u003cstrong\u003e$80,000 annual owner\/operator salary\u003c\/strong\u003e, with any extra take-home coming from profit after costs and reserves In Year 1, direct parts, smart devices, fuel, and job software consume \u003cstrong\u003e29% of revenue\u003c\/strong\u003e, leaving about \u003cstrong\u003e71% contribution margin\u003c\/strong\u003e before payroll, fixed overhead, and marketing Fixed overhead is \u003cstrong\u003e$5,000 per month\u003c\/strong\u003e, and Year 1 non-owner payroll plus marketing is \u003cstrong\u003e$125,000\u003c\/strong\u003e Actual plumbing business profit margin depends on pricing, labor productivity, callbacks, overhead, debt, taxes, and how much cash the owner leaves in the business\u003c\/p\u003e\n\n\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003csection class=\"fml-owner-metric-cards\" aria-label=\"Top Owner Income KPI Cards\"\u003e\u003cdiv class=\"metric-grid\"\u003e\n\u003carticle class=\"metric-card is-green\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Annual owner\/operator salary in the model; it excludes personal taxes, debt service, and any guaranteed draws or distributions.\"\u003e\u003cimg class=\"metric-icon\" src=\"\/cdn\/shop\/files\/fml-owner-income-kpi-owner-income.svg\" alt=\"Owner income icon\" loading=\"lazy\"\u003e\u003c\/span\u003e\u003cspan\u003eOwner income\u003c\/span\u003e\u003cstrong class=\"metric-value\" tabindex=\"0\" data-tooltip=\"Annual owner\/operator salary in the model; it excludes personal taxes, debt service, and any guaranteed draws or distributions.\"\u003e$80k\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"The provided model shows EBITDA, not a full revenue line, so a precise net margin can't be pinned down from this data alone.\"\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=\"The provided model shows EBITDA, not a full revenue line, so a precise net margin can't be pinned down from this data alone.\"\u003eN\/A\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"This is $80k owner salary plus $60k annual fixed overhead; it excludes variable job costs, taxes, and any reserve buildup.\"\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 $80k owner salary plus $60k annual fixed overhead; it excludes variable job costs, taxes, and any reserve buildup.\"\u003e$140k+\u003c\/strong\u003e\u003c\/article\u003e\u003carticle class=\"metric-card\"\u003e\u003cspan class=\"metric-icon-tip\" tabindex=\"0\" data-tooltip=\"Heavy startup capex, $5k monthly fixed overhead, 17-month breakeven, and 34-month payback make this a hard build.\"\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=\"Heavy startup capex, $5k monthly fixed overhead, 17-month breakeven, and 34-month payback make this a hard build.\"\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 plumbing 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=\"This is a researched planning estimate, not guaranteed salary, tax advice, or owner distribution advice. Actual owner income depends on revenue, margin, labor, overhead, debt, reserves, and timing.\"\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. The model ramps from startup levels to a mature operating month.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly sales collected before expenses. The model ramps from startup levels to a mature operating 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. The model ramps from startup levels to a mature operating month.\" data-low=\"12000\" data-base=\"40000\" data-high=\"220000\" name=\"monthlyRevenue\" type=\"text\" inputmode=\"numeric\" value=\"40,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 parts, materials, and job costs. Year 1 is 71% and Year 5 reaches 79.5%.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of revenue left after direct parts, materials, and job costs. Year 1 is 71% and Year 5 reaches 79.5%.\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 parts, materials, and job costs. Year 1 is 71% and Year 5 reaches 79.5%.\" name=\"grossMargin\" type=\"range\" min=\"0\" max=\"100\" step=\"1\" data-low=\"65\" data-base=\"71\" data-high=\"79.5\" value=\"71\"\u003e\u003coutput\u003e71%\u003c\/output\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eLabor cost\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly payroll for technicians, dispatch, and support before owner pay. Keep the owner out of this line.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly payroll for technicians, dispatch, and support before owner pay. Keep the owner out of this line.\u003c\/span\u003e\u003c\/span\u003e\u003c\/label\u003e\u003cdiv class=\"fml-owner-money\"\u003e\n\u003cspan\u003e$\u003c\/span\u003e\u003cinput data-owner-field=\"laborCost\" data-owner-kind=\"money\" data-owner-label=\"Labor cost\" data-owner-note=\"Monthly payroll for technicians, dispatch, and support before owner pay. Keep the owner out of this line.\" data-low=\"12000\" data-base=\"15000\" data-high=\"35000\" name=\"laborCost\" type=\"text\" inputmode=\"numeric\" value=\"15,000\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eFixed overhead\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Recurring overhead such as rent, utilities, insurance, software, office items, legal, and hosting. The model runs about $5,000 per month here.\"\u003ei\u003cspan role=\"tooltip\"\u003eRecurring overhead such as rent, utilities, insurance, software, office items, legal, and hosting. The model runs about $5,000 per month here.\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=\"Recurring overhead such as rent, utilities, insurance, software, office items, legal, and hosting. The model runs about $5,000 per month here.\" data-low=\"5000\" data-base=\"5000\" data-high=\"5000\" name=\"fixedOverhead\" type=\"text\" inputmode=\"numeric\" value=\"5,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\u003eMarketing\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly marketing spend. The model's annual budget equals about $1,250 in Year 1, $2,083 in Year 2, and $5,833 in Year 5.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly marketing spend. The model's annual budget equals about $1,250 in Year 1, $2,083 in Year 2, and $5,833 in Year 5.\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 spend. The model's annual budget equals about $1,250 in Year 1, $2,083 in Year 2, and $5,833 in Year 5.\" data-low=\"1250\" data-base=\"2083\" data-high=\"5833\" name=\"marketing\" type=\"text\" inputmode=\"numeric\" value=\"2,083\"\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"fml-owner-row\"\u003e\n\u003clabel class=\"fml-owner-label\"\u003e\u003cspan\u003eDebt service\u003c\/span\u003e\u003cspan class=\"fml-owner-tooltip\" tabindex=\"0\" aria-label=\"Monthly loan or financing payments. Use 0 if you have no debt service in the model.\"\u003ei\u003cspan role=\"tooltip\"\u003eMonthly loan or financing payments. Use 0 if you have no debt service in the model.\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. Use 0 if you have no debt service in the model.\" 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 is calculated.\"\u003ei\u003cspan role=\"tooltip\"\u003ePercent of profit set aside for taxes before owner take-home is calculated.\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 is calculated.\" name=\"taxReserve\" type=\"range\" min=\"0\" max=\"45\" step=\"1\" data-low=\"18\" data-base=\"24\" data-high=\"28\" value=\"24\"\u003e\u003coutput\u003e24%\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=\"10\" data-high=\"14\" 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=\"Target monthly owner income. The base case aligns to $80,000 a year, or about $6,667 a month.\"\u003ei\u003cspan role=\"tooltip\"\u003eTarget monthly owner income. The base case aligns to $80,000 a year, or about $6,667 a 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=\"targetOwnerPay\" data-owner-kind=\"money\" data-owner-label=\"Target owner pay\" data-owner-note=\"Target monthly owner income. The base case aligns to $80,000 a year, or about $6,667 a month.\" data-low=\"5000\" data-base=\"6667\" data-high=\"10000\" name=\"targetOwnerPay\" type=\"text\" inputmode=\"numeric\" value=\"6,667\"\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$4,169\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\"\u003e10%\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$45,330\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$-2,498\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$50,028\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$6,317\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,148\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$-2,498\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$40,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: 71%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$28,400\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: 55%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$22,083\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: 5%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$2,148\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: 10%;\"\u003e\u003c\/i\u003e\u003c\/div\u003e\n\u003cb data-owner-bridge-value\u003e$4,169\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 This is a researched planning estimate, not guaranteed salary, tax advice, or owner distribution advice. Actual owner income depends on revenue, margin, labor, overhead, debt, reserves, and timing.\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 Plumbing Service forecast?\u003c\/span\u003e\u003c\/h3\u003e\n\n\u003cp\u003eThe \u003ca href=\"\/products\/plumber-financial-model\"\u003ePlumbing Service Financial Model Template\u003c\/a\u003e shows revenue, margin, costs, reserves, and owner take-home assumptions—open it.\u003c\/p\u003e\n\n\u003ch4\u003eOwner-income model highlights\u003c\/h4\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eDashboard and income outputs\u003c\/li\u003e\n\u003cli\u003eAssumptions and scenario tables\u003c\/li\u003e\n\u003cli\u003eCash flow charts included\u003c\/li\u003e\n\u003cli\u003e$100 to $170 per hour\u003c\/li\u003e\n\u003cli\u003e5 to 10 billable hours\u003c\/li\u003e\n\u003cli\u003eMarketing $15k to $70k\u003c\/li\u003e\n\u003cli\u003eCAC $150 to $120\u003c\/li\u003e\n\u003cli\u003ePayroll $190k to $505k\u003c\/li\u003e\n\u003cli\u003e\n\u003cstrong\u003e$117k capex bridge\u003c\/strong\u003e only\u003c\/li\u003e\n\u003cli\u003e\u003cstrong\u003ePricing and cash still matter\u003c\/strong\u003e\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\/plumber-financial-model-dashboard-financialmodelslab_d3714064-b59c-42a2-a426-a3c8ed649c6b.webp\"\u003e\n\u003cimg class=\"preview-img\" width=\"100%\" height=\"auto\" src=\"\/cdn\/shop\/files\/plumber-financial-model-dashboard-financialmodelslab_d3714064-b59c-42a2-a426-a3c8ed649c6b.webp?width=500\" alt=\"Plumbing Service Financial Model dashboard summarizing key KPIs, runway\/cash and performance with a dynamic dashboard, investor-ready charts and cash-flow visibility to avoid 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;\"\u003eWhat plumbing company profit margin matters most?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eFor a \u003cstrong\u003ePlumbing Service\u003c\/strong\u003e, \u003cstrong\u003enet profit margin\u003c\/strong\u003e matters most, not just gross margin, because overhead and payroll decide what the owner keeps. Year 1 gross margin after parts, fixtures, and smart devices is \u003cstrong\u003e80%\u003c\/strong\u003e, and contribution margin after fuel and job software is \u003cstrong\u003e71%\u003c\/strong\u003e; if you’re sizing startup costs, see \u003ca href=\"\/blogs\/startup-costs\/plumber\"\u003eWhat Is The Estimated Cost To Open And Launch Your Plumbing Service Business?\u003c\/a\u003e. But \u003cstrong\u003e$60,000\u003c\/strong\u003e of fixed overhead and \u003cstrong\u003e$190,000\u003c\/strong\u003e of Year 1 payroll can still cut take-home fast, and payroll rises to \u003cstrong\u003e$505,000\u003c\/strong\u003e by Year 5.\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\u003eJob margin\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eYear 1 gross margin is \u003cstrong\u003e80%\u003c\/strong\u003e.\u003c\/li\u003e\n\u003cli\u003eContribution margin is \u003cstrong\u003e71%\u003c\/strong\u003e.\u003c\/li\u003e\n\u003cli\u003eParts, fixtures, and smart devices stay covered.\u003c\/li\u003e\n\u003cli\u003eFuel and job software still take a cut.\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\u003eOwner take-home\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eFixed overhead is \u003cstrong\u003e$60,000\u003c\/strong\u003e a year.\u003c\/li\u003e\n\u003cli\u003eYear 1 payroll is \u003cstrong\u003e$190,000\u003c\/strong\u003e.\u003c\/li\u003e\n\u003cli\u003eYear 5 payroll rises to \u003cstrong\u003e$505,000\u003c\/strong\u003e.\u003c\/li\u003e\n\u003cli\u003eCallbacks, warranty work, and paid leads reduce profit.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eIs scaling a plumbing company profitable?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eYes, \u003cstrong\u003ePlumbing Service\u003c\/strong\u003e can scale profitably if demand, licensed labor, routing, and dispatch keep trucks busy; this model grows lead plumber capacity from \u003cstrong\u003e10 FTE\u003c\/strong\u003e in Year 1 to \u003cstrong\u003e30 FTE\u003c\/strong\u003e in Year 5, plus junior plumbers from \u003cstrong\u003e0\u003c\/strong\u003e to \u003cstrong\u003e20 FTE\u003c\/strong\u003e. Profit rises with more completed jobs, but overhead also climbs with payroll, marketing, software, vehicles, and service support. \u003cstrong\u003eUnderused vans\u003c\/strong\u003e, slow hiring, cash timing, licensing limits, and higher customer acquisition costs can cut owner take-home.\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\u003eWhat improves profit\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eKeep trucks on paid jobs\u003c\/li\u003e\n\u003cli\u003eMatch dispatch to demand\u003c\/li\u003e\n\u003cli\u003eGrow licensed labor steadily\u003c\/li\u003e\n\u003cli\u003eUse junior plumbers for support\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"card_smpl blue_card\"\u003e\n\u003cdiv class=\"card_smpl_header\"\u003e\n\u003cimg src=\"\/cdn\/shop\/files\/fml_20_fml-Orange-blog-colons-icon.svg\" alt=\"Icon\" class=\"icon_how_to_use\"\u003e\u003ch3\u003eWhat hurts take-home\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eIdle vans waste payroll\u003c\/li\u003e\n\u003cli\u003eSlow hiring caps growth\u003c\/li\u003e\n\u003cli\u003eCash timing strains the business\u003c\/li\u003e\n\u003cli\u003eLicensing and CAC can squeeze margin\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 does a plumbing company owner make by size?\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\n\u003cp\u003eFor Plumbing Service, the provided model shows owner pay at \u003cstrong\u003e$80,000\/year\u003c\/strong\u003e with \u003cstrong\u003e2 vans\u003c\/strong\u003e, \u003cstrong\u003e1 owner\/operator\u003c\/strong\u003e, \u003cstrong\u003e1 lead plumber at $70,000\u003c\/strong\u003e, and \u003cstrong\u003e1 dispatcher at $40,000\u003c\/strong\u003e; service quality also matters, as shown in \u003ca href=\"\/blogs\/kpi-metrics\/plumber\"\u003eWhat Is The Current Customer Satisfaction Level For Plumbing Service?\u003c\/a\u003e. Owner income is easiest to cover when the owner still performs billable work; multi-truck profit only improves if dispatch, lead flow, hiring, and first-time fix rates keep trucks busy.\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 by size\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eSolo: owner labor drives income\u003c\/li\u003e\n\u003cli\u003eOne truck: pay depends on billable hours\u003c\/li\u003e\n\u003cli\u003eTwo vans: owner pay is \u003cstrong\u003e$80,000\u003c\/strong\u003e\n\u003c\/li\u003e\n\u003cli\u003eBase payroll totals \u003cstrong\u003e$190,000\/year\u003c\/strong\u003e\n\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\u003eProfit levers\u003c\/h3\u003e\n\u003c\/div\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eKeep vans booked daily\u003c\/li\u003e\n\u003cli\u003eProtect first-time fix rates\u003c\/li\u003e\n\u003cli\u003eHire before demand slips\u003c\/li\u003e\n\u003cli\u003eUse dispatch to cut idle time\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003cbr\u003e\n\n\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003eWant the six plumbing income drivers?\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-main-income-drivers\" aria-label=\"Main income drivers for a plumbing service\"\u003e\u003carticle class=\"driver-option is-cards\"\u003e\u003cdiv class=\"main-driver-grid\"\u003e\n\u003carticle class=\"main-driver-card is-primary\"\u003e\u003cdiv class=\"main-driver-heading\"\u003e\n\u003cspan class=\"driver-rank\"\u003e1\u003c\/span\u003e\u003ch4\u003eService Mix\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$225-$960\u003c\/strong\u003e\u003cp\u003eEmergency repairs at about $225 and installs near $960 set the average job size, so mix shifts move revenue and owner income fast.\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\u003eTechnician Utilization\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e1.5-10h\u003c\/strong\u003e\u003cp\u003eKeeping techs on billable work instead of idle time turns payroll into revenue, and longer installs use the crew better.\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\u003eGross Margin\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e80%\u003c\/strong\u003e\u003cp\u003eA strong Year 1 margin leaves room for parts and smart devices, so small cost creep can cut take-home quickly.\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\u003eCrew Size\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e2 vans\u003c\/strong\u003e\u003cp\u003eThe launch starts with 2 vans, and more trucks plus techs raise job capacity, which is what lets revenue scale.\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\u003eLead Flow\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$150 CAC\u003c\/strong\u003e\u003cp\u003eYear 1 customer acquisition cost (CAC) is $150, so cheaper leads and more repeat calls improve profit.\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\u003eCash Buffer\u003c\/h4\u003e\n\u003c\/div\u003e\n\u003cstrong\u003e$712K\u003c\/strong\u003e\u003cp\u003eFixed overhead runs about $5,000 a month, and cash dips to a $712K low in month 18, so reserves decide how safely you grow.\u003c\/p\u003e\u003c\/article\u003e\n\u003c\/div\u003e\u003c\/article\u003e\u003c\/section\u003e\u003cbr\u003e\u003ch2\u003e\u003cspan style=\"color: #126CFF;\"\u003ePlumbing Service Core Six Income Drivers\u003c\/span\u003e\u003c\/h2\u003e\u003cbr\u003e\u003cbr\u003e\n\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eService Mix And Average Ticket\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row1\"\u003e\n    \u003ch3\u003eService Mix And Average Ticket\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eAverage ticket\u003c\/strong\u003e is the cash each dispatch brings in, and the service mix sets how fast revenue grows. In this model, a 15-hour emergency repair at \u003cstrong\u003e$150\/hour\u003c\/strong\u003e is \u003cstrong\u003e$2,250\u003c\/strong\u003e, an 8-hour new installation at \u003cstrong\u003e$120\/hour\u003c\/strong\u003e is \u003cstrong\u003e$960\u003c\/strong\u003e, diagnostic service is \u003cstrong\u003e$130\u003c\/strong\u003e, and a maintenance plan is \u003cstrong\u003e$50\u003c\/strong\u003e.\u003c\/p\u003e\n    \u003cp\u003eThat higher ticket only helps if the job still covers labor, parts, callbacks, permits, and customer acquisition. If the ticket looks big but the crew is fixing the same issue twice, owner income drops because extra labor and warranty work eat the cash before it reaches profit.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row1\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003ePrice Around Cost, Not Just Hours\u003c\/h3\u003e\n      \u003cp\u003eTrack \u003cstrong\u003erevenue per dispatch\u003c\/strong\u003e, \u003cstrong\u003egross margin\u003c\/strong\u003e, and \u003cstrong\u003ecallback rate\u003c\/strong\u003e by job type. Split each quote into labor hours, parts, permit fees, and CAC so you can see whether the ticket really pays for the visit and leaves cash for owner pay.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eCompare repair, install, and diagnostic margin.\u003c\/li\u003e\n        \u003cli\u003eTest add-ons that lift ticket size.\u003c\/li\u003e\n        \u003cli\u003eCut work that misses payback.\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eA \u003cstrong\u003e$2,250\u003c\/strong\u003e repair call can beat a \u003cstrong\u003e$960\u003c\/strong\u003e install, but only if it closes cleanly and does not create unpaid rework. Small tickets like \u003cstrong\u003e$50\u003c\/strong\u003e maintenance plans need repeat value and follow-on work, not one-off profit.\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;\"\u003eTechnician Utilization And Billable Hours\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"right-row2\"\u003e\n    \u003ch3\u003eBillable Hours Per Truck\u003c\/h3\u003e\n    \u003cp\u003eThis driver is the share of paid time that turns into billed work. In plumbing, \u003cstrong\u003ebillable hours\u003c\/strong\u003e and \u003cstrong\u003ecompleted calls per truck\u003c\/strong\u003e matter more than just adding vans. When a truck finishes more jobs without adding the same office, insurance, and dispatch cost, \u003cstrong\u003egross profit\u003c\/strong\u003e improves and more cash is left for owner pay.\u003c\/p\u003e\n    \u003cp\u003eThe mix is shifting, too: installation hours rise from \u003cstrong\u003e80\u003c\/strong\u003e in Year 1 to \u003cstrong\u003e100\u003c\/strong\u003e in Year 5, while emergency repair hours fall from \u003cstrong\u003e15\u003c\/strong\u003e to \u003cstrong\u003e11\u003c\/strong\u003e. So routing, scheduling, and parts readiness matter more as the shop scales, because drive time and callbacks can eat the extra billable time.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row2\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Calls, Fix Rate, And Drive Time\u003c\/h3\u003e\n      \u003cp\u003eTrack \u003cstrong\u003ecalls per tech\u003c\/strong\u003e, \u003cstrong\u003ebillable hours\u003c\/strong\u003e, \u003cstrong\u003edrive time\u003c\/strong\u003e, \u003cstrong\u003ecallback rate\u003c\/strong\u003e, \u003cstrong\u003efirst-time fix rate\u003c\/strong\u003e, and \u003cstrong\u003eparts availability\u003c\/strong\u003e. Here’s the quick math: \u003cstrong\u003eutilization = billable hours ÷ paid hours\u003c\/strong\u003e. If billable hours stay flat while drive time or callbacks rise, owner income falls even when the schedule looks full.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eSet route density by zip code\u003c\/li\u003e\n        \u003cli\u003eStock common parts on trucks\u003c\/li\u003e\n        \u003cli\u003eBook install windows in blocks\u003c\/li\u003e\n        \u003cli\u003eReview callbacks every week\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eUse those numbers to cut unpaid return visits and idle gaps. Better first-time fix rates mean more finished calls per day, fewer rework costs, and faster cash collection, which helps the owner turn the same labor base into more take-home profit.\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;\"\u003eLabor, Materials, And Gross 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\u003eLabor, Materials, Gross Margin\u003c\/h3\u003e\n    \u003cp\u003eIn plumbing, owner pay improves when every job includes \u003cstrong\u003elabor burden\u003c\/strong\u003e (wages plus payroll taxes and benefits), parts, fixtures, smart devices, subcontractors, permits, and warranty work. If Year 1 parts and fixtures are \u003cstrong\u003e15%\u003c\/strong\u003e of revenue and smart devices are \u003cstrong\u003e5%\u003c\/strong\u003e, the model can hold about \u003cstrong\u003e80%\u003c\/strong\u003e gross margin before payroll and overhead. One unpriced callback can wipe out the margin from several clean jobs.\u003c\/p\u003e\n    \u003cp\u003e\u003cstrong\u003eGross profit\u003c\/strong\u003e is not take-home pay. After office costs, vehicles, insurance, marketing, and reserves, the cash left for the owner can be much smaller, so pricing has to protect margin on the front end, not hope volume fixes it later.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row3\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003ePrice It Before You Book It\u003c\/h3\u003e\n      \u003cp\u003eBuild every estimate around \u003cstrong\u003elabor hours\u003c\/strong\u003e, \u003cstrong\u003eparts and fixtures\u003c\/strong\u003e, smart device cost, permit fees, and a warranty allowance. Here’s the quick math: if the quote only covers the visit, the margin leaks through extras and rework. Track actual gross margin by job type each month and compare it with the estimate.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eTrack margin by job type.\u003c\/li\u003e\n        \u003cli\u003ePrice callbacks as real cost.\u003c\/li\u003e\n        \u003cli\u003eSeparate parts from labor.\u003c\/li\u003e\n        \u003cli\u003eReserve cash for warranty work.\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eIf labor burden rises or material use runs hot, raise prices fast. That keeps gross margin intact and gives the owner a better shot at steady distributions after 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 step3\"\u003e3\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eFleet Size And Technician Count\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n\u003cdiv class=\"right-row4\"\u003e\n\u003ch3\u003eFleet Size and Technician Count\u003c\/h3\u003e\n\u003cp\u003e\u003cstrong\u003eTrucks add capacity, not profit.\u003c\/strong\u003e This model starts with \u003cstrong\u003e$80,000\u003c\/strong\u003e for \u003cstrong\u003e2 vans\u003c\/strong\u003e, then grows lead plumber staffing from \u003cstrong\u003e10 to 30 full-time equivalents (FTE)\u003c\/strong\u003e and junior plumber staffing from \u003cstrong\u003e0 to 20 FTE\u003c\/strong\u003e. If those vans sit idle, fixed vehicle cost turns into owner-income drag, because payroll, fuel, insurance, and dispatch do not shrink with weak demand.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eMore technicians only help when lead flow and supervision can keep them busy.\u003c\/strong\u003e The key test is whether each added van and hire lifts billable work faster than it lifts overhead. If the calendar is thin, you buy capacity without profit, and cash available for owner pay drops even if revenue looks higher on paper.\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cdiv class=\"left-row4\"\u003e\n\u003cdiv class=\"tips-box\"\u003e\n\u003ch3\u003eTrack Utilization Before You Add Vans\u003c\/h3\u003e\n\u003cp\u003eWatch \u003cstrong\u003ebillable hours per tech\u003c\/strong\u003e, \u003cstrong\u003ejobs per truck\u003c\/strong\u003e, \u003cstrong\u003edrive time\u003c\/strong\u003e, \u003cstrong\u003ecallback rate\u003c\/strong\u003e, and \u003cstrong\u003egross margin after payroll\u003c\/strong\u003e. Add a van only when booked work can keep it moving. One clean rule: if a truck is not earning enough billable work to cover its full monthly cost, it is cutting into owner income.\u003c\/p\u003e\n\u003cul class=\"lst_crct_blog\"\u003e\n\u003cli\u003eTrack jobs per truck weekly.\u003c\/li\u003e\n\u003cli\u003eCompare payroll to gross margin.\u003c\/li\u003e\n\u003cli\u003eDelay hires when vans sit idle.\u003c\/li\u003e\n\u003cli\u003eTrain juniors only with lead capacity.\u003c\/li\u003e\n\u003c\/ul\u003e\n\u003cp\u003eJunior plumbers only help when a lead plumber can train, supervise, and dispatch them without hurting first-time fix rates. Keep an eye on whether lead plumber staffing stays inside the \u003cstrong\u003e10 to 30 FTE\u003c\/strong\u003e range with enough paid calls to support it. If spare trucks outpace demand, fix scheduling and sales first.\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 Flow And Repeat Customers\u003c\/span\u003e\u003c\/h3\u003e\u003cbr\u003e\n\u003cdiv class=\"container_new_design_timeline\"\u003e\n  \u003cdiv class=\"left-row5\"\u003e\n    \u003ch3\u003eReliable Lead Flow\u003c\/h3\u003e\n    \u003cp\u003e\u003cstrong\u003eLead flow\u003c\/strong\u003e means steady booked calls from ads, ref\nerrals, and repeat customers. In this model, marketing spend grows from \u003cstrong\u003e$15,000\u003c\/strong\u003e in Year 1 to \u003cstrong\u003e$70,000\u003c\/strong\u003e in Year 5, while \u003cstrong\u003eCAC\u003c\/strong\u003e (customer acquisition cost) improves from \u003cstrong\u003e$150\u003c\/strong\u003e to \u003cstrong\u003e$120\u003c\/strong\u003e. That matters because empty truck time cuts profit fast. More leads help only if close rate and average ticket stay strong.\u003c\/p\u003e\n    \u003cp\u003e\u003cstrong\u003eMaintenance plans\u003c\/strong\u003e rising from \u003cstrong\u003e10%\u003c\/strong\u003e to \u003cstrong\u003e45%\u003c\/strong\u003e of the mix shift revenue toward repeat work, which smooths cash flow and reduces emergency lead buying. If CAC is measured per booked customer, \u003cstrong\u003e$15,000\u003c\/strong\u003e buys about \u003cstrong\u003e100\u003c\/strong\u003e and \u003cstrong\u003e$70,000\u003c\/strong\u003e buys about \u003cstrong\u003e583\u003c\/strong\u003e. What this estimate hides: no-shows, callbacks, and low-value jobs.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"right-row5\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Booked Work, Not Just Leads\u003c\/h3\u003e\n      \u003cp\u003eTrack \u003cstrong\u003ebooked jobs\u003c\/strong\u003e, \u003cstrong\u003eclose rate\u003c\/strong\u003e, \u003cstrong\u003eaverage ticket\u003c\/strong\u003e, and \u003cstrong\u003erepeat customer value\u003c\/strong\u003e. Tie marketing spend to booked work, not clicks, because cash comes from completed calls and renewals. If close rate slips or maintenance renewals stall, the same ad spend buys less revenue and more idle time.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eMeasure booked jobs by source.\u003c\/li\u003e\n        \u003cli\u003eWatch close rate weekly.\u003c\/li\u003e\n        \u003cli\u003eSplit new and repeat revenue.\u003c\/li\u003e\n        \u003cli\u003eTrack maintenance renewals.\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eThe owner’s take-home income improves when repeat work fills slow weeks and cuts emergency lead buying. A mix with \u003cstrong\u003e45%\u003c\/strong\u003e maintenance plans is usually steadier than one built only on one-off repairs, so gross margin and cash flow are easier to protect.\u003c\/p\u003e\n    \u003c\/div\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"timeline\"\u003e\u003c\/div\u003e\n  \u003cdiv class=\"step-circle step5\"\u003e5\u003c\/div\u003e\n\u003c\/div\u003e\u003cbr\u003e\u003cbr\u003e\u003ch3\u003e\u003cspan style=\"color: #126CFF;\"\u003eOverhead, Reserves, And Cash Flow\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 And Cash Reserves\u003c\/h3\u003e\n    \u003cp\u003eCash in the bank pays the owner, not booked revenue. In this plumbing model, \u003cstrong\u003efixed overhead is $5,000 per month\u003c\/strong\u003e, or \u003cstrong\u003e$60,000 a year\u003c\/strong\u003e, before any owner draw. That covers rent, utilities, insurance, software, supplies, professional services, and the website, so every month has to clear that cash hurdle first.\u003c\/p\u003e\n    \u003cp\u003eThe \u003cstrong\u003e$117,000 startup capex\u003c\/strong\u003e for vans, diagnostic equipment, tools, office setup, IT, and website development is a cash use, not profit. Reserves need to cover vehicles, callbacks, slow periods, insurance, debt, and growth before distributions. One strong month can still leave the owner short next month if cash is pulled out too early.\u003c\/p\u003e\n  \u003c\/div\u003e\n  \u003cdiv class=\"left-row6\"\u003e\n    \u003cdiv class=\"tips-box\"\u003e\n      \u003ch3\u003eTrack Cash Before Owner Pay\u003c\/h3\u003e\n      \u003cp\u003eMeasure \u003cstrong\u003ecash collected\u003c\/strong\u003e against \u003cstrong\u003e$5,000 monthly overhead\u003c\/strong\u003e, then set aside a reserve bucket before paying distributions. Track cash tied up in vehicles, parts, warranty callbacks, and any debt service, because those items hit bank balance fast even when revenue looks fine on paper.\u003c\/p\u003e\n      \u003cul class=\"lst_crct_blog\"\u003e\n        \u003cli\u003eMatch receipts to monthly overhead\u003c\/li\u003e\n        \u003cli\u003eSeparate reserve cash from draw cash\u003c\/li\u003e\n        \u003cli\u003eWatch callbacks and vehicle repair spend\u003c\/li\u003e\n        \u003cli\u003eDelay distributions until reserves are funded\u003c\/li\u003e\n      \u003c\/ul\u003e\n      \u003cp\u003eHere’s the quick math: \u003cstrong\u003e$5,000 per month\u003c\/strong\u003e means \u003cstrong\u003e$60,000 a year\u003c\/strong\u003e in fixed cash burn before owner pay. If collections slip or a truck needs work, the owner’s income drops first, because cash gets trapped in operating costs instead of available for draws.\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 low, base, and high plumbing owner-income cases\n\u003c\/span\u003e\u003c\/h2\u003e\n\u003csection class=\"fml-scenario-table\" aria-label=\"Plumbing Service Owner Income Scenarios\" data-site-name=\"Financial Models Lab\" data-site-url=\"https:\/\/financialmodelslab.com\" data-source-title=\"Plumbing Service Owner Income Scenarios\" data-note-label=\"Planning note\" data-note-text=\"These 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 swings with call volume, ticket size, and how much fixed payroll and truck cost the business has to carry.\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 paths for a plumbing service.\u003c\/caption\u003e\n\u003cthead\u003e\u003ctr\u003e\n\u003cth class=\"fml-scenario-table-stub\" scope=\"col\" data-export-value=\"Scenario\"\u003eScenario\u003c\/th\u003e\n\u003cth class=\"fml-scenario-table-column\" scope=\"col\" data-export-value=\"Low Case\"\u003e\n\u003cspan class=\"fml-scenario-column-title\"\u003eLow Case\u003c\/span\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eSalary at risk\u003c\/span\u003e\n\u003c\/th\u003e\n\u003cth class=\"fml-scenario-table-column\" scope=\"col\" data-export-value=\"Base Case\"\u003e\n\u003cspan class=\"fml-scenario-column-title\"\u003eBase Case\u003c\/span\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eSalary covered\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\"\u003eUpside only\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=\"Revenue stays below the level needed to fully cover the owner's pay, so cash to the owner is thin or delayed.\"\u003eRevenue stays below the level needed to fully cover the owner's pay, so cash to the owner is thin or delayed.\u003c\/td\u003e\n\u003ctd data-export-value=\"Revenue follows the modeled break-even path, so the owner can cover a standard salary if jobs stay on plan.\"\u003eRevenue follows the modeled break-even path, so the owner can cover a standard salary if jobs stay on plan.\u003c\/td\u003e\n\u003ctd data-export-value=\"Revenue climbs to the upside path, creating room for stronger pre-tax owner cash before reserves, debt, and taxes.\"\u003eRevenue climbs to the upside path, creating room for stronger pre-tax owner cash before reserves, debt, and taxes.\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=\"Two vans and a small team still carry rent, payroll, fuel, and insurance, but call volume is too light to cover the full owner draw.\"\u003eTwo vans and a small team still carry rent, payroll, fuel, and insurance, but call volume is too light to cover the full owner draw.\u003c\/td\u003e\n\u003ctd data-export-value=\"Year 1 revenue is about $373,000, with a 71% contribution margin and about $185,000 of non-owner fixed burden before reserves.\"\u003eYear 1 revenue is about $373,000, with a 71% contribution margin and about $185,000 of non-owner fixed burden before reserves.\u003c\/td\u003e\n\u003ctd data-export-value=\"Two vans stay busy, the team handles more installs and maintenance, and overhead is spread across a larger call base.\"\u003eTwo vans stay busy, the team handles more installs and maintenance, and overhead is spread across a larger call base.\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=\"Under 71% contribution margin; fixed payroll and rent; fuel and insurance; low job count; owner in the field\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eUnder 71% contribution margin\u003c\/li\u003e\n\u003cli\u003efixed payroll and rent\u003c\/li\u003e\n\u003cli\u003efuel and insurance\u003c\/li\u003e\n\u003cli\u003elow job count\u003c\/li\u003e\n\u003cli\u003eowner in the field\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"71% contribution margin; $185k fixed burden; 2 vans; owner salary; dispatch and tech payroll\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003e71% contribution margin\u003c\/li\u003e\n\u003cli\u003e$185k fixed burden\u003c\/li\u003e\n\u003cli\u003e2 vans\u003c\/li\u003e\n\u003cli\u003eowner salary\u003c\/li\u003e\n\u003cli\u003edispatch and tech payroll\u003c\/li\u003e\n\u003c\/ul\u003e\u003c\/td\u003e\n\u003ctd data-export-value=\"Higher call volume; larger ticket mix; crew capacity; overhead spread; reserve build\"\u003e\u003cul class=\"fml-scenario-list\"\u003e\n\u003cli\u003eHigher call volume\u003c\/li\u003e\n\u003cli\u003elarger ticket mix\u003c\/li\u003e\n\u003cli\u003ecrew capacity\u003c\/li\u003e\n\u003cli\u003eoverhead spread\u003c\/li\u003e\n\u003cli\u003ereserve build\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=\"Below pay coverage\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003eBelow pay coverage\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eThin income\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$80,000 salary target\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$80,000 salary target\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-soft\"\u003eOn-plan income\u003c\/span\u003e\n\u003c\/td\u003e\n\u003ctd data-export-value=\"$200,000 pre-tax cash\"\u003e\n\u003cstrong class=\"fml-scenario-range\"\u003e$200,000 pre-tax cash\u003c\/strong\u003e\u003cspan class=\"fml-scenario-badge is-warning\"\u003eUpside case\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 a weak launch, slow demand, or a month where the owner has to leave pay in the business.\"\u003eUse this to stress-test a weak launch, slow demand, or a month where the owner has to leave pay in the business.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this as the main planning case for a small service crew with steady emergency repairs, installs, and tight cost control.\"\u003eUse this as the main planning case for a small service crew with steady emergency repairs, installs, and tight cost control.\u003c\/td\u003e\n\u003ctd data-export-value=\"Use this to test a strong sales year and faster scaling, but treat it as an upside case, not a promise.\"\u003eUse this to test a strong sales year and faster scaling, but treat it as an upside case, not a promise.\u003c\/td\u003e\n\u003c\/tr\u003e\n\u003c\/tbody\u003e\n\u003c\/table\u003e\u003c\/div\u003e\n\u003cdiv class=\"fml-scenario-table-note\"\u003e\n\u003cspan class=\"fml-scenario-table-note-icon\" aria-hidden=\"true\"\u003e!\u003c\/span\u003e\u003cp\u003e\u003cstrong\u003ePlanning note:\u003c\/strong\u003e These 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":49303954391283,"sku":"plumber-owner-makes","price":0.0,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0522\/6191\/2762\/files\/plumber-owner-makes.webp?v=1782689552","url":"https:\/\/financialmodelslab.com\/products\/plumber-owner-makes","provider":"Financial Models Lab","version":"1.0","type":"link"}