FieldproxyAI-native field service software

Multi-branch operations

What field service software works for 100+ technicians across multiple branches?

One that keeps each branch's dispatch, people and money separate where they must be, and adds them up where leadership needs it: a board per branch, permissions that limit each dispatcher and manager to their own region, technicians who can be shared across branches, per-company numbering and accounting where branches are separate legal entities, and one rollup report. At this size the shortlist is usually ServiceTitan (business units, and Enterprise Hub for several tenants), Salesforce Field Service or Dynamics 365 Field Service (territories and org units on a CRM platform), IFS for asset-heavy enterprises, BuildOps for commercial contractors, and configurable platforms such as Fieldproxy. The right pick depends less on technician count than on how different your branches are from each other.

  • Decide first: are branches divisions of one company, separate legal companies, or a mix? The setup differs.
  • Each dispatcher should see their own branch's board by default, with cross-branch lending one click away.
  • Permissions must limit data by branch or region, not just by role.
  • One rollup report across branches, without exporting each branch to a spreadsheet.
  • Ask how the vendor handles branches you acquire next year, with their own price book and accounting file.

Book your demo

60 minute video call ยท Step 1 of 2: your details, then pick a time

Number of employees

If every branch runs the same residential playbook, most large FSM vendors will do. This page is for groups whose branches differ: acquired brands, commercial and residential mixed, or sister companies sharing technicians.

Facts checked as of November 2026. Sources at the end of the page.

Step by step

How a multi-branch setup works, step by step

Vendors name the pieces differently (business units, territories, organizational units, companies), but the structure underneath is the same.

1. Model the branch structure before anything else

Each branch is either a division of one legal company (one tax registration, one set of books) or its own company (own name on invoices, own numbering, own accounting file). ServiceTitan models divisions as business units, created under Settings, Operations, Business Units, each with an official customer-facing name, license number, trade and division. Dynamics 365 Field Service separates organizational units (who is responsible for the work, used to control access) from territories (where the work happens).

2. Route incoming work to the right branch automatically

A call, email or portal request lands on the branch that covers the site. ServiceTitan does this with zones made of ZIP codes or cities, including wildcards such as 912* for every ZIP starting with 912. Salesforce Field Service uses service territories, each tied to one time zone and its own operating hours.

3. Give each dispatcher a board for their branch

A dispatcher with 30 technicians cannot work a board of 150. Microsoft's own guidance for the Dynamics 365 schedule board is to show no more than 25 to 50 resources at once and to create separate board tabs for different teams or territories.

4. Lock data down by branch, not just by role

A branch manager sees their own jobs, margins and technicians; the regional director sees several branches; finance sees all. Field roles see only what they need. This is the permission question buyers at this size ask most, usually phrased as 'can users only see certain trades or regions?'

5. Keep money per branch or per company

Price books, labor rates, quote and invoice numbering, and the accounting file or class each branch posts to. Groups built by acquisition usually need per-company settings for at least a transition period, because each acquired brand arrives with its own price list and its own books.

6. Share technicians and stock across branches

Specialists (a controls engineer, a high-voltage tech) cover several branches. The system should let one branch book another's technician while the labor cost lands on the branch that bills the job, and show stock by warehouse or van so a part can be pulled from the next branch over.

7. Roll everything up for leadership

Revenue, margin, first-time fix, overdue work and SLA performance per branch, side by side, from live data. If the rollup needs an analyst exporting each branch to Excel every Monday, the structure is wrong.

Where it breaks

Why multi-branch rollouts go wrong

These are the failure modes buyers described on our sales calls, from a pest control roll-up with several hundred technicians, commercial facility maintenance, renewable energy O&M across 16-17 sites, an equipment maker with regional service teams, and a commercial HVAC group with sister companies.

Every acquired brand still runs its own system

Roll-ups often end up with three or four FSM tools at once, each with its own customer list and integrations. The heavy integration burden falls on the buyer's own team, and nobody can report across the group without exports.

One shared board for everyone

Without per-branch boards, dispatchers scroll past other branches' technicians all day, and jobs get booked on someone 200 miles away. Microsoft's troubleshooting guide lists board filters that exclude a resource's territory, or two filters with no resources in common, as reasons technicians vanish from a Dynamics 365 board, so territory setup has to be right before go-live.

Permissions by role only

