Skip to content

erp.io CFO

Know if a second crew pays off before you hire it

Your recurring schedule already tells you most of next month's revenue. The CFO module turns it into a forecast, lets you test what-ifs, and walks you through a monthly close you can trust.

app.erp.io/service/reports
Insights · Last 12 weeks

Revenue

$48,210

+12%

Recurring clients

184

+9

Avg job margin

41%

+3 pts

1

Forecast from real bookings

Recurring weekly, biweekly and monthly visits become forward revenue, not a guess in a spreadsheet.

2

Scenarios in minutes

Add a crew, raise biweekly prices, lose a contract. See what happens to cash and margin.

3

A close you can finish

A monthly close checklist that knows your ledger, so the numbers are final and stay final.

A forecast that starts with your schedule

Most small-business forecasts start with last year's revenue and a hopeful growth line. A cleaning company has something better: a book of recurring clients who are already on the calendar. The CFO module reads those scheduled visits, their prices and billing terms, and builds the revenue baseline from them.

On the cost side it uses what the rest of erp.io already knows: labor from approved timesheets and pay rates, supply spend from purchase orders, and fixed costs from the ledger. The result is a forward view of revenue, payroll and cash that moves as your schedule moves.

  • Revenue baseline from booked recurring and one-off visits
  • Labor cost from real hours and pay rates, including overtime
  • Cash timing that respects autopay, net terms and payroll dates

Ask the questions owners actually ask

Scenarios let you change a few inputs and compare the result side by side with your baseline. The questions are the ones you already lie awake with.

Each scenario is saved, so you can come back to it after you've talked to your accountant or your spouse, and compare it against how the month actually turned out.

  • What if we add a second crew and a second car?
  • What if we raise biweekly prices and a few clients leave?
  • What if our largest office contract doesn't renew?
  • What if we open a new territory across town?

A monthly close that stays closed

The close is where small businesses cut corners, because it is tedious and nobody asks for it until tax season. The CFO module turns it into a short checklist tied to real data: payouts reconciled, tips paid out, payroll journal posted, open invoices reviewed, supply counts entered, adjustments made.

When everything is ticked, you lock the period. Nobody can backdate a refund into March after March is closed, which means the P&L you looked at on the 5th is still the P&L on the 25th.

app.erp.io/accounting/pnl
Profit & loss · September

Revenue

$52,380

Expenses

$37,940

Net

$14,440

Residential cleaningfrom auto$38,120
Commercial contractsfrom auto$14,260
Cleaner wagesfrom payroll−$24,880
Suppliesfrom inventory−$3,210
Card processing feesfrom stripe−$1,420

412 of 412 Stripe payouts matched to bank deposits

A day with maid.co

The second-crew question

Say you run two cleaners who work as a pair, you are fully booked on Tuesdays and Thursdays, and your waitlist keeps growing. The instinct is to hire two more people and buy another car. The fear is a slow month with double the payroll.

In the CFO module you copy your baseline and add the crew: two cleaners at their pay rate, the car payment and insurance, a supply kit, and the waitlist clients moved onto the calendar at your current biweekly price. You add a ramp so they reach full schedule over a couple of months instead of on day one.

The scenario shows the month cash gets tight and the point where the crew starts paying for itself. Maybe the answer is yes, but hire in the spring. Maybe it's yes, if you raise prices first. Either way you are deciding with your own numbers.

FAQ

Questions, answered

Do I need a finance background to use this?

No. The forecast builds itself from your schedule and ledger, and scenarios are a handful of plain inputs like crew count, prices and start dates. If you do work with a bookkeeper or fractional CFO, give them a login and they can refine assumptions and review the close with you.

How accurate is the forecast?

It is only as good as your schedule and books, which is the point: those are real. Booked recurring visits are a strong baseline, but cancellations, new clients and one-off jobs are estimates you control. Compare forecast to actual each month and adjust the assumptions that were off.

Does it need erp.io Accounting?

Forecasting and scenarios use your schedule, pricing and payroll data from the Service module, so they work early on. The monthly close and cost-side accuracy depend on the general ledger, so most companies run CFO alongside erp.io Accounting. Both use the same login and the same client records.

Can I plan for seasonality?

Yes. Cleaning demand shifts with holidays, move-out season and vacation rental turnover peaks. You can add seasonal adjustments to a scenario, for example extra deep cleans in spring or fewer office visits over the holidays, and see how they affect cash in each month.

What does locking a period actually do?

Once a month is closed and locked, entries dated in that month can't be created or edited without reopening it, which requires the right permission and leaves a record in the change log. That protects the numbers you already reported to your accountant, lender or partner.

Keep exploring

Run your whole cleaning company from one place.

Try every module free for 30 days. No card, no setup fee, and we'll help you bring your clients over.