Zoho CRM & Campaigns Configuration Requirements
1. Business Overview
The client is a low voltage integrator serving the commercial construction market in Arizona (excluding life safety systems). Services include audiovisual, access control, structured cabling, and similar low voltage systems.
The primary data source for prospecting is DataBex — an online database of commercial construction projects in Arizona valued at $5M or higher. DataBex allows CSV exports of project and contact data, which will be imported into Zoho CRM on an ongoing basis.
The CRM will be used by a small team of 2–5 users, with an admin handling manual data entry for existing contacts.
2. Goals & Objectives
The system must support marketing and relationship management across three distinct audiences at different stages of a project’s lifecycle:
| Audience | When to Engage |
|---|---|
| Building Owners / End Users | Before design team is selected — early awareness |
| Architects & Designers | Once the design team has been selected |
| General Contractors | Once the GC has been awarded the project |
Primary goals:
- Track all DataBex construction projects as CRM opportunities
- Manage relationships with all contacts associated with each project
- Automate email outreach triggered by project stage changes
- Track bids, proposals, and outcomes
- Maintain full activity history per contact and per project
3. CRM Module Structure & Data Model
3.1 Accounts (Companies)
The following company types will be tracked. Each should be distinguishable by an Account Type field:
- Building Owners / End Users
- Architecture & Design Firms
- General Contractors
- Subcontractors / Trade Partners
3.2 Contacts
Individual contacts associated with accounts. Multiple contacts per account. Key fields needed (sourced from DataBex Company Contact Search export):
| DataBex Field | Zoho CRM Field |
|---|---|
| Company Name | Account Name (linked) |
| Contact Name | Full Name |
| Title | Title |
| Direct Phone | Phone (Direct) |
| Cell Phone | Mobile |
| Office | Office / Location (text) |
| City | Mailing City |
| Office Phone | Phone (Office) |
Additionally, from the Project-Specific Contact export, the following fields should map to the Contact record or a related record:
| DataBex Field | Notes |
|---|---|
| Company ID | External ID for dedup/sync |
| Contact ID | External ID for dedup/sync |
| Project ID | Link to associated Deal/Project |
| Roles | Contact’s role on this project |
| Services | Services the contact’s firm provides |
| Design Firm | Related account reference |
| Prime Contractor | Related account reference |
Note: Contact ID and Company ID from DataBex should be stored as custom fields to prevent duplicate imports and allow future re-imports to update rather than duplicate records.
3.3 Deals (Opportunities / Projects)
Each DataBex construction project should become a Deal in Zoho CRM. This is the central record that ties together a project, all related contacts (owner, architect, GC), and the sales activity.
| DataBex Field | Zoho CRM Field / Notes |
|---|---|
| ID | Custom field: DataBex Project ID (external ID for dedup) |
| Project Name | Deal Name |
| Valuation | Amount / Deal Value |
| Address | Mailing Street |
| City | City |
| State | State |
| ZIP | Zip Code |
| County | Custom field: County |
| Full Address | Custom field: Full Address |
| Latitude | Custom field: Latitude |
| Longitude | Custom field: Longitude |
| Market | Custom field: Market Segment (e.g. office, healthcare, education) |
| SF | Custom field: Square Footage |
| Method of Delivery | Custom field: Delivery Method (e.g. Design-Build, GC Bid) |
| Status | Custom field: DataBex Project Status |
| Design Firm | Lookup to Account (Design Firm) |
| Prime Contractor | Lookup to Account (GC) |
| Owner | Lookup to Account (Owner) |
| Project BEX URL | Custom field: DataBex URL (hyperlink) |
| Followed | Custom field: Followed in DataBex (checkbox) |
| Added On | Custom field: DataBex Added Date |
| Last Updated On | Custom field: DataBex Last Updated |
4. Sales Pipeline
The client is open to consultant guidance on pipeline structure. The following stages are recommended based on their business model and should be validated with the client before finalizing:
| Stage | Description |
|---|---|
| 1. New Project Identified | Imported from DataBex; no outreach yet |
| 2. Pre-Design Outreach | Owner/end-user contacted before design team selected |
| 3. Design Phase — Architect Engaged | Design firm identified; spec influence outreach underway |
| 4. GC Bidding | Project out to bid; GCs identified |
| 5. Bid Submitted | Proposal/quote sent to GC |
| 6. Under Review | Awaiting GC award or decision |
| 7. Won | Awarded the work |
| 8. Lost | Not awarded — capture reason |
| 9. No Opportunity | Project not relevant (wrong scope, budget, etc.) |
Consultant note: Consider whether two pipelines may be needed — one for spec/influence tracking (pre-GC award) and one for bid/proposal tracking (post-GC award). Discuss with client.
5. Additional CRM Tracking Requirements
Beyond project and contact data, the following must be supported:
- Call & meeting logs — Notes from sales conversations, logged against contacts and/or deals
- Quotes & proposals — Ability to log when a quote was sent, to whom, and the amount
- Bid results — Won/Lost tracking with a reason/notes field
- Tasks & follow-up reminders — Assignable tasks with due dates, linked to contacts or deals
- Documents — Ability to attach files (specs, drawings, proposals, contracts) to deal or contact records
6. Data Import Process (DataBex CSV Imports)
DataBex exports three types of CSV files. The consultant should configure import templates and field mappings for each:
Import Type 1: Project Search Export
- → Creates or updates Deal records
- → Use DataBex
IDas external key to prevent duplicates on re-import
Import Type 2: Project-Specific Contact Export
- → Creates or updates Contact records and links them to the correct Deal
- → Use DataBex
Contact IDas external key - → Also updates Company/Account associations
Import Type 3: Company Contact Search Export
- → Creates or updates Contact and Account records
- → Use Company Name + Contact Name + Email for deduplication (no external ID in this export)
Key requirement: All three import types must be able to be run repeatedly without creating duplicate records. Upsert logic (update if exists, create if not) is required.
7. Zoho Campaigns Integration
7.1 CRM–Campaigns Sync
- Contacts in CRM should sync to Campaigns based on Contact Type / Role so that the right people receive the right messages
- Maintain separate mailing lists (or segments) for: Owners/End Users, Architects/Designers, General Contractors
7.2 Email Automation Triggers
The following automated email sequences should be configured, using a moderate cadence with a 4-week active sequence window per contact. All sequences halt immediately upon reply, and the assigned salesperson is notified to follow up personally.
| Trigger | Audience | # of Emails | Cadence |
|---|---|---|---|
| New project imported (Stage: New Project Identified) | Owner / End User contacts on project | 5 emails | Day 1 → Day 5 → Day 10 → Day 17 → Day 28 |
| Deal moves to “Design Phase — Architect Engaged” | Architect / Designer contacts on project | 5 emails | Day 1 → Day 5 → Day 10 → Day 17 → Day 28 |
| Deal moves to “GC Bidding” | GC contacts on project | 5 emails | Day 1 → Day 5 → Day 10 → Day 17 → Day 28 |
| No response after final email in any sequence | All | 1 re-engagement email | 60 days after sequence ends |
Sequence behavior rules:
- Emails should only be sent during normal business hours (Monday–Friday, 8:00 AM–5:00 PM recipient local time)
- If a contact appears on multiple projects simultaneously, suppress duplicate sequence emails (Days 5–28) within any 14-day window — however, always send the Day 1 introductory email for each new project trigger so that every new opportunity is individually acknowledged
- Upon any reply, immediately halt the active sequence and create a follow-up task assigned to the responsible salesperson
- After the re-engagement email, contact is placed in a dormant list and removed from active automation until a new project trigger fires
7.3 Unsubscribe & Compliance
- Standard unsubscribe footer required on all campaign emails
- Unsubscribes in Campaigns should suppress the contact in CRM as well
8. User Roles & Access
- 2–5 users total
- Recommend at minimum two roles: Admin/Manager (full access) and Sales User (standard access, own records + shared project records)
- Admin will handle DataBex imports and manual contact entry
9. Out of Scope (for Initial Setup)
- Zoho Sign, Zoho Books, or other Zoho apps (not required at this time)
- Life safety project tracking (explicitly excluded from business scope)
- Public-facing web forms or lead capture (not needed initially)
- Existing contact data migration (admin will enter manually — small volume)
10. Open Questions for Consultant
-
Should the system use Zoho CRM’s native Leads module before converting to Contacts, or go directly to Contacts? (Given the project-centric model, going directly to Contacts may be cleaner.)
-
Is a single Deal pipeline sufficient, or should there be separate pipelines for pre-award influence tracking vs. post-award bid tracking?
-
Modeling multiple companies and contacts per project (many-to-many relationships)
A single construction project typically involves three distinct companies in different roles — the Owner/End User, the Design Firm, and the Prime/General Contractor — each with their own contacts. Zoho’s default data model is not natively built for this. The recommended approach is a combination of:- Custom Account lookup fields on the Deal — Add three dedicated Account lookup fields labeled “Owner Account,” “Design Firm Account,” and “GC Account” so all three companies are explicitly linked to the project record
- Contact Roles on the Deal — Use Zoho’s native Contact Roles feature to associate multiple individual contacts with each Deal and assign each a labeled role (e.g. Owner Rep, Lead Architect, Project Manager, GC Superintendent)
This approach keeps the configuration native and maintainable without requiring a custom module, while still supporting the email automation triggers in Section 7 by giving Campaigns a clear, role-based contact list to work from. We’d welcome your thoughts on whether this is the right approach or if you see a cleaner solution given your experience with Zoho.
-
What are the recommended Campaigns send limits and warm-up considerations given a new sending domain?