A role called Dispatcher that sees every branch's customers and prices is a problem when branches compete for bonuses or when one is a separate legal company. An equipment maker we spoke to needed tickets segregated by region, with customer and engineer names hidden from other regions.

Changing the branch structure on a live account

Restructuring branches after go-live is risky. ServiceTitan's own best-practice guide for business units says to test the setup in a sandbox first, then make the change in the live account after hours with a contingency plan for on-call technicians, because setup changes can interrupt jobs.

Branches that should have been separate tenants (or the reverse)

Splitting into several accounts keeps branches clean but makes group reporting and shared customers hard; ServiceTitan built Enterprise Hub for groups running two or more tenants, with central configuration and shared templates. Merging everything into one account is simpler to report on but harder when companies keep separate books.

No audit trail

With 100+ users, 'who moved this job?' comes up weekly. Several buyers asked us specifically whether the activity log records when a job is moved or deleted, after their current tool could not answer it.

The options

How the main vendors handle branches

VendorHow branches are modeledGood fitWatch for
ServiceTitanBusiness units inside one tenant; zones route by ZIP; Enterprise Hub links two or more tenantsResidential and light commercial HVAC, plumbing, electrical groupsEnterprise Hub is requested through your Customer Success Manager; check pricing with ServiceTitan
Salesforce Field ServiceService territories with their own operating hours, one time zone eachGroups already running Salesforce for sales and serviceUsually needs a Salesforce partner to implement and maintain
Dynamics 365 Field ServiceOrganizational units for responsibility and access; territories for where work happensMicrosoft-stack enterprisesTerritory filters are not hierarchy-aware without customizing the board
IFS CloudSites and maintenance organizations in an ERP-grade suiteAsset-heavy enterprises with ERP, service and EAM in oneLong implementations; confirm multi-company setup with IFS directly
BuildOpsSays it supports parent/child accounts, multi-branch dispatching and cross-location reportingCommercial mechanical, electrical and plumbing contractorsPriced per user per month
FieldproxyBranches as business units or as separate companies in one account, with per-company branding, numbering, price books and accounting fileGroups whose branches run different processes, or that keep adding acquired brandsSmaller vendor than the others; ask for a reference at your scale

As of November 2026, from each vendor's own documentation (sources below). Vendors change packaging often; confirm the module and plan you would need in writing.

Worked example

A worked example: 130 technicians, 4 branches, 2 companies

Say a commercial HVAC and plumbing group has four branches. Two are the original company; two were acquired and still file their own accounts. Made-up numbers to show the structure, not results.

BranchTechniciansLegal entityWhat it keeps separateWhat it shares
North (HQ)45Company ABoard, price bookCustomers, specialists, reporting
South35Company ABoard, price bookCustomers, specialists, reporting
Coastal (acquired 2025)30Company BBoard, price book, invoice numbering, accounting file, logo on documentsSpecialists, reporting
Inland (acquired 2026)20Company CBoard, price book, invoice numbering, accounting file, logo on documentsSpecialists, reporting

Four boards of 20 to 45 technicians each stay inside Microsoft's suggested 25 to 50 per board view. One rollup report shows all four side by side.

On a Tuesday, a Coastal customer calls with a chiller fault. Coastal's two controls technicians are booked, so the Coastal dispatcher borrows one from North for the afternoon. The job stays a Company B job: the quote uses Coastal's price book, the invoice carries Company B's number and logo and posts to Company B's accounting file. The North technician's hours show on the job, so the group report can show labor lent between branches.

On Monday, leadership opens one report: revenue, margin, open jobs past due, and SLA breaches per branch for last week. Nobody exported anything. When the group buys a fifth branch next year, it is added as a new company with its own price book, rather than a fifth system.

Before you buy

What to check before you buy

Good signs

  • The vendor asks how your branches differ before showing a demo.
  • You can see a board filtered to one branch, then book a technician from another branch on it.
  • A user can be limited to their branch's jobs, customers and prices, and you can see that in the demo by logging in as them.
  • Per-company numbering, branding, price books and accounting file, if any branch is a separate legal entity.
  • One report across branches from live data, without an export.
  • An audit log that shows who moved, changed or deleted a job.
  • A written plan for adding the next acquired branch.

