Who this is for: The person who manages your company’s data — your office manager, operations coordinator, or IT contact. This is a technical brief. Hand it to them and say: “Build this for us.” The strategy behind it is in Your CRM Is Not a Lead Database.
What We’re Building and Why
A restoration company’s customer relationship system contains contacts across multiple relationship types: past homeowner clients, insurance adjusters, insurance agents, public adjusters, subcontractors, suppliers, and vendors. The business value of these contacts is currently being left on the table because they all sit in a single undifferentiated list — or worse, in multiple disconnected systems.
This technical brief covers how to build a clean, three-segment contact database that can be exported to any email platform for the CRM community touch strategy. The output is a CSV-ready contact list with four fields: First Name, Email, Segment, and Job Type (for homeowners). The process takes 2–4 hours for a database of 200–1,000 contacts and does not require any new software purchases.
Step 1: Audit Your Current Data Sources
Before building the segmented database, identify every place your contact data currently lives. For most restoration companies, this is a combination of:
- Job management software (ServiceTitan, Jobber, Xactimate, or a custom system)
- Accounting software (QuickBooks, FreshBooks) — often contains additional contact records
- Email inbox — years of adjuster and agent correspondence with contact info in signatures
- Business cards and physical records — especially older trade contacts
- Google Contacts or Outlook — personal and professional contacts mixed together
- Social media connections — LinkedIn connections that have business relationship context
Create a simple spreadsheet with one column per source and a rough count of contacts in each. This gives you the scope before you start merging.
Step 2: Export Raw Data from Each Source
ServiceTitan Export
- Navigate to Customers in the left sidebar
- Use the filter panel to select Customer Type: Residential for the homeowner segment; Commercial for business contacts
- Click Export → Export to CSV
- The export includes: customer name, address, phone, email, job history, and last job date
- For the homeowner segment, add a filter for jobs completed in the last 5 years to avoid very stale contacts
- Run a second export filtered to job type (Water Damage / Fire / Mold) to capture the Job Type field you’ll need for personalized emails
ServiceTitan note: The export may include multiple email addresses per contact (primary and secondary). Keep both in separate columns and let the email platform deduplicate. Do not discard secondary emails — these are often more reliably checked than the primary.
Jobber Export
- Go to Clients in the navigation menu
- Click the three-dot menu at the top right → Export
- Select: Client Name, Email, Phone, Service Address, Tags, Last Job Date
- The export is a CSV file. Open it in Excel or Google Sheets
- If you’ve been using Jobber’s tags feature, filter by residential/commercial tag to create your segments. If not, sort by address type manually
Jobber note: Job type data lives in the Jobs table, not the Clients table. You’ll need to run a second export from Jobs (Reports → Job Reports → Export) and do a VLOOKUP on client ID to join job type data to client records.
QuickBooks Export
- Go to Reports → Customer Contact List
- Customize report to include: Customer Name, Email, Phone, Balance
- Export → Export to Excel
- This gives you billing-context contacts that may not appear in your job management system (e.g., commercial billing contacts, property management companies)
Email Inbox (for Industry Contacts)
For insurance adjusters and agents, the most reliable data source is often your email inbox. Here’s the efficient approach:
- In Gmail, search for: “adjuster” OR “claims” OR “State Farm” OR “Allstate” OR “Farmers” — this surfaces the most relevant industry email threads
- Export these to a spreadsheet: contact name, email, company, title (from email signatures)
- In Outlook, use the same keyword search and export via File → Open & Export → Import/Export → Export to CSV
- Expect 50–200 unique industry contacts from a 3-year inbox history
Step 3: Build the Master Contact Database
Consolidate all exported data into a single Google Sheet or Excel workbook with the following standardized columns:
| Column | Format | Notes |
|---|---|---|
| First Name | Text | Separate from Last Name for personalization |
| Last Name | Text | |
| Lowercase, validate format | ||
| Phone | Text | Keep for SMS campaigns if applicable |
| Segment | Select: Homeowner / Industry / Trade | The most important column |
| Job Type | Text: Water / Fire / Mold / Storm / Other | Homeowners only — leave blank for others |
| Job Date | Date | For homeowners — used to filter by recency |
| City/Zip | Text | For geographic filtering — local contacts only |
| Company | Text | For industry and trade contacts |
| Title | Text | For industry contacts — Adjuster, Agent, PA, etc. |
| Source | Text: ServiceTitan / Jobber / QB / Email / Manual | For deduplication tracking |
| Email Valid | Boolean: Y/N | Flag after validation step |
| Opted Out | Boolean: Y/N | Mark anyone who has unsubscribed or asked not to be contacted |
Step 4: Deduplicate
If you’ve pulled from multiple sources, you will have duplicates. Deduplication is the most tedious part of this process but cannot be skipped — sending the same person two emails from the same campaign is a trust-breaker.
In Excel:
- Select the Email column
- Data → Remove Duplicates → check “Email” as the key column
- Review the flagged duplicates before deleting — sometimes two records with the same email represent different relationship types (e.g., someone who was both a homeowner client and is now an adjuster). Keep the record with the more current relationship type in the Segment field.
In Google Sheets:
- Add a helper column with formula: =COUNTIF($B:$B, B2) where column B is Email
- Filter for values greater than 1 to find duplicates
- Manually review and merge or delete
After deduplication, sort by Segment and do a manual spot check of 10 records per segment to verify the segmentation logic is correct.
Step 5: Validate Email Addresses
Sending to invalid email addresses hurts your sender reputation with your email platform, which reduces deliverability over time. Before importing into Mailchimp, Brevo, or any other platform, run a basic email validation pass.
Free option: Hunter.io offers 25 free email verifications per month. For a list under 500, their free tier covers a meaningful sample. Upload your list and verify the top contacts by relationship quality.
Paid option for large lists: NeverBounce or ZeroBounce. Both charge approximately $0.003–$0.008 per email verification. For a 500-contact list, total cost is under $5. Both services flag invalid addresses, role-based addresses (info@, support@), and disposable email domains. Remove all flagged emails before import.
Manual validation for high-value contacts: For your top 20–30 industry contacts (key adjusters, major agents), manual verification is worth it. Send a quick personal email asking them to confirm their preferred contact info. This also serves as a warm re-introduction before your first campaign.
Step 6: Import to Your Email Platform
Export your clean, validated, segmented contact database as three separate CSVs — one per segment — and import into your email platform of choice.
Mailchimp Import
- Go to Audience → Manage Audience → Import Contacts
- Upload CSV → Map columns to Mailchimp fields (First Name → FNAME, Email → EMAIL, Job Type → custom merge tag JOB_TYPE)
- Assign a tag to each import: “Homeowner-2026”, “Industry-2026”, “Trade-2026”
- Important: Do not create three separate Audiences. Use one Audience with tags. Mailchimp charges per contact, not per audience, but managing one audience with tags is significantly easier than managing three separate ones.
Brevo Import
- Contacts → Import Contacts → Upload CSV
- Map fields and create a list per segment: “Homeowners”, “Industry”, “Trade”
- Brevo stores contacts once even if they appear in multiple lists — no duplicate billing risk
ServiceTitan or Jobber Built-In Email
If using the CRM’s native email for homeowner segments, the import step is not necessary — your homeowner data is already in the system. Create a saved filter for the homeowner segment you want to target and use it directly when setting up a campaign.
Step 7: Establish Ongoing Data Hygiene
The segmented database is only valuable if it stays current. Establish these three practices:
- New client email capture at intake: Make email address a required field in your job intake form. In ServiceTitan, add it to the customer create form. In Jobber, it’s already a standard field — enforce it.
- Post-job segment tagging: After every job closes, tag the homeowner record in your CRM with the job type. One minute of work per job prevents hours of data cleaning later.
- Quarterly list audit: Set a recurring quarterly reminder to archive Mailchimp/Brevo contacts who unsubscribed in the previous quarter. Mailchimp charges for unsubscribed contacts unless they’re manually archived — this is a real cost that many companies pay unknowingly.
Tools Summary and Costs
| Tool | Purpose | Cost |
|---|---|---|
| ServiceTitan | Job data export | Included in your existing plan |
| Jobber | Client data export | Included in your existing plan ($39–$599/mo) |
| Google Sheets or Excel | Master database build and deduplication | Free (Google Sheets) or included in Office |
| Hunter.io | Email validation (small lists) | Free up to 25/month |
| NeverBounce or ZeroBounce | Email validation (larger lists) | ~$4–8 per 1,000 emails |
| Mailchimp Essentials | Email platform for segmented sends | $13–$30/month for most restoration databases |
| Brevo Starter (alternative) | Email platform, priced by sends not contacts | $9/month for up to 5,000 emails/day |
Total one-time setup cost: $0–$15 (validation only). Ongoing monthly cost: $9–$30 (email platform). Total annual cost for a 500-contact database running 6 campaigns per year: under $400, including all platform fees.
Frequently Asked Questions
What if our job management software isn’t ServiceTitan or Jobber?
Any job management platform with a client list has an export function — check the Reports or Clients section for CSV export. The field names will differ but the process is the same: export, standardize column names in a spreadsheet, segment, import to email platform. If your software doesn’t support export, contact their support team — this is a standard feature and they will walk you through it.
How long does the initial database build take?
For a company with 200–500 contacts across two or three sources, expect 3–6 hours for a first-time build. After the initial build, ongoing maintenance is 30–60 minutes per quarter. If you have 1,000+ contacts across four or more sources, budget a full day for the initial consolidation and deduplication.
Do we need a dedicated person to manage this?
No. Once built, the database requires 30 minutes per quarter to maintain and an hour to set up each campaign. This is appropriate for an office manager or administrative coordinator, not a dedicated data or marketing role.
Complete CRM Community Framework
Strategy Guides
- Your CRM Is Not a Lead Database
- The Restoration Hiring Email
- The Vendor Ask Email
- The 12-Month CRM Touch Calendar
- How to Re-Engage Past Homeowner Clients
Technical Implementation Guides
Leave a Reply