← All posts
Jobber to ServiceTitan migrationCRM migrationApril 26, 2026Clint Research Team

How to Migrate From Jobber to ServiceTitan Without Losing Data

ServiceTitan's 2025 AI in the Trades report shows the average contractor on ServiceTitan does $4.6M annually versus $1.8M on smaller CRMs. Here is the full migration playbook from Jobber to ServiceTitan, what migrates cleanly, and what does not.

11 min read

Key takeaways

  • ServiceTitan publishes a public migration framework but most $2M+ contractors hire Datix, Service MVP, or AroFlo for $8K to $30K
  • Customer records and service addresses migrate cleanly via CSV. Job history, line items, and attachments do not move automatically
  • Plan for a 60 to 120 day overlap period where both systems run in parallel before fully cutting over
Contents
  1. 011. Understand What Actually Migrates
  2. 022. Pull a Full Export From Jobber
  3. 033. Audit and Clean Before You Touch ServiceTitan
  4. 044. Decide Migration Path: DIY, Partner, or Hybrid
  5. 055. Set Up the ServiceTitan Schema Before Import
  6. 066. Import Customers and Locations First
  7. 077. Decide What to Do With Open Quotes and Jobs
  8. 088. Migrate Recurring Service Contracts Manually
  9. 099. Run Both Systems in Parallel for 60 to 90 Days
  10. 1010. Reconcile Customer Counts Before Going Read-Only
  11. 1111. Archive Jobber to Read-Only and Lock It Down
  12. 1212. Train the Team Before Cutover, Not After
  13. 13Sources
  14. 14Frequently Asked Questions

The 2025 ServiceTitan AI in the Trades report found contractors on ServiceTitan average $4.6M in annual revenue versus $1.8M on smaller field-service CRMs, which is why most growing Jobber shops eventually look at the move. The migration is not a button-click. It is a 60 to 120 day project with real data risk.

This is the playbook for moving from Jobber to ServiceTitan without losing customers, history, or sleep.

1. Understand What Actually Migrates

Jobber and ServiceTitan model contractor data differently. Jobber treats a customer as one record with an embedded address. ServiceTitan splits customer (the billing identity) from location (the service address) and supports multiple locations per customer.

That schema mismatch is the source of most migration pain. Before you start, know which Jobber concepts have a clean ServiceTitan equivalent and which do not.

Jobber dataServiceTitan equivalentMigrates cleanly?
Clients (customers)Customer + Location recordsYes, via CSV
Service propertiesLocationsYes, but requires splitting from customer record
QuotesEstimatesPartial. Status maps but line items often re-keyed
JobsJobsNo native importer. Most teams skip and re-create open jobs only
InvoicesInvoicesPartial. Historical invoices import as PDFs or notes, not editable records
Line itemsPricebook itemsNo. Pricebook is rebuilt from scratch in ServiceTitan
Custom fieldsTags + custom fieldsPartial. Field-by-field mapping required
TagsTagsYes
Attachments (photos, PDFs)Job attachmentsNo. Manual export and re-attach, or skip
Recurring contractsMemberships + Recurring ServicesNo. Rebuilt manually in ServiceTitan
NotesNotesYes, concatenated into customer or job notes field
Time entriesTimesheetsNo. Historical time stays in Jobber as archive

The honest summary is customers and locations migrate cleanly. Most other history is either re-created, archived as PDFs, or left behind.

Text Clint: "list every Jobber custom field on my client and job records so I can map each one to ServiceTitan"

2. Pull a Full Export From Jobber

Jobber's data export is not as developer-friendly as ServiceTitan's. The two paths are the in-app export and the Jobber Developer API.

The in-app export under Settings > Data > Export ZIP gives you customers, properties, quotes, jobs, invoices, and line items as separate CSVs. This is what most migration partners use as the starting point.

The API gives you more granular control but requires a developer. The Jobber GraphQL API exposes clients, properties, requests, quotes, jobs, invoices, and payments queries. For shops doing custom migrations, the API is the cleaner path because you can pull every field, including custom fields and tags, in a structured format.

Pull the full export. Do not filter by active customers. Inactive and dormant customers are part of your reactivation pool and should come with you.

Text Clint: "tell me how many clients in Jobber have not had a job in the last 24 months so I know how big my dormant list is"

3. Audit and Clean Before You Touch ServiceTitan

This is the single highest-impact step. Every dirty record you import becomes a record ServiceTitan automations touch on day one.

The audit list:

  • Duplicate clients (same phone, same email, same address)
  • Clients with no phone or email
  • Properties with malformed addresses that will fail ServiceTitan geocoding
  • Tags that are typos of other tags (vip, VIP , vip-customer)
  • Custom fields that are empty across 90% of records
  • Quotes and jobs in invalid statuses