Red flags

  • The answer to 'can a manager see only their branch?' is a custom development project.
  • Group reporting means exporting each branch or tenant into a BI tool.
  • Every branch must adopt one price book and one process on day one.
  • The implementation estimate assumes one branch and multiplies.
  • No customer reference at a comparable number of technicians and branches.

In Fieldproxy

Setting it up in Fieldproxy

Fieldproxy is set up around how each company already works, by the Fieldproxy team, and is live within a day; migration from your current systems is free and assisted. For a multi-branch group the setup looks like this.

Branches and companies

Divisions of one company are business units set on the job type; separate legal companies are set up as companies in the same account, each with its own branding, quote, job and invoice numbering, price book and accounting file. You can mix both. See /solutions/multi-company-field-service.

Permissions by branch

Role-based permissions per table, with audit logs. A dispatcher or branch manager is limited to their branch's records (e.g. a branch field on jobs, customers and technicians that the role filters on), and record history shows who changed which field, from what to what.

A board per branch, with lending

Each dispatcher opens the board for their branch (e.g. a saved branch filter). The Dispatch agent (/agents/dispatch-agent) suggests the right technician by distance, skills and certifications, inventory and cost, and can be set to look across branches when the home branch has nobody free (e.g. for specialists only).

Overdue work and SLAs per branch

The Watcher agent (/agents/watcher-agent) flags overdue and missed visits and SLA risk, and the Scheduler agent (/agents/scheduler-agent) emails each branch manager their own daily list and leadership the weekly rollup (e.g. revenue, open jobs past due and SLA breaches by branch).

Accounting and ERP

Two-way sync with QuickBooks Online, Desktop and Enterprise, Xero and Sage, with each company mapped to its own file or class; NetSuite and SAP integrations turn orders into jobs and send completed work back. Help desk tickets from ServiceNow, Zendesk or Freshservice can become jobs at the branch that covers the site.

Languages and AI access

27 languages, chosen per person, for branches in different countries. Leadership can ask questions across branches from Claude or ChatGPT through the MCP server (/mcp), limited by the same permissions as the app.

Pricing

One price per company with unlimited users, so adding a branch's office staff and technicians does not add seats. See /pricing.

How switching works

How switching to Fieldproxy works

We move your data over and set the system up to the way you already work. Fieldproxy replaces the old tool; it does not run alongside it.

  1. Map your branches

    Tell us each branch, whether it is a division or a separate company, what it keeps separate (price book, numbering, books) and what it shares (customers, specialists).
  2. We build it on your real structure

    Companies, business units, roles and boards are set up from your documents, so the demo shows your branches, not a sample company.
  3. Log in as a branch manager

    In the demo, sign in as a branch user and check they see only their branch, then lend a technician across branches and run the group report.
  4. Move branches over

    Customers, sites, equipment, open jobs and contracts come across from each branch's current system. Branches can go live one at a time or together.

FAQ

Questions people ask

Can a field service platform handle 400-500 technicians?
Several can. Technician count is rarely the limit; board size, permissions and reporting across branches are. Ask for a reference at your scale and test a board with one branch's real technicians.
Should each branch have its own account or one shared account?
One account with business units or companies is simpler to report on and lets branches share customers and technicians. Separate accounts suit branches that share nothing; ServiceTitan's Enterprise Hub exists for groups that already run two or more tenants.
Can users only see certain trades or regions?
They should be able to. Ask the vendor to show a user limited by region or branch, not just by role, and log in as that user during the demo.
How do we handle a branch we acquire next year?
Add it as a new company or business unit with its own price book and, if needed, its own accounting file, then migrate its data from its current tool. Avoid platforms where adding a branch means a new implementation project.
Can technicians work for more than one branch?
Yes, if the system books shared technicians across branch boards and keeps each job's labor with the branch or company that bills it.
Does it track who moved or deleted a job?
Ask to see the audit log in the demo. In Fieldproxy, record history shows who changed which field and deleted records go to a recycle bin that can be restored.
How long does a multi-branch rollout take?
Published timelines run from weeks to months for the large platforms; see /field-service-software-implementation for vendor-by-vendor figures. Fieldproxy is live within a day per branch, with the setup and migration done for you.

Sources

Competitor details on this page come from the vendors' own pages and documentation, checked as of November 2026. Plans and prices change, so check the vendor's current page before you decide.

See it built on your workflow

Tell us how your jobs run today. We build a demo on your stages, forms and pricing before the call.