CRM migration
Field-level mapping, validation, and rollback between CDK Global and HubSpot. We move data and schema; workflows are rebuilt natively in HubSpot.
CDK Global
Source
HubSpot
Destination
Compatibility
10 of 12
objects map 1:1 between CDK Global and HubSpot.
Complexity
BStandard
Timeline
5–10 business days
Overview
CDK Global is a Dealer Management System built for automotive dealerships, managing inventory, F&I products, service operations, and customer records under a single proprietary platform. CDK Drive stores automotive-specific data through CDK API endpoints covering customers, vehicles, parts, and repair orders. HubSpot is a general-purpose CRM that models contacts, companies, and deals — it has no native vehicle object, no F&I product tracking, and no DMS-style lot management. Migrating from CDK Global to HubSpot means extracting automotive data from CDK's relational model and translating it into HubSpot's flat CRM structure, which requires custom objects for vehicles, repair orders, and F&I fields that have no direct HubSpot equivalent. FlitStack AI reads CDK API exports and maps vehicle records (VIN, make, model, year, mileage, stock number) into a HubSpot Vehicle custom object, links them to contact records via junction associations, and preserves F&I product data (type, provider, term) as custom fields on the associated deal. We surface repair order history as HubSpot tickets, map CDK owner IDs to HubSpot users by email match, and capture original create timestamps so reports reflect the full CDK history. All automations, DMS workflows, and F&I product workflows require manual rebuild in HubSpot — we export your CDK workflow definitions as a reference document for your HubSpot admin. CDK's accounting and financial records stay in the DMS; only CRM-relevant data moves.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a CDK Global object lands in HubSpot, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
CDK Global
Customer (CDK Drive)
HubSpot
Contact
1:1CDK customer records map to HubSpot contacts. HubSpot contacts do not have a native vehicle field — vehicle data links via the Vehicle custom object with junction associations. CDK customer address fields (street, city, state, postal code, country) map to HubSpot contact address properties directly.
CDK Global
Customer Address
HubSpot
Contact address properties
many:1CDK stores customer addresses as a separate sub-object (street, city, state, postal code, country). HubSpot contact records hold address fields directly on the contact. FlitStack merges CDK address fields into the contact record during migration. CDK address lat/long coordinates are not portable to HubSpot.
CDK Global
Vehicle (CDK Drive)
HubSpot
Custom object: Vehicle__c
1:1HubSpot has no native vehicle object. CDK vehicle records (VIN, make, model, year, color, mileage, stock number, sale price) migrate into a Vehicle__c custom object. Each vehicle record is associated to the contact record via HubSpot's association API. Vehicle status (available, sold, in-service) maps to a Vehicle_Status__c custom pick-list.
CDK Global
Vehicle Lot Management (CDK Drive inventory)
HubSpot
Vehicle__c + Deal
1:manyCDK lot management tracks vehicle inventory as a separate object from customer records. For unsold inventory, vehicle records migrate to Vehicle__c with status='Available' and no contact link. When a vehicle sells, the corresponding deal record in HubSpot links to the Vehicle__c record via a Vehicle_Reference__c lookup field. Dealerships choosing not to track lot inventory in HubSpot can omit unsold vehicle records.
CDK Global
Deal (CDK Drive sales)
HubSpot
Opportunity
1:1CDK deal records (deal name, deal amount, deal stage, close date) map to HubSpot deals. CDK deal stage names do not automatically match HubSpot pipeline stages — value-by-value stage mapping is required. CDK deal notes field maps to the HubSpot deal notes field. Deal owner resolves by email match to a HubSpot user.
CDK Global
F&I Product (CDK Drive)
HubSpot
Custom fields on Deal
1:1CDK F&I products (GAP coverage, tire protection, paint protection, service contracts, warranties) are stored as separate line items linked to the deal. HubSpot deals have no F&I line-item model — product name, provider, term length, and cost map to custom fields on the deal record: F_I_Product__c, F_I_Provider__c, F_I_Term_Months__c.
CDK Global
Repair Order (CDK Drive service)
HubSpot
Ticket
1:1CDK repair orders map to HubSpot tickets. CDK RO number becomes a custom Ticket field (CDK_RO_Number__c). CDK service advisor resolves to a HubSpot user by email — they become the ticket owner. CDK RO status (open, in-progress, invoiced) maps to HubSpot ticket pipeline stages. Parts and labor line items from the RO become ticket conversation notes.
CDK Global
Owner / User (CDK Drive)
HubSpot
HubSpot Owner (user)
1:1CDK owner IDs on records (salesperson, service advisor, F&I manager) resolve by email match against HubSpot users. FlitStack flags any CDK owner without a matching HubSpot user before migration — the team either creates HubSpot users first or assigns those records to a fallback owner. No record lands in HubSpot without a resolved owner.
CDK Global
CDK Owner record
HubSpot
HubSpot User
1:1CDK user records (name, email, role) map to HubSpot user records. CDK role types (salesperson, service advisor, F&I manager) do not map to HubSpot built-in roles — FlitStack preserves role as a custom User field (CDK_Role__c) for reference. User must exist in HubSpot before records referencing them are migrated.
CDK Global
Parts Order (CDK Drive)
HubSpot
Product or custom object
1:1CDK parts inventory records (part number, description, price, quantity on hand) can map to HubSpot products if the dealership uses HubSpot's product catalog for parts tracking. For parts-only dealerships not using HubSpot products, parts data migrates as a custom object linked to the contact or repair order.
CDK Global
Dealership / Location
HubSpot
HubSpot company or custom field
1:1Multi-location CDK dealerships (separate rooftops) can map to HubSpot companies if each location is treated as a separate business account. CDK location code and address map to HubSpot company name and address fields. Alternatively, dealership name and location can be stored as a custom field on contact records for single-rooftop migrations.
CDK Global
Activity (CDK Drive engagement)
HubSpot
Engagement (call, email, meeting)
1:1CDK records test drive logs, deal conversations, and F&I presentations as engagement activities. CDK activity records with type, date, and notes map to HubSpot engagements on the contact record — calls, emails, and meetings. Original activity timestamps are preserved on the HubSpot engagement record.
| CDK Global | HubSpot | Compatibility | |
|---|---|---|---|
| Customer (CDK Drive) | Contact1:1 | Fully supported | |
| Customer Address | Contact address propertiesmany:1 | Fully supported | |
| Vehicle (CDK Drive) | Custom object: Vehicle__c1:1 | Fully supported | |
| Vehicle Lot Management (CDK Drive inventory) | Vehicle__c + Deal1:many | Fully supported | |
| Deal (CDK Drive sales) | Opportunity1:1 | Fully supported | |
| F&I Product (CDK Drive) | Custom fields on Deal1:1 | Fully supported | |
| Repair Order (CDK Drive service) | Ticket1:1 | Fully supported | |
| Owner / User (CDK Drive) | HubSpot Owner (user)1:1 | Fully supported | |
| CDK Owner record | HubSpot User1:1 | Fully supported | |
| Parts Order (CDK Drive) | Product or custom object1:1 | Fully supported | |
| Dealership / Location | HubSpot company or custom field1:1 | Fully supported | |
| Activity (CDK Drive engagement) | Engagement (call, email, meeting)1:1 | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
CDK Global gotchas
CDK's 2024 ransomware outage sets migration precedent
Accounting records are migration-excluded by design
Deal/F&I bundle requires custom field mapping
Data Export Tool output requires transformation for non-CDK targets
Fortellis API rate limits are unpublished
HubSpot gotchas
Marketing Contacts billing model is migration-critical
Feature tier gating is not visible until onboarding
Mandatory onboarding fees inflate year-one cost
HubSpot CSV importer cannot migrate engagements or attachments
Custom objects require Enterprise and a pre-existing schema
Pair-specific challenges
Migration approach
Pre-migration audit: extract CDK API data and scope the automotive object model
FlitStack connects to your CDK Drive account via API to enumerate all record types, count records per object (customers, vehicles, deals, repair orders, F&I products, owners), and identify any custom fields configured in CDK. We verify API credentials, test data extraction rates, and flag any rate-limit constraints. The audit produces a CDK object inventory, record counts per location for multi-rooftop dealerships, and a preliminary custom-object schema plan for HubSpot (Vehicle__c fields, F_I fields, CDK_RO_Number__c). CDK accounting records are identified and excluded from the migration scope. The audit output is shared with your team before migration planning begins.
Create HubSpot custom objects and fields for automotive data
FlitStack creates the Vehicle__c custom object with fields for VIN, stock number, make, model, year, color, mileage, list price, and vehicle status. F&I product custom fields (F_I_Product__c, F_I_Provider__c, F_I_Term_Months__c) are added to the HubSpot deal object. The CDK_RO_Number__c custom field is added to the HubSpot ticket object. For multi-location dealerships, we create a HubSpot company record per rooftop or configure a Dealership_Location__c custom field on contact records. All custom objects are created with appropriate field types (text, number, pick-list, date, lookup) before data migration begins. Your HubSpot admin reviews and approves the custom-object schema.
Resolve CDK owners to HubSpot users by email match
FlitStack extracts CDK owner records (name, email, role) and cross-references them against existing HubSpot users. Owners with matching emails are pre-linked. Owners without a HubSpot user are flagged in a pre-migration owner report — your team creates HubSpot users or assigns a fallback owner for each unresolved CDK owner ID. The owner resolution report is delivered before the migration run so there are no records landing without a HubSpot owner. If CDK role types (salesperson, service advisor, F&I manager) are tracked, FlitStack adds a CDK_Role__c custom field to the HubSpot user record for reference.
Run sample migration with field-level diff across all automotive objects
A representative sample — typically 200–500 records spanning contacts, vehicles, deals, F&I products, and repair orders — migrates first. FlitStack generates a field-level diff comparing source CDK values against the resulting HubSpot records. You verify VIN mapping on Vehicle__c, F&I product field values on deals, RO number on tickets, and owner resolution across all record types. Pipeline stage value mapping is validated against your CDK stage names. The sample run reveals any missing pick-list values, association gaps, or field-type mismatches before the full migration commits. Your team approves the sample diff before FlitStack proceeds to the full run.
Execute full migration with delta-pickup window and audit log
Full migration runs against HubSpot — contacts, vehicles (as Vehicle__c records with contact associations), deals with F&I custom fields, and repair orders (as tickets). A delta-pickup window of 24–48 hours captures any CDK records modified during the cutover so HubSpot reflects the final CDK state at go-live. Every migration operation is written to an audit log. One-click rollback reverts HubSpot to the pre-migration state if reconciliation fails. After delta-pickup closes, FlitStack delivers a reconciliation report showing record counts by object, any records that could not be migrated due to data quality issues, and a list of HubSpot IDs for all migrated records for your team to validate.
Platform deep dives
CDK Global
Source
Strengths
Weaknesses
HubSpot
Destination
Strengths
Weaknesses
Complexity grading
Standard CRM migration. 2 of 8 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across CDK Global and HubSpot.
Object compatibility
2 of 8 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
8-object category — typical timelines run 2–7 days end-to-end.
API constraints
CDK Global: Not publicly documented by CDK.
Data volume sensitivity
CDK Global exposes a bulk API — large-volume migrations stream efficiently.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during CDK Global to HubSpot migration scoping. Not seeing yours? Book a call.
Walk through your CDK Global to HubSpot migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave CDK Global
Other ways to arrive at HubSpot
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.