A 2024 thread on r/HVAC had a Tampa contractor describe finding 1,800 duplicate clients in his Jobber export across 11,000 total records, plus 2,300 with no phone, before his Datix migration. Cleaning the export took two weekends. Cleaning would have taken 6 months inside live ServiceTitan.

For a structured pre-migration cleanup checklist, see how to clean up your contractor CRM in one weekend and the broader CRM data hygiene checklist for home service.

Text Clint: "audit my Jobber customer export for duplicates by phone, email, and address before I send it to ServiceTitan"

4. Decide Migration Path: DIY, Partner, or Hybrid

ServiceTitan officially recommends working with a migration partner. The three most-cited names in 2025 contractor forums are Datix, Service MVP, and AroFlo. Pricing typically lands in these brackets:

  • DIY using ServiceTitan's CSV importers: $0 plus your time, 80 to 200 hours of internal effort
  • Hybrid (you clean, partner imports): $5K to $12K
  • Full-service (partner cleans and imports): $15K to $30K
  • Enterprise (partner builds custom mappers, multi-source consolidation): $30K to $80K

The break-even math is roughly: if your team's time is worth more than $50/hour and you have over 5,000 customer records, the hybrid path pays for itself.

The Wilson and Carr Owned and Operated podcast has multiple episodes featuring contractors who tried DIY ServiceTitan migrations and ended up calling Datix anyway after weeks of frustration with locations and pricebook setup.

Text Clint: "estimate how many hours my team would spend cleaning the Jobber export based on the number of duplicates and dirty fields you found"

5. Set Up the ServiceTitan Schema Before Import

ServiceTitan needs to know your structure before you import customers into it. Set these up in this order:

  1. Business units (residential service, commercial, install, maintenance, etc)
  2. Job types and tag types
  3. Custom fields on customer, location, and job
  4. Pricebook (skeleton at minimum, full build can come later)
  5. Membership types if you carry recurring service plans
  6. Forms used at the field level

Get the lead module configured at the same time so attribution does not break on day one. See how to track leads in ServiceTitan for the Marketing Pro fields you want populated before customers land in the system.

Skipping this step is the most common DIY mistake. Importing customers into a ServiceTitan instance that has no business units forces every record into the default Service unit, which then takes weeks to re-bucket.

Text Clint: "summarize the business units I have running implicitly in Jobber based on job types, tags, and customer categories"

6. Import Customers and Locations First

ServiceTitan's customer importer is two CSVs: customers and locations, linked by a customer ID column.

The customer CSV has billing identity (name, billing address, phone, email, tags). The location CSV has service addresses, with a foreign key back to customer ID.

For Jobber clients with one property, the mapping is one-to-one. For Jobber clients with multiple properties, each property becomes its own location record. Get this right or your dispatch maps will be wrong.

Run the import in batches of 500 to 1,000. Spot-check the first batch before running the rest. Common landing problems: the location count does not match the property count from Jobber, geocoding fails on rural addresses, and tags do not apply because they were not pre-created in step 5.

Text Clint: "compare my Jobber property count to the location count in ServiceTitan and tell me which clients lost properties in the import"

7. Decide What to Do With Open Quotes and Jobs

You cannot bulk import open Jobber quotes and jobs into ServiceTitan as native records. The pragmatic options:

  • Manually re-create every open quote and job with status in progress or scheduled. For most contractors this is 50 to 200 records.
  • Export historical quotes and jobs as PDFs, attach them to the customer record in ServiceTitan, and tag the customer with historical-data-jobber.
  • Pay a migration partner to import historical invoices as line-item-free invoice shells in ServiceTitan, which preserves dates and amounts but not the underlying detail.

The hybrid approach most contractors land on: re-create open jobs manually, archive everything older than 90 days as PDFs in customer files, and accept that line-item-level history below the 90-day mark stays in Jobber as a read-only archive.

For background on what reports each system can produce after migration, compare Jobber reports every home service business should run with ServiceTitan reports that move the needle.

Text Clint: "list every Jobber job that is currently scheduled or in progress, with the customer, address, and assigned tech, so I can re-create them in ServiceTitan"

8. Migrate Recurring Service Contracts Manually

Jobber's recurring jobs and ServiceTitan's memberships are structurally different. There is no direct importer.

For each recurring service in Jobber, create a corresponding membership type in ServiceTitan, then assign the membership to the customer manually. ServiceTitan's memberships documentation walks through the setup.

Most contractors handle this in batches by service type: all maintenance contracts in one session, all service agreements in another. A 200-customer recurring book takes roughly 8 to 16 hours of admin time to migrate cleanly.

Plan to do this before going live in ServiceTitan, not after. Customers on recurring service who get billed wrong or scheduled twice during the cutover are the most expensive migration mistake.

Text Clint: "list every Jobber client with an active recurring job along with the frequency, service type, and last visit date"

