CRM sales data can help you forecast pool repair revenue, but adding up open estimates will usually overstate what your crew can deliver. A heater replacement waiting on approval, a pump repair awaiting parts and a completed filter installation belong in different forecast categories, even when their estimated values look equally promising.
A useful forecast answers a narrower question: How much repair work are we likely to complete during a specific period, given customer decisions, parts availability and technician capacity?
The method below turns customer and job records into a practical monthly forecast. You can run the calculations in a spreadsheet if your CRM does not provide forecasting tools.
Define Which Revenue Number You Are Forecasting
Before calculating anything, separate sales activity from completed work and cash collections. These numbers answer different business questions.
| Measure | What it represents | What it helps you plan |
|---|---|---|
| Open estimate value | Repair proposals customers have not approved | Follow-up workload and potential demand |
| Approved backlog | Authorized work not yet completed | Scheduling and purchasing |
| Completed repair value | Work finished during the period | Operational revenue performance |
| Expected collections | Payments likely to arrive during the period | Cash availability |
For an operational repair forecast, use completed repair value as your main measure. Keep recurring maintenance revenue separate so a stable service base does not hide a weakening repair pipeline.
Use consistent amounts, such as repair charges after discounts and before sales tax. A deposit is a cash event, not additional repair revenue on top of the full job price. Confirm formal accounting treatment with your accountant.
Your CRM sales forecast should have a clear cutoff date and reporting window, such as a snapshot taken October 31 for work expected to finish during November.
Build CRM Sales Records That Support a Forecast
A customer name and an estimate total are not enough. Each repair opportunity needs enough detail to explain its value, likelihood and expected timing.
At minimum, capture:
- Opportunity identity: One repair record connected to the homeowner, property and affected equipment.
- Commercial details: Current estimate value, approval status and the latest estimate version.
- Timing: Estimate date, last customer response and expected completion date.
- Operational readiness: Diagnostic status, required parts and confirmed availability.
- Labor requirements: Estimated technician hours and any specialist skills needed.
- Outcome: Completed value, completion date or a documented lost-job reason.
Keep one opportunity for one buying decision. Revising a heater estimate should not create a second revenue opportunity unless it represents genuinely separate work. Alternative equipment options should not all count as potential sales.
If your intake records are inconsistent, start with a CRM system that keeps pool leads connected to their property and follow-up history. Forecasting becomes much harder when approval details live in texts while job requirements sit in a technician’s notebook.
Separate Customer Approval From Job Readiness
A single stage called “in progress” hides too much. Track the customer decision separately from operational readiness.
For example, a repair might be approved but awaiting a specific control board. Another might have parts available but still need authorization. Those opportunities have different risks, even if both are expected to finish next month.
Useful commercial statuses include estimate sent, approved, declined and completed. Readiness fields can identify diagnosis pending, parts unconfirmed, parts available and scheduled.
This distinction makes CRM sales data more useful because it separates the chance of winning work from the chance of delivering it on time. It also prevents an approved job from automatically becoming a promise of this month’s revenue.
Calculate a Probability-Weighted Repair Forecast
For each opportunity, estimate two probabilities over the same reporting window:
Expected completed value = Job value × Probability of approval within the period × Probability of completion within the period, given approval.
For approved jobs, the approval probability is 100%. Their completion probability can still be lower because of cancellations, parts delays or scheduling constraints. Adjust for those risks using your own history.
For unsigned estimates, both probabilities matter. A homeowner might approve a heater replacement this month without the installation finishing this month.
A Worked Example With Hypothetical Numbers
Suppose your month-start records contain the following repair opportunities. These percentages are illustrative, not pool-industry benchmarks.
| Opportunity group | Total job value | Approval probability this month | Completion probability, given approval | Expected completed value |
|---|---|---|---|---|
| Approved repair backlog | $12,000 | 100% | 90% | $10,800 |
| Unsigned pump estimates | $10,000 | 60% | 75% | $4,500 |
| Unsigned heater estimates | $15,000 | 40% | 50% | $3,000 |
| Total | $37,000 | $18,300 |
The pump calculation is $10,000 × 0.60 × 0.75 = $4,500.
The open and approved opportunities total $37,000, but the probability-weighted forecast is $18,300 before a detailed capacity check. That is a more defensible planning number than treating every estimate as an upcoming sale.
A CRM sales forecast is an expected value across possible outcomes, not a prediction that you will complete exactly $18,300. One large heater installation can make the actual result noticeably higher or lower.
Derive Probabilities From Comparable Opportunities
Use historical snapshots rather than assigning a percentage because a stage “feels close.”
For example, review pump estimates that were open at the start of previous months. Determine what share received approval by month-end. Among those approved, determine what share also finished by month-end. Those two observations match the formula above.
Compare opportunities with similar repair types, stages and ages. An estimate sent yesterday should not inherit the same assumptions as an unanswered proposal from three months ago.
Also avoid measuring only jobs that eventually closed. Include declined and unresolved opportunities from the original group, or your approval rate will look artificially strong.
If you have little history, begin with broad categories and clearly labeled assumptions. A percentage based on three heater estimates is not a reliable benchmark. Update your CRM sales assumptions as completed outcomes accumulate, rather than presenting small samples as precise predictions.
Check Whether Your Crew Can Deliver the Forecast
A commercially plausible forecast can still be operationally impossible.
Start with technician hours actually available for repairs. Deduct recurring route commitments, travel, training, time off and a reasonable allowance for callbacks. Then check whether the remaining hours match the skills required by the likely repair mix.
Suppose the example above represents 51 probability-weighted labor hours and your team has 60 qualified repair hours available. That passes an initial capacity screen, but it does not prove every job fits. Most of the work could require the same technician or fall in the same week.
Review the likely jobs individually. Confirm access arrangements, supplier dates and any required specialist involvement. A tentative delivery date should not carry the same confidence as a part already received.
When capacity is insufficient, move specific jobs into the next period and recalculate. Do not simply reduce the entire revenue forecast by an arbitrary percentage. Different jobs produce different revenue and margin per labor hour.
Keeping leads, estimates and jobs connected in one workflow helps the office see when an apparently strong opportunity cannot realistically become completed work yet.

