Migrating your roofing company's CRM and field service tools is a 45-55 hour undertaking that touches every department—from the sales desk to the field crews to the back office—and getting it wrong means months of frustration, double-entry, and expensive rework. This guide provides the complete decision framework based on real implementation planning with roofing contractors who've made the leap from legacy tool stacks to modern, integrated operations.
We're not talking about a simple software swap. This is a RevOps modernization—transforming your CRM from a passive database into an active Command Center that actually runs your business. According to Johnny Grow's 2025 CRM research, the CRM failure rate sits at 55%, with 7 in 10 implementations exceeding planned timelines by 30% or more. The questions you ask before committing and the architecture decisions you make during planning determine whether you join that statistic or build lasting operational advantage.
I've guided dozens of roofing companies through this exact transition. The difference between those who struggle and those who scale smoothly comes down to asking the right questions upfront and understanding what the answers should look like.
Key Takeaways: - Data migration (photos, quotes, products) requires 10+ hours of cleanup before implementation begins - The Office (HubSpot) vs Field (Zuper) boundary design prevents tool sprawl and eliminates double-entry - Role-based views cut training time dramatically by eliminating "everyone learns everything" fatigue - Claims and supplementing workflows belong in HubSpot as a dedicated object—not hacked into deal pipelines - Realistic timeline: 8-10 weeks, with speed determined by your team's availability and data cleanliness
Before you commit to any CRM or field service platform migration, you need answers to these questions. Not vague reassurances—specific, operational answers that demonstrate your implementation partner understands roofing.
You never know if some random company is going to come out with software that changes the universe. But here's what you can evaluate: vendor stability, investment backing, and strategic positioning.
A platform backed by serious capital—Sequoia, HubSpot Ventures, Zendesk—isn't going anywhere. They're building for the long term because their investors demand it. Product-first companies led by founders focused on becoming publicly traded have different incentives than bootstrap startups chasing quick exits.
I'm typically 3 years ahead of the mainstream on technology. If the platform I'm recommending wasn't the long-term play, I wouldn't have retooled my entire company around it.
You need access to your customer success manager during business hours—roughly 8-to-5 in your time zone. But honestly, we've responded to emails much later and much earlier when the situation demanded it.
The critical thing: send tickets, not just emails. Tickets get tracked and resolved. Emails get lost.
Your implementation partner should provide Level 1 and Level 2 support for simple requests like adding users or changing configurations. Strategic evolution of your system—that's a different conversation about ongoing RevOps support.
With a proper implementation, the answer is yes. You need a commitment to migrating your data, not just setting up empty new software.
For quotes: signed PDFs are typically stored at permanent links and don't require migration. Unsigned quotes are trickier—they're often generated on-demand, so you'll need an overlap period where both systems run simultaneously.
For photos: this is the heavy lift. Migrating from CompanyCam or similar requires building a dedicated process that downloads each project, stores it in cloud storage, and writes it into the new system at the building level. This takes days on a dedicated machine, not hours.
The advantage of annual agreements is price lock-in. Software companies generally increase prices annually, but your contracted rate holds. Talk to your implementation partner at renewal time—good partners advocate for favorable terms.
For implementation itself, payment structures can flex. A $15,000-$25,000 implementation might break into three monthly payments of $5,000-$8,000 to align with your cash flow, especially if you're in a northern market with seasonal revenue patterns.
You should be able to get introductions to companies using the same platform, ideally in similar markets. Northern climate? Seasonal patterns? Retail versus insurance mix? These factors matter.
If your implementation partner can't provide references, that's a red flag.
Multi-location support is standard for enterprise-grade platforms. Territory management, location-specific views, and even employee skill matching for dispatch should all be available. If a platform has landed clients like IKEA, your two-state roofing operation isn't going to be a problem.
The build process takes about eight weeks for a typical migration. Could be faster if your team has availability and your data is clean. Could stretch to twelve weeks if you're running hot in-season or your legacy systems are a mess.
What determines speed: your team's availability for feedback sessions, how clean your existing data is, seasonal timing, and complexity of your current workflows.
Data migration is where implementation partners earn their fee. This isn't drag-and-drop—it's careful mapping of objects, properties, and relationships across systems that weren't designed to talk to each other.
Migrating photos from CompanyCam or similar platforms requires setting up a separate database and building a process that programmatically downloads each project, stores it in cloud storage, and writes it back into your new field service tool.
The biggest task will be migrating CompanyCam photos because that requires setting up a separate database that we have to build—a program that goes through, downloads each project, stores it in a cloud, and writes it back into Zuper.
This process takes days, not hours. It runs on a dedicated machine because of the sheer volume of file transfers. You're potentially moving thousands of projects with dozens of photos each.
Some companies choose to keep one user in CompanyCam forever instead of migrating. I don't recommend this—I prefer closing one chapter and opening another cleanly. But it's an option if timeline or budget forces a tradeoff.
Signed PDFs from your old quoting tool typically exist at permanent links. Those don't need migration—the links work, and the documents are accessible from deal records.
Unsigned quotes are the problem. Many quoting tools generate PDFs on-demand rather than storing them. That means if you cancel your old subscription, those pending quotes vanish.
The solution: run both systems simultaneously for 2-4 weeks after go-live. Use this overlap period strategically—run a "2025 pricing in 2026" campaign to close out pending opportunities before the system change.
Here's a script that works:
"With the year coming to an end, we're making a system change to serve our customers even better. 60 days after we move, your old quote won't exist in our system. We want to give you the opportunity to secure 2025 pricing in 2026. If you sign before [date], we're honoring those prices with just a small $500 refundable hold to secure your materials."
Taking messy product lists from three different softwares, standardizing naming conventions, formatting for import, and getting approval on a Master List—this is unsexy work that makes everything else possible.
Expect to invest 10 hours minimum in product and data cleanup. This includes meetings with your operations lead to approve the consolidated list, ensure customer-centric line item descriptions carry over, and verify pricing accuracy.
Garbage in, garbage out. If your current CRM is full of duplicate products, inconsistent naming, and outdated pricing, migration will inherit that mess. Consider a few pizza nights with the team cleaning up data before implementation begins.
The most important decision in a Zuper + HubSpot implementation isn't which features to enable—it's defining the boundary between systems. Get this wrong and you'll create double-entry, conflicting data, and confused teams. Get it right and you'll have crystal-clear ownership that scales.
Here's the framework that works:
HubSpot (Office) owns: Revenue, Customer Communications, Claims, and Reporting. Your inside sales team, claims managers, accounting staff, and leadership live here. This is your single source of truth for business performance.
Zuper (Field) owns: Work Orders, Scheduling, Site Evidence, and Inspections. Your site supervisors, field managers, repair techs, and production crews live here. This is where physical work gets documented and executed.
The boundary is clean: HubSpot orchestrates the business; Zuper executes the work. Data syncs between them so leadership sees field status in HubSpot dashboards, but each system owns its domain.
This prevents the nightmare of "which system has the right data?" that plagues companies running disconnected tools.
One of the biggest architectural mistakes I see: hacking claims and supplements into deal pipelines. It seems convenient—deals already have stages, why not add "Supplementing" as a stage?
The problem: claims represent additional revenue on an existing deal, not new deals. When you track supplements as deals, you double-count revenue and corrupt your sales reporting.
The solution: build a dedicated Claims object or specialized pipeline in HubSpot that centralizes photo evidence from Zuper and tracks supplement status separately. External adjusters or internal staff get a single view to work from. No found money slips through the cracks, and your deal pipeline stays clean.
HubSpot's deal stages need to share the same structural model as Zuper's job flow for inspections, quotes, and jobs. When both systems speak the same language, reporting works correctly.
If you're currently on HubSpot Service Hub using tickets to manage field tasks, warranties, or repairs, that functionality becomes redundant when Zuper goes live. You shouldn't keep paying for it.
Before your HubSpot renewal, map historical ticket data to Deal or Project objects. HubSpot has a free Projects object that connects deals to ongoing work—this catches the Zuper sync without requiring Service Hub.
Execute the deprecation plan before your renewal date. This might mean: - Negotiating month-to-month terms during transition - Reducing your HubSpot scope to remove Service Hub - Timing your Zuper go-live to align with contract windows
There's a new object in HubSpot called Projects. We can make a one-to-one connection between that and Zuper's projects, then drop Service Hub entirely. You won't need tickets anymore.
The goal: remove the clutter of "Tickets" so the team focuses solely on "Jobs" and "Deals." Your CRM becomes cleaner, training becomes simpler, and you stop paying for redundant functionality.
The single biggest barrier to CRM adoption isn't the software—it's the training burden. When every team member has to learn the entire system, you create overwhelm, resistance, and an owner who becomes a permanent IT trainer.
According to Johnny Grow's research, users are 4X more likely than managers to have objectives and benefits discarded during CRM implementations. This happens because training tries to cover everything instead of focusing on role-specific needs.
Here's how to solve it: configure strict, role-based views so each person only sees what helps them do their job.
Sales Rep (let's call him Jared): Only sees sales tasks and quoting. No production buttons, no billing screens, no scheduling views. When Jared logs in, he sees exactly what he needs to close deals—nothing more.
Production Coordinator: Only sees work-in-progress and ordering. No sales pipelines, no customer communication history, no AR aging reports.
Admin/Billing: Only sees invoicing, payments, and financial workflows. No field operations, no sales activities.
A sales rep should never see a button that doesn't help them close a deal.
This approach slashes training time. New hires don't need to learn "HubSpot"—they only need to learn their view. Onboarding becomes focused and fast.
Remove the owner from the role of IT Trainer entirely. Build a "New Hire Ramp" sequence in HubSpot that triggers when a new rep starts. The sequence dictates their setup tasks and first 30 days of activity automatically.
The system trains the employee on the process, ensuring compliance from Day 1. You're not personally walking every new hire through the same screens repeatedly. The process is documented, automated, and scalable.
Estimated effort for role-based views and automated onboarding: 8-10 hours of configuration. The leverage is enormous—every future hire benefits from this investment.
Learn more about our systems-first approach to roofing operations.
With two systems running your operation, you need clarity on what happens where.
Is HubSpot Sales still necessary when Zuper handles field operations? Yes—absolutely.
Outside sales reps are the same animal they've always been: great in front of customers, terrible at follow-up, and chronically late putting job files into production. Inside sales provides the support structure that makes outside sales productive.
The inside sales team is still necessary because outside sales is the same animal they've always been—terrible at follow-up and late on putting job files into production. They are still best off focused on being on a roof, in their truck, or in front of a homeowner.
The Zuper boards mirror HubSpot boards and vice versa, so HubSpot remains your single source of truth. All reporting flows back: profit by crew, profit by sales rep, profit by lead source, jobs sold by rep.
In your old quoting tool, inspections and quotes were separate. You had to manually delete zero-quantity items from inspections when converting to quotes.
With Zuper, the inspection becomes the quote. No more cleanup step. What your inspector documents in the field flows directly into the proposal.
Selectable upgrades are even better: when a customer chooses an upgrade, the replaced items automatically remove from the quote. The material order reflects exactly what the customer signed—no "brain required" to catch substitutions.
Zuper's new selectable upgrades feature eliminates the need for a brain—certain products get removed when upgrades are selected, so the material order reflects the signed quote.
From a technical standpoint, 1099 sales reps are users just like anyone else. How you process their payroll is a business decision, not a software constraint.
Production and field operations generate the most questions during implementation planning. Here's what you need to know.
When you create a change order in Zuper, the job value updates and syncs back to HubSpot. Your deal record reflects the change automatically. No double-entry, no manual reconciliation.
For simple field change orders—the "quick change order" where a tech upsells on-site—you get a streamlined workflow: simple quote, customer approval via mobile, PDF generated, HubSpot updated.
User custom fields in Zuper let you track insurance expiry, licensing, and certifications for each subcontractor. Build a workflow that reminds you when certifications expire—no more scrambling at audit time.
You can also assign skills to contractors for intelligent dispatching. Need a crew certified for metal roofing? The system shows you who qualifies.
Zuper's selectable upgrades feature eliminates a common source of errors. In old systems, when a customer upgraded to a premium pipe boot, someone had to remember to remove the standard boot from the material order.
Now, selecting the upgrade automatically removes the replaced item. The material order becomes a true reflection of the signed quote. Less waste, fewer returns, happier production teams.
GPS fleet tracking: Optional add-on. If you already have fleet management elsewhere, no need to duplicate.
End-of-job photo reports: Yes, similar to CompanyCam project reports. Documentation flows from field to office automatically.
Repairs and warranty: Depends on your model. Time-and-material versus flat-rate bids.
Typical callback rate: About 1% for most companies. If you do 100 jobs, you'll have one warranty ticket. Not high volume, but still worth systematizing.
Financial operations complete the loop from sale to collection.
Claims management and supplement orders are handled in HubSpot through a dedicated Claims module. This is more robust than trying to manage claims in Zuper alone.
Claims management and supplement orders are handled in HubSpot. We have a claims management module that's more robust than what we've built in Zuper alone.
Photo evidence flows from the field to support supplement documentation. Your claims manager works in HubSpot with access to all relevant images without needing CompanyCam credentials.
Zuper Pay handles invoice payment directly. Customers receive invoices and pay through the platform—simple, integrated, no third-party payment processor gymnastics.
Invoice generation happens in Zuper as well. When a job completes, the invoice creates automatically based on the signed quote plus any change orders.
Standard integration, nothing exotic. The main consideration: make sure your chart of accounts maps properly. Revenue categories, expense categories, job costing buckets—align these before go-live and the integration runs smoothly.
Let's be specific about what this actually takes.
Architecture & Service Hub Deprecation (10 hours): High risk, high skill. Auditing current ticket usage, mapping data to new objects, ensuring no data loss during downgrade, building the Projects structure. Must happen first due to renewal timing.
Product & Data Cleanup (10 hours): High effort. Taking messy lists from multiple softwares, standardizing, formatting, importing. Requires meetings for Master List approval. This is the unsexy work that makes everything else possible.
Claims Engine Build (12 hours): High complexity. Building the custom object, pipeline stages, automation triggers for photo notifications, permissions for external supplementers.
Role-Based Views & Jared Protocol (8 hours): Medium effort. Configuring permissions, customizing sidebars, building role-specific dashboards.
Training & Enablement Assets (10 hours): High leverage. Recording Loom videos ("How to Quote," "How to Process a Claim"), documenting SOPs, building onboarding task queues. You own these assets forever.
The build process takes about eight weeks with a focused team. I would have estimated twelve weeks a year ago, but we've developed our methodology. You're getting experienced implementation, not figuring-it-out-as-we-go.
This isn't a simple software purchase—it's a RevOps modernization that transforms how your company operates. The highest-value elements are the Claims Object and Role-Based Views, because these directly impact revenue velocity and owner freedom.
Before committing to any implementation, complete this checklist:
Audit your current data cleanliness. Open your CRM and quoting tool. How many duplicate products exist? How consistent is your naming?
Identify your role-based view requirements. List every role in your company. What does each role actually need to see and do?
Map your claims and supplementing current state. Where do supplements get tracked today? Who touches them? What's the handoff process?
Evaluate your Service Hub renewal timing. When does your HubSpot contract renew? What's the penalty for changes?
Assess your team's availability. Can your key people commit 4-6 hours weekly during implementation?
The companies that succeed at this transition treat it as operational infrastructure investment, not just software expense. They commit the time upfront because they understand the compounding returns of getting it right.
Ready to discuss your specific situation? Contact us to schedule a discovery call.
How long does photo migration from CompanyCam take? Photo migration requires a dedicated machine running for several days, depending on project volume. The process downloads each project, stores it in cloud storage, and writes it into Zuper at the building level. Plan for this to be the longest single task in migration.
Can I keep my old quoting tool running during transition? Yes, and you should. Run both systems for 2-4 weeks after go-live. This handles unsigned pending quotes and gives your team time to adjust. Use the overlap to run a "2025 pricing in 2026" closing campaign.
What happens to my HubSpot Service Hub tickets? Map historical ticket data to Deal or Project objects before deprecating Service Hub. The free Projects object in HubSpot catches the Zuper sync without requiring the paid Service Hub. Plan this before your renewal date.
Do I need HubSpot if I'm getting Zuper? Yes. HubSpot remains your office command center for revenue tracking, customer communications, claims management, and reporting. Zuper handles field execution. They complement each other—one doesn't replace the other.
How do claims and supplements get tracked? Claims belong in HubSpot as a dedicated object or pipeline, not in deal pipelines (which causes revenue double-counting). Photo evidence flows from Zuper to support supplement documentation. External adjusters can access without needing field tool credentials.
What's the realistic timeline for full implementation? 8-10 weeks for a typical migration, assuming reasonable team availability and data cleanliness. Could stretch to 12 weeks if you're in-season or have complex legacy workflows. 45-55 hours of total implementation effort.
Can different team members see different views? Yes—this is the Role-Based Command Center approach. Sales only sees sales, production only sees W.I.P., admin only sees billing. This dramatically reduces training burden and prevents accidental changes to areas outside someone's responsibility.
What if my data is messy before we start? Garbage in, garbage out. We recommend a few "pizza night" cleanup sessions with your team before implementation begins. The cleaner your data going in, the faster and smoother the migration runs.
This guide is based on real implementation planning with roofing contractors transitioning to integrated Zuper + HubSpot operations. For more resources on systematizing your roofing business, visit our blog.