9. Run Both Systems in Parallel for 60 to 90 Days

Cut over by date, not all at once. The standard pattern: every new job from cutover date forward goes into ServiceTitan. Every job opened before the cutover date stays in Jobber until it closes.

After 60 to 90 days, the Jobber system goes read-only. Active jobs by then are all in ServiceTitan.

During the parallel period:

  • Office staff books all new appointments in ServiceTitan
  • Techs use ServiceTitan in the field
  • Bookkeeper closes out remaining Jobber invoices but does not create new ones in Jobber
  • Customer phone calls for old job questions get looked up in Jobber as a reference

The parallel period is the most expensive part of the migration in time spent, but skipping it produces customer-facing errors that hurt much more.

Text Clint: "show me jobs in the last 30 days I might have created in Jobber by accident instead of ServiceTitan"

10. Reconcile Customer Counts Before Going Read-Only

Before you turn off Jobber, run reconciliation queries across both systems.

Customer count in Jobber should match customer count in ServiceTitan within 1% (the gap is usually duplicates you intentionally collapsed). Active recurring contract count should match exactly. Open invoice total should match within $0 because money does not lie.

If the numbers do not match, do not flip the switch. Find the gap. The most common cause is properties that did not become locations because their address failed geocoding.

For chasing down hidden Housecall Pro reporting gaps the same audit pattern applies, see Housecall Pro reports that are hidden or missing.

Text Clint: "compare total active customer count and open invoice total between Jobber and ServiceTitan as of today"

11. Archive Jobber to Read-Only and Lock It Down

Once you are confident, downgrade your Jobber subscription to the lowest tier or cancel after exporting one final ZIP. Most contractors keep one read-only Jobber seat for 12 months to look up old job details when a customer calls about warranty work.

Save three things in long-term archive:

  • Final Jobber ZIP export
  • Final Jobber GraphQL API pull as JSON
  • A Drive folder with attachments organized by customer name

The archive should be findable by anyone in the office in under 60 seconds. Test that it is.

Text Clint: "list any customer who has reached out in the last 30 days about a job that exists only in the Jobber archive"

12. Train the Team Before Cutover, Not After

ServiceTitan's UI is denser than Jobber's. Office staff and techs need real training, not a 30-minute video.

ServiceTitan provides onboarding sessions during the migration. Use them. Schedule a half-day training session for office staff and a separate session for field techs. Cover the workflows they actually use, not the full feature set.

The contractors on r/HVAC who report painful ServiceTitan migrations almost always cite "we did not train the team enough before going live" as the root cause. The contractors who report smooth migrations spent 10 to 20 hours per role on training before cutover.

For an explanation of where ServiceTitan's built-in AI fits versus standalone tools after the migration, see ServiceTitan AI vs standalone AI for contractors.

Text Clint: "summarize the top 10 workflows my office staff use in Jobber based on activity logs, so I know what to train them on in ServiceTitan first"

Sources

Clint sits outside your CRM and answers questions about the data inside it. Once you are on ServiceTitan, ask Clint to audit duplicates, surface stale customers, and reconcile counts against your old Jobber archive. See it in action at textclint.com.

Frequently Asked Questions

6 questions home service owners actually ask about this.

  • 01How long does a Jobber to ServiceTitan migration actually take?

    Plan for 90 days end-to-end. Two weeks of audit and prep, two weeks of partner-led setup and import, 60 days of parallel operation, then cutover. Larger shops with 10K+ customers stretch this to 120 to 180 days.

  • 02What does it cost?

    DIY: 80 to 200 internal hours, no vendor cost. Hybrid: $5K to $12K. Full-service partner: $15K to $30K. Add ServiceTitan's monthly subscription which runs $200+ per user per month and varies by feature set.

  • 03Will my customers notice the migration?

    If done well, only at the seams: payment reminders may have a different sender domain, invoice PDFs look different, customer portal access changes. Communicate this with one email to your active customer base before cutover.

  • 04What happens to my Jobber Connect bookings during migration?

    If you use Jobber's online booking, redirect the booking link to a ServiceTitan landing page or a holding form on cutover day. Booked appointments inside the parallel window get manually moved to ServiceTitan.

  • 05Should I migrate Jobber custom fields?

    Map the ones that get used in 30%+ of records. The rest become noise. Most contractors prune their custom field count by 40 to 60% during the migration as a forced cleanup. Once you are live, the audience builder in Marketing Pro lets you mass email customers from ServiceTitan using the same custom fields you migrated.

  • 06Does Clint help with the migration?

    Clint connects to ServiceTitan after the migration is done and answers questions across the new data plus the Jobber archive. The CSV migration step itself is best handled by ServiceTitan's importers or a paid migration partner.

See Clint in action

Clint is the pre-built AI for home service shops. Connect your CRM, email, and phone system in minutes and the agents run on your real data.