
Affiliate disclosure: FieldOpsLab may earn a commission from some links on this page if affiliate links are added later. Our recommendations are based on evidence and buyer fit, not whether a product has an affiliate program.
Written by: LPSA
Evidence level: research_based
Product information checked: 2026-07-10
Pricing checked: 2026-07-10
Last meaningfully updated: 2026-07-10
Evidence status
Evidence status: This is a research_based cost-planning framework for US residential cleaning companies with 2–20 field workers and 1–2 office users. FieldOpsLab reviewed current public pricing pages and official vendor documentation for Jobber, Housecall Pro, ZenMaid, BookingKoala, Workiz, and selected payment, billing, communication, integration, import, export, and cancellation materials.
FieldOpsLab did not use first-party software invoices, first-party vendor quotes, first-party payment-processing statements, first-party short message service (SMS), phone, or artificial intelligence (AI) usage bills, or first-party migration, onboarding, training, or export invoices. FieldOpsLab did not use controlled software accounts, paid vendor accounts, or vendor demos.
FieldOpsLab did not verify final payable cost, live user or seat billing, provider billing, active-provider or deactivated-provider billing, payment-processing behavior, SMS or phone usage, AI usage, application programming interface (API) access, integration behavior, migration effort, onboarding effort, training effort, export completeness, support quality, cancellation or downgrade experience, post-cancellation access, taxes, or telecom fees. FieldOpsLab also did not verify QuickBooks or other accounting-integration behavior in a live account.
Calculator outputs and worksheet results are planning estimates, not vendor quotes or invoices. Public pricing can support a useful budget model, but it cannot prove what a specific cleaning business will ultimately pay.
Takeaway: Use this article to expose assumptions and unknown costs before a purchase. Do not use it as proof of a final monthly bill, annual bill, or contract amount.
Quick answer
A cleaning software cost calculator is useful only when every important assumption is visible. Team size affects the number of licensed users or providers. Job volume affects reminders, SMS, phone usage, invoices, payment volume, storage, campaign contacts, and the operational pressure that may force a higher plan. Billing cadence affects cash timing. Setup, migration, training, exports, and cancellation terms affect first-year and exit risk.
The comparison covers broad field service management (FSM), cleaning-specific, booking-first, communications-forward, customer relationship management (CRM), AI or call-handling, payment, accounting, and manual tool categories.
The safest approach is to calculate a software-only cost first, then show payment processing as a separate layer. A business that already pays card or Automated Clearing House (ACH) fees should compare its current processing cost with the proposed processing cost. The full new processing bill is not automatically an incremental software cost.
Unknown costs must stay visible. When a relevant cost is blank, the worksheet should exclude it from arithmetic only while labeling the result a known-cost subtotal. It should also display an unknown-cost count, the excluded categories, and the warning: Estimate incomplete: one or more costs are unknown.
This page provides a static cost-planning worksheet and formula-based calculator framework. It does not include working interactive calculator logic, and it does not present generated cost results.
Quick verdict
| Decision point | FieldOpsLab view |
|---|---|
| What the framework estimates | Known subscription, user or provider, add-on, usage, processing, implementation, migration, training, and related stack costs under visible assumptions. |
| What it does not prove | A guaranteed monthly cost, guaranteed annual cost, guaranteed total cost, final payable cost, vendor quote, final invoice, affordability, savings, or return on investment. |
| Most important rule | Unknown costs are not zero. An incomplete result must remain a known-cost subtotal with an unknown-cost warning and excluded-cost list. |
| Payment-processing rule | Show current, new, and incremental processing costs separately from software subscription cost. |
| Team-size rule | Use the buyer’s explicit licensed-user count or documented field-login count. Do not infer crew leads or compress providers to lower the model. |
| Billing rule | Separate month-to-month list price, annual-equivalent price, actual first-year cash due, promotional pricing, and renewal-year planning. |
| Evidence level | research_based. Public documentation supports planning inputs, but live billing and workflow behavior remain unverified in practice. |
Takeaway: A useful result is not one large number. It is a transparent breakdown that shows what is known, what is excluded, and what still requires written vendor confirmation.
In this article
- Key facts
- Cost-planning worksheet
- Buyer scenario
- Recommended inputs
- Formula-based calculator framework
- Payment-processing cost comparison
- Billing cadence and first-year cost
- Scenario analysis
- Product cost-model notes
- Pricing and hidden-cost implications
- Job volume and usage-cost drivers
- Vendor demo and verification questions
- What public evidence cannot verify
- Final recommendation
Key facts
| Item | Research-based finding |
|---|---|
| Target buyer | US residential cleaning company with 2–20 field workers and 1–2 office users comparing broad field service management (FSM), cleaning-specific, booking-first, communications-forward, customer relationship management (CRM), AI or call-handling, payment, accounting, and manual tools. |
| Primary purpose | Estimate known software and related stack costs by team size, licensed users, providers, job volume, usage, billing cadence, and one-time implementation assumptions. |
| Required cost split | Base subscription, user or provider charges, plan gates, add-ons, usage, processing, other monthly tools, and one-time implementation costs must remain separate. |
| Unknown-cost treatment | Blank or unresolved costs are flagged as unknown, excluded from the known-cost subtotal, and listed beside an incomplete-estimate warning. |
| Payment treatment | Software-only cost and payment-processing cost are separate. Compare current processing with new processing before calculating incremental cost. |
| Billing treatment | Month-to-month pricing, annual-equivalent pricing, annual prepayment, temporary promotion, first-year cash outlay, and renewal-year cost are different views. |
| People-count treatment | Licensed users come from a buyer-supplied custom count or a documented login model. Provider count follows the vendor’s definition and is not assumed to equal a discounted crew count. |
| Scenarios used | 2 field workers + 1 office user; 5 field workers + 1 office user; 10 field workers + 1 office user; and 15 field workers + 2 office users. |
| Product examples | Jobber, Housecall Pro, ZenMaid, BookingKoala, and Workiz are cost-model examples, not ranked winners. |
| Evidence limitation | No controlled accounts, vendor quotes, invoices, usage bills, payment statements, implementation invoices, export checks, or cancellation checks were used. |
Takeaway: The framework is designed to prevent a low headline price from hiding seats, providers, communications, payments, setup, and exit-related unknowns.
Best for
- Residential cleaning businesses replacing spreadsheets, Google Calendar, Gmail, phone calls, text messages, paper route sheets, manual invoices, or QuickBooks alone.
- Owners comparing software across different pricing units, such as named users, providers, appointments, storage, contacts, phone usage, SMS, or custom sales quotes.
- Teams deciding whether every cleaner needs mobile access, whether only documented field users need licenses, or whether a provider-based product uses a different billing unit.
- Buyers who can collect current tool costs, proposed subscription prices, job and payment volumes, and written vendor answers.
- Companies that want conservative, expected, and higher-cost planning views without pretending any scenario is a final invoice.
Avoid if
- You need a guaranteed monthly, annual, total, or final payable cost.
- You do not know who needs logins, how providers are counted, or which features require a higher plan.
- You have no estimate of recurring jobs, one-time jobs, invoices, payments, reminders, SMS, calls, or AI usage.
- You intend to treat blank costs, quote-only add-ons, taxes, migration, training, exports, or cancellation risk as zero.
- You need proof that QuickBooks, payments, SMS, phone, AI, exports, or integrations will behave correctly in a live account.
- You need legal, financial, tax, accounting, privacy, SMS, payment-compliance, cybersecurity, state/local, or contract advice.
Cost-planning worksheet
Worksheet note: This is a formula-based calculator framework, not a functioning interactive calculator. Treat it as a cost-planning framework, not a final invoice. Vendor confirmation is required.
The worksheet starts with a simple discipline: every selected cost category needs an explicit state. That prevents an empty field from quietly becoming a free feature.
| Input state | Meaning | Arithmetic treatment | Required label |
|---|---|---|---|
| Known numeric cost | The buyer entered a documented amount, current statement amount, current official list price, or written quote. | Include it in the relevant subtotal. | Known |
| Confirmed zero | The buyer or vendor explicitly confirmed that the selected cost is zero for this configuration. | Include zero and preserve the confirmation note. | Confirmed zero |
| Not applicable | The feature, payment method, integration, or service is not used in this scenario. | Exclude it from arithmetic. | Not applicable |
| Unknown | The cost is relevant or may be relevant, but no reliable amount is available. | Exclude it from the known-cost subtotal and create an unknown-cost flag. | Unknown; vendor confirmation required |
Takeaway: Zero is a value that must be confirmed. Blank is not zero, and unknown is not free.
Cost layers to separate
| Cost layer | Examples | Why it stays separate |
|---|---|---|
| Base subscription | Selected plan at the chosen billing cadence. | This is the plan floor, not the complete operating cost. |
| User or provider cost | Added users, named seats, field logins, office users, active providers, deactivated-provider thresholds. | Vendors define people-count units differently. |
| Required plan gate | Higher tier needed for user count, QuickBooks, exports, campaigns, reports, automation, or support. | The feature may not be sold as a line-item add-on; it may require a full tier change. |
| Monthly add-ons | CRM, marketing, online booking, receptionist, phone, AI, support, storage, or integration tools. | Add-ons can be fixed, usage-based, bundled, or quote-only. |
| Usage cost | SMS, phone minutes, calls, transfers, AI interactions, automation overages, storage, contacts, or campaigns. | Job and communication volume can change this cost after purchase. |
| Payment processing | Card, ACH, fixed transaction, device, instant-payout, or other merchant charges. | Processing is not the same as software subscription, and current fees may already exist. |
| Other monthly stack cost | QuickBooks, CRM, Zapier or middleware, separate phone system, email marketing, cloud storage, or call handling. | The buyer may keep these tools after buying the main platform. |
| One-time implementation | Setup, onboarding, migration, import help, training, workflow design, and bookkeeping cleanup. | These costs affect first-year cash outlay but should not be disguised as recurring subscription. |
| Exit and uncertainty risk | Export help, downgrade limits, cancellation timing, post-cancellation access, taxes, telecom fees, and unresolved quote items. | Some items may remain unknown until written confirmation or an actual account exists. |
Takeaway: A clean model does not force every cost into one monthly subscription line. It shows which layer creates the budget pressure.
Buyer scenario
The assumed buyer is a US residential cleaning business with recurring and one-time residential jobs. It may currently use spreadsheets, Google Calendar, Gmail, phone calls, text messages, paper route sheets, manual invoices, payment links, and QuickBooks. The owner wants to compare software without assuming that starting price equals real cost.
The four scenarios below do not assign universal job counts or final prices. Job, quote, invoice, payment, reminder, SMS, phone, and AI volumes remain editable planning inputs supplied by the buyer.
| Scenario | Every-cleaner login view | Crew-lead or custom view | Provider view | Likely cost pressure |
|---|---|---|---|---|
| 2 field workers + 1 office user | 3 licensed users if all three need logins. | Use a buyer-supplied custom count; do not infer a crew lead. | Follow the vendor definition. For BookingKoala, each service-performing team member is described as a provider. | Low plan floor can still miss SMS, processing, booking, exports, setup, and migration. |
| 5 field workers + 1 office user | 6 licensed users if all six need logins. | Use a documented field-login count plus the office user. | Confirm active and deactivated-provider treatment where relevant. | User thresholds, reminders, payments, mobile access, and one-office-user workload begin to matter. |
| 10 field workers + 1 office user | 11 licensed users if everyone needs access. | Use an explicit custom count based on the real operating model. | Do not compress ten service-performing workers into fewer providers without official support. | Plan gates, communication volume, accounting handoff, training, and support become more material. |
| 15 field workers + 2 office users | 17 licensed users if all workers and both office users need access. | Use a written login and permission plan; no inferred crew count. | Confirm field providers, helpers, teams, office access, inactive records, and deactivated records separately. | Sales-led pricing, implementation, permissions, reporting, exports, renewal, and cancellation need written confirmation. |
Takeaway: Headcount is only the starting point. The billing unit may be a login, provider, plan band, appointment threshold, storage threshold, contact threshold, or custom quote.
What the framework estimates
What it should estimate
- Monthly subscription cost under the selected billing cadence.
- Documented user, seat, provider, and plan-gate costs.
- Known monthly add-ons and usage costs.
- Current, new, and incremental payment-processing costs when processing is included.
- Software-only monthly cost and optional payment-inclusive stack cost.
- One-time setup, onboarding, migration, import, training, and cleanup costs supplied by the buyer.
- Actual first-year cash outlay based on when subscription payments are due.
- Renewal-year planning cost using standard nonpromotional recurring pricing.
- Software-only cost per field worker, office user, licensed user, job, and recurring job.
- Unknown-cost count, excluded-cost list, and vendor-confirmation checklist.
What it should not estimate or imply
- A guaranteed final monthly, annual, or total cost.
- A vendor quote, invoice, negotiated contract, or final payable amount.
- Guaranteed savings, affordability, revenue lift, profit, or return on investment.
- Tax, accounting, bookkeeping, legal, privacy, SMS, payment-compliance, or contract outcomes.
- Live integration, migration, export, support, or cancellation behavior.
- A universal processing rate, SMS rate, AI rate, phone rate, migration allowance, or training allowance.
- A claim that every cleaner needs a login or that a crew-lead-only model will work operationally.
- A claim that one provider can represent multiple cleaners unless the vendor documents that exact arrangement.
Recommended inputs
The worksheet works better when inputs are grouped by the decision they support. The following tables distinguish required planning inputs from advanced assumptions.
People and access inputs
| Input | Status | Plain-English meaning | Default handling | Main risk |
|---|---|---|---|---|
| Field workers | Required | People who perform cleaning work in the field. | No default; buyer supplies the count. | Undercounting field workers can understate access or provider needs. |
| Office users | Required | Owners, dispatchers, administrators, or managers who need office access. | No default. | An owner who also logs in may be missed if only employees are counted. |
| Cleaner-login model | Required | Every cleaner, documented field users, office only, or custom. | No automatic crew-lead assumption. | A lower seat count may remove mobile access, notes, time, status, or accountability. |
| Custom licensed-user count | Required | The explicit number of paid or licensed logins in the modeled setup. | Buyer-supplied; use this when available. | Inferring the number from headcount can misstate price. |
| Documented field-login count | Required when using a documented login model | Field workers who actually need software access. | Buyer-supplied. | Calling this “crew leads” without defining crews creates false precision. |
| Provider count | Required for provider-based software | People or service resources counted under the vendor’s provider definition. | No default; follow current official documentation. | Provider count may not equal licensed-user count. |
| Active providers | Required when relevant | Providers currently available or retained in the account. | Buyer-supplied. | Plan limits may apply to active records. |
| Inactive or deactivated providers | Required when relevant | Former, seasonal, disabled, or deactivated provider records still retained. | Unknown until the buyer checks the account or vendor rule. | Some plan thresholds may include deactivated records. |
Takeaway: Keep licensed users and providers as different variables until the vendor confirms they are the same billing unit.
Workload and usage inputs
| Input | Status | Plain-English meaning | Why it matters | Default handling |
|---|---|---|---|---|
| Recurring jobs per month | Required | Scheduled recurring cleaning appointments in a typical month. | Supports cost-per-job math, appointment-limit checks, reminders, invoices, and mobile workload. | No universal default. |
| One-time jobs per month | Required | Deep cleans, move-in or move-out work, first-time cleans, and other nonrecurring jobs. | Adds scheduling, quote, invoice, payment, and communication volume. | No default. |
| Estimates or quotes per month | Required | Price requests or proposals created each month. | May affect CRM, follow-up, automation, and plan requirements. | No default. |
| Invoices per month | Required | Invoices created or sent monthly. | Supports per-invoice views and accounting handoff planning. | No default. |
| Payments per month | Required when processing is modeled | Number of payment transactions, not just invoice count. | Fixed transaction fees may depend on payment count. | No default. |
| Customer reminders per month | Required | Appointment, quote, invoice, payment, review, or other reminders. | Reminder count helps explain message volume but does not automatically equal SMS count. | No default. |
| SMS messages per month | Required when SMS is used | Outbound and, where billed, inbound text-message units or segments. | Message length, provider, add-on, and carrier treatment can change spend. | Unknown until supplied; do not assume included. |
| Phone calls or minutes per month | Required when phone is used | Calls, minutes, numbers, transfers, recordings, or other billable communication units. | Communications-forward software may price these separately. | Unknown until supplied. |
| AI answering or AI communication usage | Required when selected | Calls, minutes, interactions, tasks, or other AI usage units. | AI may be an add-on with usage or overage charges. | Unknown until quoted or documented. |
| Online booking requirement | Required decision | Whether customers need a booking form or booking workflow. | May require a plan gate, add-on, provider capacity, or separate tool. | Choose yes, no, or unknown. |
| Customer portal requirement | Required decision | Whether customers need self-service access to jobs, invoices, payments, or requests. | Portal availability and scope may affect the selected plan. | Choose yes, no, or unknown. |
| QuickBooks or accounting requirement | Required decision | Whether QuickBooks Online (QBO), QuickBooks Desktop (QBD), or another accounting handoff is needed. | Integration may be plan-gated or may require manual work. | Choose exact system or not applicable. |
Takeaway: Job volume often affects cost indirectly. More jobs can create more reminders, SMS, phone calls, invoices, payments, storage, contacts, and support needs even when jobs themselves are not metered.
Cost and billing inputs
| Input | Status | Plain-English meaning | Default handling | Main risk |
|---|---|---|---|---|
| Current monthly software and tool cost | Required for cost-change comparison | Current recurring spend on operational software, accounting, communications, booking, CRM, and related tools being replaced or retained. | No default. Confirmed zero only when the current stack is truly free. | Ignoring retained tools understates the future stack. |
| Base plan cost | Required | Current official list price or written quote for the selected plan and cadence. | No default. | Using a promotional or single-user floor can distort the model. |
| Extra-user cost | Required when applicable | Documented cost for users above the included threshold. | Unknown unless current official pricing or a quote resolves it. | Cadence, proration, and larger-team rules may differ. |
| Provider-count cost | Required when applicable | Cost created by provider, storage, contact, or similar plan-sizing thresholds. | Unknown unless current documentation resolves the selected account size. | Provider records may be counted differently from logins. |
| Required plan-gate cost | Required when a feature forces a higher tier | The subscription difference needed for users, QBO, exports, reports, automation, or other required features. | Unknown until the plan requirement is confirmed. | A buyer may price the wrong tier by comparing only seat capacity. |
| Add-ons, SMS, phone, and AI monthly cost | Required for selected features | Known recurring fees and usage estimates for communications and add-ons. | Unknown rather than zero when unresolved. | Quote-only or usage-based charges can grow after launch. |
| Other monthly add-ons | Required when used | CRM, Zapier, API, support, storage, marketing, booking, or accounting tools retained in the stack. | Unknown or not applicable. | Buying one platform may not eliminate the rest of the stack. |
| One-time setup, onboarding, migration, and training cost | Required for first-year planning | Buyer-supplied external fees and internal cost estimates. | Unknown until the buyer scopes the work. | Do not use a universal consultant rate or migration range. |
| Billing cadence | Required | Month-to-month, annual commitment billed monthly, annual prepayment, or another quoted schedule. | Use the exact offered cadence. | Annual-equivalent monthly price is not the same as cash due. |
| Promotional price and period | Optional | Temporary discount and the dates it applies. | Separate from the standard baseline. | Using a promotion as the renewal baseline understates later cost. |
| Standard renewal price | Required for renewal planning | Nonpromotional recurring price expected after the first term. | Unknown unless written confirmation exists. | Renewal, auto-renewal, and repricing rules can change the second-year budget. |
Takeaway: The model needs both a monthly operating view and a cash-due view. They answer different budgeting questions.
Advanced optional inputs
- Current and new card payment volume.
- Current and new ACH payment volume.
- Average transaction size and payment count.
- Current and new card, ACH, and fixed transaction rates.
- SMS overage estimate and message-segment assumptions.
- Phone-number, call-minute, transfer, recording, and AI overage costs.
- Zapier, API, middleware, integration, or support-tier cost.
- Data import, data export, cancellation, downgrade, or post-cancellation cost.
- Bookkeeping cleanup or data-normalization cost supplied by the buyer.
- Sales tax or telecom taxes when a reliable amount is available.
- Customer records, active recurring customers, service addresses, photos, attachments, and storage units.
- Booking-form, contact, campaign, automation, or usage limits that may trigger a plan change.
Formula-based calculator framework
Each formula below is a planning relationship, not a vendor-pricing engine. A formula can calculate only the cost inputs supplied to it. If a selected input is unknown, the arithmetic must remain incomplete and the result must be labeled a known-cost subtotal.
| Output | Formula | Plain-English explanation | Caveat |
|---|---|---|---|
| Total people | total_people = field_workers + office_users |
Counts field and office people in the planning scenario. | This is headcount, not necessarily the licensed-user or provider count. |
| Licensed users | licensed_users = custom_licensed_user_countor licensed_users = office_users + documented_field_login_count |
Uses the buyer’s explicit license count or a documented login model. | Do not infer crew leads from field-worker count. |
| Monthly subscription cost | monthly_subscription_cost = base_plan_cost + documented_extra_user_cost + documented_provider_count_cost + documented_required_plan_gate_cost |
Adds the selected plan and documented people-count or plan-gate charges. | Unknown items must be flagged rather than treated as free. |
| Monthly usage cost | monthly_usage_cost = sms_cost + phone_cost + ai_cost + automation_overage_cost + integration_cost + support_tier_cost + other_usage_cost |
Adds known communication, AI, automation, integration, support, and usage costs. | Each selected category needs a known, confirmed-zero, not-applicable, or unknown state. |
| Monthly software-only cost | monthly_software_only_cost = monthly_subscription_cost + monthly_usage_cost + other_monthly_addons |
Shows the recurring software and add-on cost without payment processing. | Use “known-cost subtotal” when any relevant component is unknown. |
| New monthly processing cost | new_monthly_processing_cost = (new_card_volume × new_card_rate) + (new_ach_volume × new_ach_rate) + new_fixed_transaction_fees |
Estimates the proposed payment-processing bill from buyer-supplied rates and volumes. | Actual fees can vary by payment method, merchant terms, fixed fees, device fees, payout options, and other account conditions. |
| Current monthly processing cost | current_monthly_processing_cost = (current_card_volume × current_card_rate) + (current_ach_volume × current_ach_rate) + current_fixed_transaction_fees |
Estimates the existing processing bill using the current payment mix. | A current statement is preferable to a generic rate-page example. |
| Incremental processing cost | incremental_processing_cost = new_monthly_processing_cost - current_monthly_processing_cost |
Shows how much processing cost may change rather than labeling the full new bill a new software expense. | A negative result means the modeled processing cost is lower, not that the software creates guaranteed savings. |
| New monthly stack cost | new_monthly_stack_cost = monthly_software_only_cost + new_monthly_processing_cost |
Shows an optional payment-inclusive view of the proposed stack. | Only use when the software-only and processing inputs are complete and clearly labeled. |
| Current monthly stack cost | current_monthly_stack_cost = current_monthly_software_and_tool_cost + current_monthly_processing_cost |
Combines the current operational stack and current processing cost. | Do not omit tools that will remain after the switch. |
| Monthly cost change | monthly_cost_change = new_monthly_stack_cost - current_monthly_stack_cost |
Compares the proposed payment-inclusive stack with the current payment-inclusive stack. | This is a cost change, not ROI, profit, or savings proof. |
| Monthly software-only cost change | monthly_software_only_cost_change = monthly_software_only_cost - current_monthly_software_and_tool_cost |
Compares software and add-ons without mixing in payment processing. | Use this view when processing is outside the buying decision. |
| Actual subscription cash due in year one | actual_subscription_cash_due_in_year_one = sum(subscription_invoices_due_during_first_12_months) |
Uses the real billing schedule rather than multiplying an annual-equivalent display by 12. | Requires the actual cadence, commitment, prepayment, and promotion terms. |
| First-year cash outlay | first_year_cash_outlay = actual_subscription_cash_due_in_year_one + year_one_usage_cost + year_one_processing_cost_if_included + one_time_setup_onboarding_migration_training_cost |
Adds the cash expected to be due in the first 12 months. | Keep unknown categories visible and do not call an incomplete subtotal a first-year total. |
| Renewal-year estimate | renewal_year_estimate = standard_nonpromotional_recurring_cost_for_12_months |
Models the recurring cost after temporary promotions end. | Renewal pricing and packaging can change; written confirmation is required. |
| Software-only cost per field worker | monthly_software_only_cost ÷ field_workers |
Allocates software-only recurring cost across field workers. | Show N/A when field workers equals zero. |
| Software-only cost per office user | monthly_software_only_cost ÷ office_users |
Allocates software-only recurring cost across office users. | Show N/A when office users equals zero. |
| Software-only cost per licensed user | monthly_software_only_cost ÷ licensed_users |
Shows the effective recurring software-only cost per paid login. | Show N/A when licensed users equals zero. |
| Software-only cost per job | monthly_software_only_cost ÷ (recurring_jobs + one_time_jobs) |
Spreads software-only cost across monthly completed or scheduled jobs. | Show N/A when total jobs equals zero; define whether the buyer counts scheduled or completed jobs. |
| Software-only cost per recurring job | monthly_software_only_cost ÷ recurring_jobs |
Shows the software-only cost per recurring appointment. | Show N/A when recurring jobs equals zero. |
| Processing cost per payment | new_monthly_processing_cost ÷ payments |
Shows the modeled processing cost per payment transaction. | Show N/A when payments equals zero. |
| Unknown-cost count | unknown_cost_count = count(selected_or_potentially_applicable_cost_categories_marked_unknown) |
Counts unresolved cost categories that were excluded from known arithmetic. | The count should be displayed with the category names, not by itself. |
| Known-cost subtotal | known_cost_subtotal = sum(known_numeric_costs + confirmed_zero_cost_fields) |
Shows the arithmetic that can be supported by completed fields. | It is not a total or all-in cost while unknown-cost count is greater than zero. |
Takeaway: The formulas are simple on purpose. The quality of the result depends on accurate billing units, current prices, realistic volumes, and visible unknowns.
Conservative, expected, and higher-cost scenario logic
| Scenario view | How to build it | What not to do |
|---|---|---|
| Conservative planning view | Use standard nonpromotional pricing, documented billing units, cautious usage assumptions supplied by the buyer, and all known implementation costs. | Do not make the result look low by hiding relevant unknowns. |
| Expected planning view | Use the buyer’s most plausible login model, job volume, message mix, payment mix, billing cadence, and written quote. | Do not substitute an industry average for missing business data. |
| Higher-cost planning view | Use buyer-supplied upper-bound usage, additional support or add-ons that may be needed, and standard renewal pricing. | Do not invent rates, fees, migration hours, or usage levels simply to create a dramatic range. |
Takeaway: The three views should change assumptions, not formulas. An unknown price remains unknown in every scenario until the buyer gets reliable evidence.
Payment-processing cost comparison
Payment processing should be optional in the worksheet because not every software purchase changes the merchant relationship. Some buyers already process most card and ACH payments through another tool. Others may move payment volume into the new platform. The relevant cost question is the change between current and proposed processing, not merely the size of the proposed processor bill.
| View | Inputs | Output | Decision use |
|---|---|---|---|
| Current processing | Current card volume, ACH volume, rates, fixed fees, device fees, and other known merchant costs. | Current monthly processing cost. | Establishes the baseline the business already pays. |
| New processing | Proposed card and ACH volume, current official or quoted rates, fixed fees, device fees, and payout options. | New monthly processing cost. | Shows the proposed merchant cost without calling it subscription. |
| Incremental processing | New processing cost minus current processing cost. | Increase or decrease in modeled processing cost. | Prevents the entire new payment bill from being misclassified as newly created software cost. |
| Software-only comparison | Current tool stack versus proposed subscription, usage, and add-ons. | Monthly software-only cost change. | Useful when the buyer wants to evaluate software independently from merchant fees. |
| Optional payment-inclusive comparison | Complete software and processing inputs for current and proposed stacks. | Monthly payment-inclusive stack cost and cost change. | Useful for cash planning when the labels remain clear. |
Takeaway: Keep at least two headline outputs: monthly software-only cost and optional payment-inclusive stack cost.
Official rate pages can help the buyer identify possible methods, but they are not universal defaults. For example, Jobber’s official pricing page, Housecall Pro’s official payment documentation, and QuickBooks’ official payment-rate page display different rates by collection method. Use the buyer’s actual merchant terms or written offer wherever possible.
Billing cadence and first-year cost
A lower annual-equivalent monthly figure does not necessarily describe how cash leaves the business. An annual prepaid plan can create a large first-month outlay. An annual commitment billed monthly can preserve monthly cash timing while creating a longer obligation. A temporary promotion can reduce part of year one without changing the standard renewal price.
| Pricing view | What it means | How to use it | Main caution |
|---|---|---|---|
| Month-to-month list price | Published price for monthly billing without the longer annual cadence shown by the vendor. | Use for the month-to-month operating scenario. | Confirm cancellation timing, proration, and taxes. |
| Annual commitment billed monthly | Monthly invoices under a longer commitment. | Use the actual invoice schedule for year-one cash outlay. | Monthly billing does not necessarily mean month-to-month flexibility. |
| Annual prepaid equivalent | Annual cash due translated into an effective monthly figure. | Use for comparison only; record the actual prepaid amount separately. | Multiplying the effective monthly display by 12 can miss taxes, fees, or promotion timing. |
| Promotional period price | Temporary discount for part of the term. | Model the discounted invoices only during the stated dates. | Do not use it as the standard baseline or renewal price. |
| Standard renewal price | Nonpromotional recurring amount expected after the first term. | Use for renewal-year planning. | Actual future pricing can change, so vendor confirmation remains necessary. |
| First-year cash outlay | Cash due during the first 12 months, including one-time costs and optional processing. | Use for budgeting and purchase timing. | Label incomplete when any selected category remains unknown. |
| Renewal-year estimate | Twelve months of standard recurring cost after temporary discounts. | Use to compare the ongoing budget after launch. | This is still a planning estimate, not a renewal guarantee. |
Takeaway: Report both operating cost and cash timing. They can differ substantially even when they describe the same plan.
Calculator output design
A future interactive implementation should lead with completeness, not with a dramatic total. The static worksheet should use the same output order.
| Output area | What to display | Required warning or label |
|---|---|---|
| Estimate status | Complete or incomplete; unknown-cost count; excluded unknown categories. | “Estimate incomplete: one or more costs are unknown” when applicable. |
| Known-cost result | Known monthly software-only subtotal. | Do not call it total or all-in cost while unknowns remain. |
| Subscription breakdown | Base plan, extra users, provider thresholds, and required plan gate. | Show billing cadence and source date. |
| Add-on and usage breakdown | SMS, phone, AI, automation, CRM, support, integration, storage, contacts, and other monthly tools. | Show unknown line items instead of hiding them. |
| Processing section | Current processing, new processing, incremental processing, and optional payment-inclusive stack. | Do not label processing as subscription. |
| One-time cost section | Setup, onboarding, migration, import, training, and cleanup. | Separate from recurring monthly cost. |
| Billing section | Month-to-month, annual-equivalent, actual year-one cash due, promotion, and renewal-year estimate. | Do not use promotional pricing as the standard baseline. |
| Per-unit views | Software-only cost per field worker, office user, licensed user, job, and recurring job; optional processing cost per payment. | Show N/A for zero denominators and label payment-inclusive metrics clearly. |
| Scenario comparison | Conservative, expected, and higher-cost views using visible assumptions. | Unknown values remain unknown in every column. |
| Assumptions summary | People counts, login model, provider definition, job volume, message volume, payment mix, billing cadence, and excluded costs. | Make it printable or easy to capture for a vendor conversation. |
| Vendor-confirmation checklist | Plan, users, providers, usage limits, payment fees, integrations, exports, renewal, downgrade, and cancellation. | “Treat this as a planning estimate, not a vendor quote.” |
Takeaway: The output should make uncertainty easy to see. A buyer should be able to identify the three or four unanswered items that could still change the decision.
Scenario analysis
Scenario: 2 field workers + 1 office user
Buyer profile: A small owner-led cleaning company may still coordinate work through a calendar, spreadsheet, phone, SMS, and manual invoices. The most important question is whether software solves a specific bottleneck or merely adds another bill.
Calculator usefulness: Moderate to high when the buyer needs to compare a three-login broad FSM setup with a cleaning-specific plan floor, a provider-based booking tool, or a mostly manual stack. Even a low subscription can be misleading if SMS, processing, booking, exports, and setup remain unknown.
Conservative input posture: Use three licensed users only when all three need logins. Otherwise use an explicit custom count. Keep recurring jobs, one-time jobs, quotes, invoices, payments, and reminders as buyer-supplied values. Do not assume a crew lead or a free field-user role.
| Option | 2+1 fit | Why it may fit | Main cost risk | Buyer action | Confidence |
|---|---|---|---|---|---|
| Manual or spreadsheet baseline | Plausible at low volume | Low software spend and simple owner oversight may still be workable. | Owner time, missed reminders, duplicate entry, payment follow-up, and fragile history are not visible in subscription math. | Document the real bottleneck before adding software. | Medium |
| Broad FSM such as Jobber or Housecall Pro | Conditional | Useful when scheduling, quotes, invoices, payments, customer communication, and field access need one operations layer. | The practical team plan can cost much more than the one-user starting price. | Request exact three-user and feature-gate pricing in writing. | Medium |
| Cleaning-specific tool such as ZenMaid | Plausible for recurring maid-service work | Cleaning-oriented recurrence and reminders may match the operating model. | Visible plan floors do not prove larger-team price, SMS cost, export scope, or accounting status. | Confirm team-size billing, messages, payments, export, and QuickBooks status. | Medium-low |
| Booking-first tool such as BookingKoala | Plausible when website booking is the bottleneck | Provider scheduling and customer self-service may matter more than broad dispatch. | Provider count, Twilio, processing, storage, and account-retention rules can change the stack. | Confirm that each service-performing worker is counted correctly and ask how office users are treated. | Medium |
| Communications-forward FSM such as Workiz | Conditional | May fit when calls, SMS, booking, dispatch, and payment communication are the main problem. | Base plan, phone, communications, AI, and additional-user costs require a current quote. | Get a written three-user quote that separates communications and AI. | Low |
Takeaway: A 2+1 team should not buy from category breadth alone. The purchase is easier to justify when one measurable workflow is already breaking.
Scenario: 5 field workers + 1 office user
Buyer profile: One office user may now handle recurring schedule changes, quotes, customer messages, invoices, payments, and field coordination for five cleaners. Office interruption and mobile access become more important than the smallest published price.
Calculator usefulness: High. Six licensed users can cross a plan threshold, while provider-based software may use a different count. Reminder, SMS, invoice, and payment volume also start to create meaningful usage and processing questions.
Conservative input posture: Model six licensed users when every person needs access. Build a second custom-login view only from the documented operating model. Use current payment statements and written SMS or phone pricing rather than a universal rate.
| Option | 5+1 fit | Why it may fit | Main cost risk | Buyer action | Confidence |
|---|---|---|---|---|---|
| Manual or spreadsheet baseline | Increasingly fragile | May remain usable for a disciplined operation with low communication and payment complexity. | One office user becomes the integration layer between calendar, customers, cleaners, invoices, and books. | Count recurring exceptions and office handoffs before deciding to stay manual. | Medium |
| Jobber | Plausible broad-FSM path | Public pricing includes team configurations that can cover six users, depending on the required feature tier. | Seat capacity alone does not resolve QBO, add-ons, payments, communications, or the right plan. | Compare current official Connect and Grow configurations against the required workflow. | Medium-high for list-price structure; lower for final cost |
| Housecall Pro | Plausible broad home-service path | MAX is the first clearly displayed public plan above the five-user Essentials limit. | Add-ons, payment method, annual terms, and future user growth can materially change cost. | Request the six-user plan, add-ons, processing, renewal, and export terms in writing. | Medium-high for public plan band; lower for final cost |
| ZenMaid | Plausible for recurring cleaning | Cleaning-specific workflow and unlimited-appointment tiers may be relevant. | The displayed plan floors do not fully resolve team-size pricing, SMS, export depth, or QuickBooks availability. | Get a written six-person configuration and message-cost explanation. | Medium-low |
| BookingKoala | Plausible for booking-first operations | Five field providers fit within the visible provider thresholds of entry plans, subject to other limits and office-user treatment. | Active and deactivated providers, storage, Twilio, payments, and future provider growth can change the plan. | Confirm provider records, office access, storage, SMS, payment, and cancellation behavior. | Medium |
| Workiz | Conditional communications-forward path | Public documentation describes plans with the first five users included, making the sixth login a material question. | Base price is quote-sensitive, and communications, AI, and added-user charges are separate cost risks. | Request a six-user quote with every communications component itemized. | Low |
Takeaway: The 5-to-6-user threshold is a practical stress test. It exposes whether the buyer is comparing real team access or only a starting plan.
Scenario: 10 field workers + 1 office user
Buyer profile: Eleven people may need access if every cleaner and the office user logs in. The business likely has more recurring schedule volume, field instructions, reminders, invoices, payments, and accounting handoff. Training and permission design also matter.
Calculator usefulness: Very high. The buyer should compare all-user and explicit custom-login models, but the custom model must reflect real workflow rather than a price-reduction assumption. A higher plan can be triggered by people count, reports, QuickBooks, communications, storage, or support.
Conservative input posture: Use standard nonpromotional pricing, eleven licensed users where applicable, ten service-performing providers for provider-based software unless official documentation supports another structure, and a complete monthly communication and payment estimate.
| Option | 10+1 fit | Why it may fit | Main cost risk | Buyer action | Confidence |
|---|---|---|---|---|---|
| Manual or spreadsheet baseline | High operational risk | May remain as an archive or fallback, but shared operations become difficult to control. | Schedule exceptions, cleaner access, duplicate entry, payment matching, and office accountability can outgrow memory. | Map the source of truth and migration scope before purchase. | Medium |
| Jobber | Plausible within published team configurations | Public team pricing shows configurations up to 15 users before the sales threshold. | The correct tier depends on features, not only the 11-user count; add-ons and payment costs remain separate. | Request an 11-user quote and compare the exact feature tier with standard public pricing. | Medium |
| Housecall Pro | Conditional | Public MAX pricing includes eight users and displays an added-user amount. | Eleven-user treatment is sales-sensitive, and public arithmetic is not a guaranteed quote. | Ask for a written 11-user quote instead of relying on MAX plus arithmetic alone. | Low-medium |
| ZenMaid | Plausible when recurrence is the core workflow | Cleaning-specific operations may remain attractive compared with broad FSM complexity. | Team pricing, SMS, accounting status, export scope, and support requirements are not fully resolved publicly. | Request a written 10-cleaner + 1-office configuration and migration scope. | Low |
| BookingKoala | Plausible for booking-first teams | Ten service-performing providers can fit within the visible Growing provider threshold, subject to storage and other account rules. | Deactivated providers, storage, Twilio, office roles, contacts, and future growth may alter the plan. | Confirm every billing unit and ask for an export and account-retention demonstration. | Medium |
| Workiz | Conditional | Communications, dispatch, booking, payments, and QBO positioning may suit a phone-heavy operation. | Base price, six added users beyond the first five, communications, AI, and implementation are quote-sensitive. | Obtain a complete 11-user quote and separate the phone or AI package from core FSM cost. | Low |
Takeaway: At 10+1, the worksheet should become a purchasing document: one page of assumptions, one page of unknowns, and one written vendor response.
Scenario: 15 field workers + 2 office users
Buyer profile: A 17-person access model introduces shared office responsibility, multiple crews, permission questions, reporting, training, migration, payment and accounting handoff, and more serious exit risk.
Calculator usefulness: Essential for planning, but confidence in public-price arithmetic is lower. Larger teams may cross self-serve thresholds, trigger sales-led pricing, or require implementation and support conversations.
Conservative input posture: Model 17 licensed users when all workers need access. Build a second custom model only from the documented field workflow. Use 15 service-performing providers for provider-based products unless the vendor provides a different supported definition. Treat all quote-only costs as unknown until written confirmation.
| Option | 15+2 fit | Why it may fit | Main cost risk | Buyer action | Confidence |
|---|---|---|---|---|---|
| Manual or spreadsheet baseline | Not a reliable primary operating model | May remain useful for exports, contingency planning, or transitional records. | Shared edits, schedule exceptions, permissions, payment visibility, and history are difficult to control. | Use manual tools as backup and migration support, not as an assumed free operating system. | Medium |
| Jobber | Sales-confirmed path | Public pricing shows team configurations through 15 users and directs larger teams to contact sales. | Seventeen users, add-ons, implementation, renewal, and support require written confirmation. | Request a 17-user quote and a complete implementation, export, and cancellation statement. | Low for final cost |
| Housecall Pro | Sales-confirmed path | MAX provides a public base and added-user display, but 11+ is a larger-team buying path. | Public arithmetic does not resolve tailored pricing, add-ons, support, or implementation. | Ask for one written 17-user commercial schedule covering renewal and all add-ons. | Low |
| ZenMaid | Conditional cleaning-specific path | Recurring maid-service workflow may remain the category fit. | Team-size price, messages, accounting, exports, training, and support are not publicly sufficient for a 17-person decision. | Require a written team configuration and data-transition plan. | Low |
| BookingKoala | Plausible for booking-first operations | Fifteen field providers align with the visible Growing provider threshold before considering storage and other limits. | Office access, deactivated providers, storage, SMS, payments, export, account deletion, and growth beyond 15 providers can change the decision. | Request a provider ledger, role map, storage estimate, export sample, and cancellation explanation. | Medium-low |
| Workiz | Quote-sensitive communications-forward path | May fit a larger operation that needs phone, SMS, AI intake, dispatch, payments, and QBO context. | Twelve users beyond the first five, core subscription, communications, AI, implementation, and contract terms require a quote. | Ask for one all-component quote and written usage, export, renewal, and cancellation limits. | Low |
Takeaway: At 15+2, public pricing is useful for structuring questions, not for declaring a final cost. Written confirmation should replace placeholder arithmetic before purchase.
Software categories to compare
The worksheet should compare operating categories before comparing plan prices. A low price in the wrong category can create a more expensive stack later.
| Category | Best fit for | Not best for | Main cost drivers | What to verify |
|---|---|---|---|---|
| Broad FSM | Teams that want scheduling, dispatch, quotes, jobs, invoices, payments, customer communication, field access, and integrations in one operations layer. | Buyers who mainly need a simple cleaning-specific recurring workflow or a booking form. | Plan tier, licensed users, add-ons, payments, QuickBooks gate, implementation, and support. | Named-user rules, recurring workflow, mobile access, QBO/QBD claims, exports, renewal, and cancellation. |
| Cleaning-specific recurring tool | Businesses centered on recurring maid-service appointments, cleaner notes, reminders, and cleaning-oriented scheduling. | Teams that need broader dispatch, phone, sales, integration, or reporting depth. | Visible plan floor, team-size logic, appointment limits, SMS, payments, exports, and accounting status. | Cleaner and office counts, messages, appointment thresholds, payment path, data export, and migration. |
| Booking-first tool | Businesses whose main problem is website booking, customer self-service, provider scheduling, packages, and intake automation. | Buyers seeking simple named-user math or a traditional broad FSM operating model. | Providers, storage, campaign contacts, SMS or Twilio, payments, booking features, and account sizing. | Provider definition, active and deactivated records, office roles, storage, contacts, exports, and cancellation. |
| Communications-forward FSM | Teams that need calls, SMS, AI answering, lead intake, dispatch, booking, client communication, payments, and accounting context. | Businesses that do not need a phone-heavy operations stack. | Core plan, added users, communications package, phone numbers, minutes, calls, AI, payments, and annual terms. | Exact quote, communication units, AI usage, QBO eligibility, exports, implementation, renewal, and cancellation. |
| CRM or call-handling add-ons | Businesses with a distinct lead pipeline, marketing workflow, or inbound-call problem that the operations platform does not solve. | Teams that have not yet established an operations source of truth. | Contacts, users, campaigns, phone or AI usage, integrations, API or middleware, and duplicate-record cleanup. | Source-of-truth rules, handoff, opt-outs, records, integrations, exports, and cancellation. |
| Manual baseline | Very small, low-volume operations with disciplined ownership and simple recurring rules. | Teams with shared office work, many recurring exceptions, mobile-access needs, or high communication and payment volume. | Owner time, office interruption, duplicate entry, rework, missed messages, and bookkeeping cleanup. | Whether manual work remains controlled, exportable, and understandable by someone other than the owner. |
Takeaway: The worksheet should compare a complete operating model, not place unrelated starting prices in one column and call them equivalent.
Product cost-model notes
The product notes below use current official public sources checked on 2026-07-10. Public prices and plan displays can change. Workflow descriptions are vendor claims unless FieldOpsLab says otherwise, and FieldOpsLab has not verified them in a controlled account.
Jobber
Jobber’s official pricing page uses named-user team configurations and multiple billing cadences. It defines a user as someone who accesses the account in the office or field to view and manage the schedule. That makes the buyer’s documented login count a primary cost input.
| Public configuration checked 2026-07-10 | Included users | Month-to-month | Monthly billing with one-year commitment | Annual-prepaid equivalent |
|---|---|---|---|---|
| Core | 1 | $49/month | $39/month | $29/month equivalent |
| Connect team configuration | Up to 5 | $199/month | $169/month | $149/month equivalent |
| Connect team configuration | Up to 10 | $299/month | $259/month | $229/month equivalent |
| Connect team configuration | Up to 15 | $399/month | $339/month | $299/month equivalent |
| Grow team configuration | Up to 5 | $299/month | $259/month | $229/month equivalent |
| Grow team configuration | Up to 10 | $399/month | $349/month | $299/month equivalent |
| Grow team configuration | Up to 15 | $499/month | $429/month | $399/month equivalent |
| Plus team configuration | Up to 5 | $499/month | $439/month | $399/month equivalent |
| Plus team configuration | Up to 10 | $599/month | $499/month | $449/month equivalent |
| Plus team configuration | Up to 15 | $699/month | $599/month | $529/month equivalent |
| Larger team | 16+ | Contact Jobber; vendor confirmation required. | ||
Takeaway: Jobber should be modeled from the team configuration and required feature tier, not from Core’s one-user starting price.
- Pricing model to verify: Included users, the displayed $29 added-user amount, cadence treatment, proration, and the 16+ sales path.
- Team-size cost driver: Number of people who need access and the tier required for the workflow.
- Job-volume cost driver: Jobs may not be the direct billing unit, but volume can raise message, payment, automation, and support needs.
- SMS, phone, and AI driver: Public pricing displays optional marketing, receptionist, and pipeline products. Confirm what is included in the selected configuration and what remains an add-on.
- Payment driver: The pricing page displays method-specific card, Tap to Pay, ACH, and instant-payout examples. Use the buyer’s actual method mix and terms.
- QuickBooks driver: QBO sync is displayed from Connect upward, but FieldOpsLab did not verify sync scope or behavior.
- Migration, export, and cancellation driver: Public documentation can describe import or export paths, but scope, support, effort, contract treatment, and post-cancellation access remain unverified.
- Ask Jobber: “Please confirm our exact user configuration, plan, add-ons, payment rates, year-one cash due, renewal price, import scope, export objects, downgrade timing, and cancellation terms in writing.”
Housecall Pro
Housecall Pro’s official pricing page presents Basic, Essentials, and MAX, with annual-equivalent and monthly prices. Public team limits create a visible threshold at six users because Essentials is shown for up to five users and MAX is shown for up to eight.
| Plan | Public user limit | Annual-equivalent price | Month-to-month price | Cost-planning note |
|---|---|---|---|---|
| Basic | 1 user | $59/month equivalent | $79/month | One-user plan; not a six-user comparison baseline. |
| Essentials | Up to 5 users | $149/month equivalent | $189/month | Publicly lists QBO and QBD; live integration behavior remains unverified. |
| MAX | Up to 8 users | $299/month equivalent | $329/month | Publicly displays additional users at $35/month; larger-team treatment still needs a written quote. |
| 11+ team path | Sales-confirmed | Vendor confirmation required. | Do not rely on simple added-user arithmetic as a final 11- or 17-user price. | |
Takeaway: Housecall Pro’s public plan bands help with directional planning, but larger-team pricing and add-on cost need written confirmation.
- Pricing model to verify: Basic, Essentials, MAX, additional users, 11+ treatment, annual amount due, promotions, renewal, and proration.
- Team-size cost driver: Movement from one user to five users, then from five to six, and beyond the eight included with MAX.
- Job-volume cost driver: More jobs can increase reminders, customer communication, invoices, payment volume, and service-plan administration.
- SMS, phone, and AI driver: Campaigns, Voice, CSR AI, HCP Assist, Pipeline, Websites, and other products are configuration-sensitive. The general pricing page does not establish one universal price for every buyer.
- Payment driver: Official payment documentation displays different rates for in-person cards, customer-entered online cards, manually entered or saved cards, ACH, Tap to Pay devices, and Instapay. Treat them as method-specific public information, not one default rate.
- QuickBooks driver: QBO and QBD are listed on Essentials and MAX. This does not prove live sync behavior, mapping, reconciliation, or error handling.
- Migration, export, and cancellation driver: Import and export documentation does not prove complete data portability or an easy cancellation experience.
- Ask Housecall Pro: “Please provide the exact user band, add-ons, payment schedule, processing methods, implementation, exports, renewal, downgrade, and cancellation terms for our team.”
ZenMaid
ZenMaid’s official pricing page displays low plan floors and a cleaning-specific structure, but it also asks for cleaner and office-manager counts. The publicly rendered page does not fully resolve larger-team billing, so the plan prices below should not be treated as all-in team quotes.
| Plan | Visible public plan floor | Appointment limit shown | Important visible cost signal |
|---|---|---|---|
| Starter | $19/month | Up to 40 appointments per month | SMS charges are not included. |
| Pro | $39/month | Unlimited appointments displayed | SMS charges are not included. |
| Pro Max | $49/month | Unlimited appointments displayed | SMS charges are not included; data export is listed. |
Takeaway: Use ZenMaid’s visible prices as plan floors and appointment thresholds, then obtain team-size, SMS, payment, export, and accounting confirmation.
- Pricing model to verify: How cleaner and office-manager counts change the payable price for 2+1, 5+1, 10+1, and 15+2 teams.
- Team-size cost driver: Cleaner and office-manager configuration rather than a simple broad-FSM named-seat table.
- Job-volume cost driver: Starter’s 40-appointment threshold is directly relevant; higher tiers display unlimited appointments, but other live limits remain unverified.
- SMS driver: The pricing page expressly excludes SMS charges. Use actual SMS pricing or mark it unknown.
- Payment driver: Public pages reference Stripe and Square. Use the buyer’s actual processor terms.
- QuickBooks driver: The pricing page displayed QuickBooks integration as “coming soon” when checked. Do not claim current live availability or behavior without confirmation.
- Migration and export driver: Pro Max lists data export, and public materials reference transfer of contacts and calendar. Export objects, migration cleanup, appointment history, and labor remain unverified.
- Ask ZenMaid: “Please confirm our team price, appointment treatment, SMS pricing, payment path, QuickBooks status, import scope, export objects, renewal, and cancellation terms in writing.”
BookingKoala
BookingKoala’s official pricing page sizes plans with providers, storage, and, on Premium, campaign contacts. Its public provider definition says a provider is someone performing the service and that each service-performing team member counts as a provider. Do not assume one provider can represent three cleaners.
| Plan | Starting public price | Visible sizing threshold | Cost-planning note |
|---|---|---|---|
| Starter | $27/month | 5 providers or 5 GB | Office-role treatment, taxes, payments, and total account sizing still require confirmation. |
| Growing | $57/month | 15 providers or 15 GB | SMS capability involves separate Twilio setup; actual messaging spend is not established by the plan price. |
| Premium | $197/month | 50 providers or 50 GB and 5,000 campaign contacts | Contacts, storage, and feature needs can change account cost. |
| Larger Premium example | $237/month | 60 providers or 60 GB and 10,000 contacts | Use the live pricing calculator and written confirmation for the buyer’s actual configuration. |
Takeaway: BookingKoala should be modeled with real service-performing providers, retained provider records, storage, contacts, Twilio, and payment-processor costs.
- Pricing model to verify: Provider, storage, campaign-contact, office-role, and feature sizing for the exact account.
- Team-size cost driver: Service-performing providers, including how active and deactivated provider records affect thresholds.
- Job-volume cost driver: More bookings can increase provider activity, messages, storage, contacts, forms, and customer-dashboard usage.
- SMS driver: Official Twilio setup documentation describes a separate Twilio account, phone number, and API setup. Actual message and carrier costs remain buyer-specific.
- Payment driver: Official payment-processor documentation says the processor determines its fees. Use the connected processor’s current terms.
- Migration, export, and cancellation driver: Upgrade and downgrade documentation describes plan thresholds and provider records. Account-closing documentation describes account and data consequences. FieldOpsLab did not reproduce either workflow.
- Ask BookingKoala: “Please confirm provider and office-role counting, active and deactivated records, storage, contacts, Twilio, processing, exports, downgrade, account closure, and data access in writing.”
Workiz
Workiz’s official pricing page lists Standard, Pro, and Ultimate but uses request-pricing language rather than publishing one complete self-serve base price for each plan. Public material says Standard and Pro include the first five users and displays annual-payment added-user amounts. Communications and AI answering are separate cost layers.
| Plan or component | Public pricing signal | Included-user signal | Cost-planning treatment |
|---|---|---|---|
| Standard | Request pricing | First 5 users included | Public page displays $55/month per additional member with annual payment; base price and exact terms require a quote. |
| Pro | Request pricing | First 5 users included | Public page displays $65/month per additional member with annual payment; base price and exact terms require a quote. |
| Ultimate | Request pricing | Vendor-confirmed configuration | Use a complete written quote. |
| Communications | Sold separately | Not resolved by core user count alone | Phone, numbers, SMS, calls, transfers, recording, and telecom costs are vendor confirmation required. |
| Genius Answering | Sold separately and requires a phone plan | Usage and plan gate vary | AI usage, overages, support, and final cost are vendor confirmation required. |
Takeaway: Workiz cannot be modeled responsibly from an old secondary pricing table. Use the official plan structure and a current all-component quote.
- Pricing model to verify: Standard, Pro, Ultimate, included users, added users, annual commitment, communications, AI, and implementation.
- Team-size cost driver: Users beyond the first five plus any role or permission treatment in the quoted setup.
- Job-volume cost driver: Calls, messages, lead intake, dispatch, invoices, payments, and AI interactions may grow with volume.
- SMS, phone, and AI driver: Workiz phone-system materials and Genius Answering materials describe the capability, not a universal final price.
- Payment driver: Online-payment materials describe cards, ACH, deposits, and related options, but a universal processing-rate table was not established for this article.
- QuickBooks driver: Standard lists QBO, while Workiz’s QuickBooks page markets QBO and QBD context. Eligibility, direction, mapping, reconciliation, and live behavior require confirmation.
- Migration, export, and cancellation driver: API, Zapier, support, export, implementation, renewal, and cancellation should remain unknown until the vendor provides current written terms.
- Ask Workiz: “Please quote our full user count and separate core FSM, communications, numbers, SMS, calls, AI, processing, QBO or QBD, implementation, export, renewal, and cancellation costs.”
Manual and spreadsheet baseline
A manual stack can have a low software invoice and still carry operating cost. Spreadsheets, Google Calendar, Gmail, phone and SMS, paper route sheets, manual invoices, and QuickBooks alone may be reasonable at low volume when one person understands every exception. The model becomes riskier as recurring schedules, shared office work, quotes, reminders, payments, cleaner instructions, and customer history grow.
- Subscription cost: May be low, confirmed zero, or spread across several small tools.
- Usage cost: Phone, SMS, payment, email, storage, and accounting costs may still exist.
- Implementation cost: Low initially, but templates, spreadsheets, and manual rules require owner maintenance.
- Measurement risk: Time, duplicate entry, missed follow-up, cleanup, and single-person dependency may not appear on invoices.
- What to verify: Whether the manual system is controlled, shared, backed up, exportable, and understandable by another office user.
Before you choose: Save the completed assumptions, unknown-cost list, and vendor answers together. The worksheet is most useful when it becomes the written record of what was priced, what was excluded, and what still needs confirmation.
For a companion risk checklist, see Hidden Costs in Cleaning Business Software.
Pricing and hidden-cost implications
The subscription is only one part of the cost model. The following categories should appear as separate rows even when the buyer has not resolved them yet.
| Cost category | What it can include | Safe calculator treatment | Verification question |
|---|---|---|---|
| Subscription | Base plan, team configuration, billing cadence, annual commitment, and renewal. | Use current official list price or a written quote. | What is the actual cash due in year one and the standard renewal price? |
| Users, seats, and providers | Office users, field users, added users, providers, active providers, and deactivated providers. | Use explicit counts and the vendor’s current definition. | Exactly which people and retained records count toward billing? |
| Plan gates | Higher plan required for QBO, QBD, exports, reports, automation, marketing, API, support, or team size. | Add the documented tier difference or mark unknown. | Which required features force a different plan? |
| SMS and reminders | Message packages, segments, Twilio, phone numbers, inbound or outbound units, and overages. | Use buyer-supplied volume and current official or quoted rates. | What is billed, what is included, and how are long messages counted? |
| Phone and AI | Phone plan, numbers, minutes, calls, transfers, recording, transcription, AI answering, and overages. | Keep quote-sensitive items unknown until written confirmation. | What units create charges, and which components are separate products? |
| Payment processing | Card and ACH rates, fixed fees, device fees, instant payouts, and other merchant costs. | Compare current and new costs separately from subscription. | What rates apply to each collection method in our account? |
| Online booking and customer portal | Plan gate, form builder, portal, provider capacity, storage, contacts, or separate booking tool. | Include only the documented cost for the selected configuration. | Is the workflow included, plan-gated, usage-limited, or sold separately? |
| CRM and lead workflow | Pipeline, campaigns, contacts, users, email, SMS, call tracking, and integrations. | Add the retained CRM or documented add-on cost. | Will the main platform replace the CRM, or will both remain? |
| QuickBooks and accounting handoff | Higher plan, separate accounting subscription, connector, API, duplicate cleanup, and manual review. | Price the software components; keep workflow behavior unverified. | Which objects move, in which direction, and on which plan? |
| Integration and automation | Zapier, middleware, API access, premium apps, webhooks, setup, and monitoring. | Use the buyer’s actual selected tool or mark unknown. | Is API or connector access included in our plan, and what usage limits apply? |
| Onboarding and setup | Vendor onboarding, configuration, forms, templates, payment setup, phone setup, and permissions. | Use a vendor quote or buyer-supplied internal estimate. | What is included, who performs it, and what remains the buyer’s responsibility? |
| Migration and import | Data cleanup, mapping, imports, recurring schedule rebuild, attachments, and overlapping subscriptions. | Keep unknown until the data and scope are reviewed. | Which objects, fields, histories, and attachments will be imported? |
| Training time | Office training, cleaner training, documentation, supervision, and productivity changes during cutover. | Use a buyer-supplied estimate; do not impose a universal rate. | Who owns training, how many roles are involved, and what must be repeated for new hires? |
| Bookkeeping or data cleanup | Duplicate customers, invoice mapping, service items, payment reconciliation, and manual correction. | Use a buyer-supplied amount or mark unknown. | What cleanup will remain after migration or accounting connection? |
| Support tier | Priority support, onboarding specialist, account manager, implementation help, or paid service. | Use the plan or quote that documents the support level. | Is support included, plan-gated, usage-limited, or separately billed? |
| Exports and exit | Plan-gated export, API access, paid migration help, manual archives, downgrade, and post-cancellation access. | Flag unknown until the buyer sees sample exports and written terms. | What can we export, in what format, and what remains available after cancellation? |
| Taxes and telecom fees | Sales tax, communications taxes, and other location- or service-dependent charges. | Use an actual invoice, quote, or qualified estimate; otherwise mark unknown. | Which taxes or fees apply to our billing address and selected services? |
Takeaway: The model does not need a fabricated universal allowance for every category. It needs an honest status for each category.
Job volume and usage-cost drivers
Job volume does not always create a direct per-job fee. It often changes the number of operational events that generate cost or force a different plan.
| Volume driver | Possible cost connection | What remains unverified |
|---|---|---|
| Recurring jobs per month | Appointment thresholds, schedule complexity, reminders, cleaner assignments, invoices, payments, and customer messages. | Whether a specific plan meters appointments, limits recurrence, or changes price at the buyer’s volume. |
| One-time jobs per month | Quotes, booking forms, scheduling, invoices, payments, photos, and customer communication. | Whether one-time jobs trigger plan, form, storage, or usage limits. |
| Quotes and estimates | CRM contacts, follow-up automation, SMS, email, forms, proposals, and plan gates. | Exact automation limits, contact limits, and whether the required workflow needs an add-on. |
| Invoices | Accounting handoff, payment requests, reminders, customer portal use, and reporting. | Whether every invoice syncs, how partial invoices behave, and whether connector limits apply. |
| Payments | Card and ACH percentage fees, fixed transaction fees, devices, saved-card methods, and payout choices. | The buyer’s final merchant rate, eligibility, holds, reviews, reserves, and payout experience. |
| Customer reminders | Email, SMS, phone, and automation volume. | Which channel is used, how messages are counted, and what the plan includes. |
| SMS messages | Message packages, segments, Twilio, numbers, campaigns, and overages. | Deliverability, carrier treatment, final message cost, and how replies are billed. |
| Phone calls and minutes | Phone plan, numbers, minutes, transfers, recording, transcription, and call tracking. | Final rate structure, overages, taxes, and actual usage. |
| AI usage | AI answering, call minutes, conversations, tasks, summaries, or other usage units. | Quality, accuracy, overages, plan gate, support, and final payable cost. |
| Online booking | Booking forms, provider availability, customer portal, storage, contacts, add-ons, and payment capture. | Conversion, live workflow fit, and whether the booking configuration causes a plan change. |
| Photos and attachments | Storage thresholds, mobile uploads, exports, and migration workload. | Actual storage consumption, retention, export format, and future pricing. |
| Contacts and campaigns | CRM or booking-platform contact thresholds, marketing add-ons, email, and SMS campaigns. | Which records count, whether inactive contacts count, and how overages are priced. |
Takeaway: A buyer should map one job into its likely messages, invoice, payment, storage, and handoff events. That is how job volume becomes a cost input.
CRM, booking, payments, and accounting handoff
A software stack can look affordable until the buyer discovers that the lead, booking, operations, payment, and accounting systems still need separate subscriptions or manual work. The worksheet should show which system owns each stage.
| Workflow stage | Possible source of truth | Cost questions | Behavior to verify |
|---|---|---|---|
| Lead creation | CRM, FSM, booking form, phone system, AI receptionist, email, or spreadsheet. | CRM add-on, contacts, users, calls, SMS, AI, API, or middleware. | Duplicate handling, source, ownership, notes, opt-outs, and handoff. |
| Quote request | Booking form, CRM, FSM, phone intake, or manual form. | Forms, campaigns, proposal tier, automation, and message usage. | Whether the request creates the right record and follow-up task. |
| Job creation | FSM, cleaning-specific tool, booking-first platform, or calendar. | Plan gate, users, providers, appointment limits, and migration. | Whether one-time and recurring jobs retain the right customer and service details. |
| Recurring schedule setup | FSM or cleaning-specific scheduling system. | Higher plan, appointment thresholds, mobile users, and training. | Weekly, biweekly, monthly, custom frequency, skips, pauses, and one-occurrence changes. |
| Cleaner mobile workflow | FSM, provider app, cleaner app, or crew-lead device. | Licensed users, providers, devices, data, and support. | Assignments, notes, access instructions, status, time, photos, and accountability. |
| Customer communication | FSM, CRM, Twilio, phone system, email, or AI tool. | SMS, phone, numbers, calls, campaigns, AI, and overages. | Channel, logging, replies, opt-outs, templates, and ownership. |
| Invoice and payment request | FSM, booking platform, payment processor, or accounting system. | Plan gate, portal, payment rates, fixed fees, devices, and payouts. | Invoice status, saved-card path, partial payment, refunds, and records. |
| Accounting handoff | QBO, QBD, export, connector, or manual re-entry. | Higher plan, accounting subscription, integration, API, cleanup, and bookkeeper time. | Customers, invoices, payments, products or services, taxes, discounts, deposits, refunds, and errors. |
| Export and cancellation | Structured exports, reports, accounting records, processor records, and manual archive. | Plan gate, export help, overlap period, storage, and post-cancellation access. | Objects, fields, attachments, messages, recurring series, history, and timing. |
Takeaway: The cost model should follow the data. When one stage remains in a separate system, its subscription and integration cost may remain in the stack.
FieldOpsLab has not verified live QBO or QBD behavior for Jobber, Housecall Pro, ZenMaid, BookingKoala, or Workiz. A vendor logo, plan label, or integration page does not prove that every customer, invoice, payment, refund, deposit, tax, service item, or error will move the way a specific cleaning business expects.
Measurement pitfalls and false precision
| Pitfall | Why it misleads | Safer treatment |
|---|---|---|
| Starting price equals real team cost | The starting plan may include one user, fewer providers, lower limits, or missing features. | Model the actual team configuration and required tier. |
| Every cleaner automatically needs a login | This may overstate cost when some workers do not use the app. | Use the buyer’s documented field-login count. |
| Crew-lead-only automatically works | This may understate workflow risk for notes, time, status, photos, and accountability. | Model the custom count and describe the operational trade-off. |
| Provider count can be compressed | A provider-based vendor may count each service-performing team member. | Follow the current official provider definition and ask about helpers and teams. |
| Job volume has no pricing effect | Jobs can increase communications, payments, storage, contacts, automation, and support needs. | Model the events generated by monthly jobs. |
| Blank means zero | The model looks complete while excluding a potentially material cost. | Create an unknown-cost flag and use a known-cost subtotal. |
| All processing is a new software cost | The business may already pay processing fees. | Compare current, new, and incremental processing. |
| One payment rate applies to everything | In-person, online, keyed, saved-card, ACH, device, and payout methods can differ. | Use method-specific buyer inputs. |
| Annual-equivalent price equals year-one cash | Prepayment, monthly commitment, promotion, taxes, and setup change cash timing. | Sum actual invoices due during the first 12 months. |
| Promotional pricing is the baseline | The cost may rise after the promotional period. | Show promotion and standard renewal separately. |
| Migration and training are free because the vendor fee is zero | Internal labor and data cleanup may still be material. | Use a buyer-supplied estimate or mark unknown. |
| A QuickBooks label proves the accounting handoff | Plan gate, object scope, direction, duplicates, payments, taxes, and errors may differ. | Ask the vendor to demonstrate the exact workflow and confirm it in writing. |
| A customer export is a complete exit archive | Jobs, recurring rules, messages, photos, payments, assignments, and history may be separate. | Request sample exports for every critical object before purchase. |
| A sales demo resolves final cost | The demo may omit usage, taxes, add-ons, annual terms, migration, and post-cancellation access. | Use the demo to complete the worksheet and request a written commercial summary. |
Takeaway: False precision usually enters through an assumption that was never written down. The worksheet should make every material assumption reviewable.
Legal, financial, accounting, privacy, SMS, payment, and AI-data cautions
This article evaluates software workflow and cost-planning math only.
Public vendor documentation does not prove legal, financial, tax, accounting, privacy, call-recording, SMS, payment, AI-data, data-security, contract, record-retention, or state/local compliance for a specific cleaning business.
Calculator outputs are estimates, not vendor quotes, invoices, guaranteed costs, accounting outcomes, tax outcomes, or legal or contract advice.
Buyers should confirm pricing, billing, payment processing, accounting, tax, privacy, SMS, AI-data, data retention, exports, downgrade, cancellation, and contract questions with vendors and qualified advisors where appropriate.
Ask vendors to provide written pricing, billing-unit, usage-limit, payment-fee, integration, export, downgrade, cancellation, renewal, and post-cancellation confirmation. Ask an appropriate qualified advisor to review sensitive legal, accounting, payment, privacy, or contract questions where relevant.
When not to use the framework
Delay the buying decision or treat the worksheet as incomplete when any of the following conditions apply:
- The business has no clear workflow bottleneck.
- Field-worker and office-user counts are not stable enough to model.
- No one has decided who needs logins or mobile access.
- Provider, helper, team, active-provider, or deactivated-provider treatment is unclear.
- There is no reasonable monthly estimate for jobs, quotes, invoices, payments, reminders, or communications.
- The buyer has no current software or payment baseline.
- The proposed plan and billing cadence are not documented.
- The payment and accounting process has no clear owner.
- Migration scope and data cleanup have not been reviewed.
- No one owns setup and training.
- Export, downgrade, cancellation, renewal, or post-cancellation questions remain unresolved.
- The vendor is pressuring the buyer toward a longer commitment before the critical workflows and costs are understood.
- The buyer expects the framework to produce a guaranteed final cost.
Vendor demo and verification questions
Use these questions to turn the worksheet into a written purchasing record.
Pricing and billing
- Show the exact plan and quote for our field-worker, office-user, licensed-user, and provider counts.
- Which people need paid access, and which roles can use limited or nonpaid access?
- How are helpers, teams, pairs, seasonal workers, inactive users, active providers, and deactivated providers counted?
- Which required features force a higher plan?
- What is billed month-to-month, under annual commitment, or prepaid annually?
- What cash is due during the first 12 months?
- Is any displayed price promotional, and what is the standard renewal price?
- Which taxes, telecom charges, or other fees may appear?
Workflow and usage
- Show recurring weekly, biweekly, monthly, and custom schedules.
- Show one skipped visit, one rescheduled visit, a pause, a cleaner substitution, and a future-series change.
- Show the cleaner or provider mobile workflow for notes, access instructions, status, time, photos, and customer history.
- Show quote, job, invoice, payment, reminder, and customer-portal workflows.
- Show which SMS, email, call, phone, transfer, recording, AI, contact, storage, or automation units are included.
- Show every overage or threshold that could change the monthly bill.
- Show online booking and customer portal costs for our actual provider and service configuration.
Payments, accounting, and integrations
- Provide the fee schedule for each card, ACH, saved-card, keyed, in-person, device, and payout method we may use.
- Show how current payment volume would be handled and which fees are software, processor, device, or payout fees.
- Show the QBO or QBD workflow on the exact plan being quoted.
- Show which customers, invoices, payments, products or services, taxes, discounts, deposits, refunds, and errors move between systems.
- Confirm API, Zapier, webhook, or connector access and any limits by plan.
- Explain what happens when a sync fails or creates a duplicate.
Migration, export, and exit
- List what onboarding and implementation include.
- List what the vendor imports and what the buyer must clean or rebuild.
- Provide sample exports for customers, service addresses, jobs, recurring schedules, notes, quotes, invoices, payments, messages, photos, attachments, users, providers, and reports.
- Explain export availability by plan and after downgrade.
- Provide the cancellation, renewal, non-renewal, downgrade, refund, and post-cancellation access terms in writing.
- Explain whether stored data is retained, deleted, restricted, or exportable after closure.
- Confirm support channels and whether any implementation or export help is separately billed.
What public evidence cannot verify
Public sources can establish visible plan names, list prices, thresholds, and vendor-described features. They cannot establish the final commercial or operational outcome for a specific cleaning company.
| Unresolved item | Why public evidence is insufficient |
|---|---|
| Exact final quote and payable cost | Negotiated pricing, account eligibility, taxes, fees, promotions, add-ons, and contract terms can differ. |
| Actual user, seat, and provider billing | Role treatment, proration, helpers, inactive records, and configuration details may be account-specific. |
| Crew-lead-only workflow success | Public pricing cannot prove that nonlicensed cleaners will receive the right information or that accountability will remain acceptable. |
| Actual SMS, phone, and AI usage | The buyer’s message mix, call volume, segments, transfers, numbers, minutes, and AI interactions are unknown until used or measured. |
| Actual payment-processing cost | Merchant terms, payment method, fixed fees, device fees, payouts, eligibility, account reviews, holds, or other conditions can differ. |
| Actual add-on and integration cost | Plan packaging, API eligibility, middleware, usage limits, and account-specific needs may not be fully public. |
| Implementation and migration effort | Data quality, field mapping, recurring schedules, attachments, cleanup, testing, and training vary by business. |
| QuickBooks and accounting behavior | Public pages do not prove live sync direction, object scope, duplicates, payments, deposits, refunds, taxes, errors, or reconciliation. |
| Export completeness | A documented export path may not include every field, history, message, attachment, recurring rule, payment record, or audit trail. |
| Support quality | Public descriptions do not prove response time, expertise, escalation, or resolution quality for a future account. |
| Cancellation and downgrade experience | Terms and help pages do not prove how a specific account will be handled in practice. |
| Post-cancellation access | Data availability, login access, retention, deletion, and exports can depend on the product and account status. |
| Taxes and telecom fees | Location, billing address, selected services, and provider treatment can change the amount. |
| Final cost after all layers | No public source combines the buyer’s exact team, usage, processing, migration, training, exports, cancellation, and contract terms. |
Takeaway: “Vendor confirmation required” is the correct answer when current official sources cannot resolve an exact cost or behavior.
Buyer verification checklist
- Confirm field workers and office users.
- Confirm the custom licensed-user count.
- Document the field-login or crew-lead model without inferring crew count.
- Confirm provider definition, active providers, inactive providers, and deactivated-provider treatment.
- Estimate recurring jobs, one-time jobs, quotes, invoices, payments, reminders, SMS, calls, and AI usage.
- Confirm online booking and customer portal requirements.
- Confirm QBO, QBD, or other accounting requirements.
- Collect current monthly software and processing costs.
- Collect the new subscription, add-on, usage, and processing terms.
- Separate current, new, and incremental payment-processing cost.
- Confirm actual billing cadence, cash due in year one, promotions, and standard renewal.
- Scope onboarding, setup, import, migration, training, and cleanup.
- Request sample exports before purchase.
- Confirm downgrade, cancellation, renewal, and post-cancellation data access.
- Mark every cost as known, confirmed zero, not applicable, or unknown.
- Review the known-cost subtotal, unknown-cost count, incomplete warning, and excluded categories.
- Obtain written vendor confirmation for every material unknown.
- Ask an appropriate qualified advisor to review sensitive legal, accounting, payment, privacy, tax, or contract questions where relevant.
Compare the modeled cost with FieldOpsLab’s software ROI calculator. Use the under-$100 guide and under-$300 stack guide as budget checks, then review data portability and cancellation risk before committing.
Final recommendation
Use the cost-planning worksheet to compare real operating configurations, not starting prices. Begin with the people and billing units: field workers, office users, licensed users, providers, active providers, and deactivated providers. Then add the workload events that can change usage: jobs, quotes, invoices, payments, reminders, SMS, calls, AI, storage, and contacts.
Keep software-only cost separate from payment processing. Compare current and proposed processing before calculating incremental cost. Keep one-time setup, migration, training, and cleanup separate from recurring cost. Use the actual subscription cash schedule for first-year planning, and use standard nonpromotional pricing for the renewal-year view.
Most importantly, do not force unknown costs into a reassuring number. A known-cost subtotal with four unresolved categories is more useful than a polished “total” that silently assumes those categories are free. Complete the model with current official documentation and written vendor confirmation before purchase.
Methodology
FieldOpsLab developed this article as a research-based cost-planning and buyer-risk framework for US residential cleaning companies with 2–20 field workers and 1–2 office users. Research focused on how software costs can change with named users, team configurations, providers, active and deactivated records, appointment thresholds, storage, contacts, communications, AI, payments, accounting requirements, billing cadence, setup, migration, training, exports, and cancellation.
Product information and pricing were checked on 2026-07-10 using current official public sources for Jobber, Housecall Pro, ZenMaid, BookingKoala, Workiz, and QuickBooks Payments. Visible public plan names, list prices, user thresholds, provider thresholds, and displayed rate examples were treated as public facts with a pricing-change caveat. Vendor feature, help, payment, integration, export, billing, and cancellation materials were treated as official vendor descriptions that remain unverified in practice.
FieldOpsLab did not use third-party pricing pages as current product proof. FieldOpsLab did not use controlled accounts, paid accounts, vendor demos, invoices, quotes, payment statements, usage bills, migration invoices, implementation invoices, export checks, support interactions, or cancellation checks. Exact commercial and behavioral claims that could not be resolved from current official sources were labeled vendor confirmation required.
The formulas were designed to keep subscription, usage, payment processing, one-time cost, billing cadence, per-unit views, and unknown-cost flags separate. The framework does not provide financial, accounting, tax, legal, privacy, SMS, payment-compliance, cybersecurity, state/local, or contract advice.
Sources
- Jobber pricing
- Housecall Pro pricing
- Housecall Pro payment-processing options
- ZenMaid pricing
- BookingKoala pricing
- BookingKoala upgrade or downgrade documentation
- BookingKoala Twilio setup
- BookingKoala payment processors overview
- BookingKoala account closing documentation
- Workiz pricing plans
- Workiz phone system
- Workiz Genius Answering
- Workiz online payments
- Workiz QuickBooks integration
- QuickBooks payment rates