Adjust for Seasonality, Aging and New Demand
Historical averages need context. Heater demand, freeze-related damage and equipment usage can vary by location and season. Use comparable local periods when enough history exists, rather than applying a national seasonal assumption to every market.
Estimate age also matters. Review opportunities with no recent homeowner response and either revise their probability, update their expected date or close them with a documented reason. Repeatedly pushing an old estimate into next month creates a permanent layer of inflated demand.
Keep expected new demand separate from opportunities already recorded. If you regularly diagnose and complete small repairs within the same month, a forecast based only on month-start opportunities will miss that work.
You can add a separate allowance based on historical repairs that were both created and completed within comparable months. Label it clearly and check that it does not include existing opportunities.
This gives your CRM sales forecast two visible components: expected completed value from known jobs and a historical allowance for new, quick-turn work. Keep the second component conservative when demand is volatile or capacity is already tight.
Build Scenarios Without Inventing Precision
A single number is useful for planning, but it should sit beside a realistic range.
Your base case should reflect historical conversion, current parts information and deliverable capacity. A downside case can move jobs with unresolved dependencies into the following month. An upside case can include additional approvals only when parts and labor could support them.
Name the jobs that explain the differences. “Two heater installations slip because delivery is unconfirmed” is actionable. “Revenue falls 20%” tells the team much less.
Check gross margin alongside revenue, especially when replacement equipment makes up a large share of the forecast. A high-value installation with expensive equipment and substantial labor may contribute less gross profit than several smaller repairs.
For planning purposes, estimate gross profit as completed repair value minus associated equipment, materials and direct labor costs. Apply your company’s costing policy consistently.
CRM sales data should help you decide which work to pursue and schedule, not just produce an impressive top-line total.
Keep the Cash Forecast Separate
Completed repairs do not necessarily produce cash in the same period. Some homeowners pay immediately, others pay later and some jobs include deposits collected before completion.
Build expected collections from outstanding invoices, payment terms, deposit arrangements and actual customer payment history. Include expected payments from earlier completed jobs, not just work in the current repair forecast.
For financed projects, verify the applicable funding conditions and timing rather than assuming approval means cash has arrived.
The distinction matters when equipment purchases precede installation. A month can look healthy on completed repair value while still requiring cash to cover supplier bills. Likewise, deposits can strengthen current cash flow without increasing the amount of work completed.
Review revenue and collections together, but never add them together. They are different views of the same business activity.
Review the Forecast Weekly and Measure What Changed
Choose a consistent weekly review time. The office should check homeowner decisions, the service manager should confirm delivery constraints and the owner should review the revised outlook.
For each meaningful opportunity, ask whether its value, approval probability or completion date has changed. Assign an owner and next action to unresolved dependencies, such as confirming a part shipment or securing customer authorization.
Save the original forecast rather than overwriting it. Keep revisions alongside it so you can distinguish what was knowable at the cutoff date from information received later.
At month-end, compare forecast completed value with actual completed value. Then classify the main differences: approvals missed, jobs delayed, scope changed, capacity reduced or new work arrived unexpectedly.
If your CRM sales forecast was $18,000 and actual completed work was $15,000, the $3,000 shortfall is the starting point, not the diagnosis. Determine whether work was lost or merely shifted into next month.
Track absolute dollar error across several periods and watch for a persistent tendency to overforecast. That pattern often points to stale opportunities, optimistic timing or missing capacity constraints.
Use Contractor Growth Stories as Workflow Research
Articles about contractors scaling with CRM software can provide useful questions for your own operation. ServiceTitan’s contractor blog is one place to look for growth stories and discussions of connected sales and field-service processes. Look for explanations of what changed operationally, not just a headline revenue figure.
For another perspective, browse Reddit discussions about contractor CRM software. These discussions can help surface practical concerns to investigate, such as technician adoption, duplicate entry and inconsistent follow-up.
Neither vendor-selected stories nor anonymous posts establish your expected return. Use them to develop questions: Did the contractor improve record quality? Were estimates followed up consistently? Did scheduling keep pace with sales?
Your own conversion history, completion dates and labor availability remain the evidence for your forecast.
Frequently Asked Questions
How much history do I need to forecast repair revenue? Start with the records you have, but label assumptions when samples are small. A full seasonal cycle provides more context for weather-sensitive work. Until then, use broad repair categories and wider scenario ranges.
Should approved repairs count at their full value? Include their full value in approved backlog. For a period-specific completed-work forecast, adjust for the likelihood that they will actually finish before the cutoff date.
Can I forecast without automated CRM reporting? Yes. Use a controlled worksheet with one row per repair opportunity, consistent definitions and a saved cutoff-date snapshot. CRM sales records provide the inputs even when the calculations happen separately.
How often should I update the forecast? A weekly review is a practical starting point. Revisit major jobs sooner when approval, parts availability or technician capacity changes materially.
Start With One Month of Repair Opportunities
Choose your next reporting month, clean up the open repair records and separate customer approval from operational readiness. Calculate expected completed value, check capacity and save the forecast before the month begins.
SplashIQ brings customer CRM, equipment tracking, scheduling and field documentation into the pool service workflow. Those shared records can support the forecasting process, even when you maintain the forecast calculations in a separate worksheet.
The goal is a number your office can explain, your technicians can realistically deliver and your business can compare with actual results.
