Agency Migration Guide
Bullhorn to HubSpot Migration
What actually transfers, what quietly does not, and what has to be rebuilt by hand.
We mapped Bullhorn against HubSpot feature by feature: 33 features, 10 synced objects, 7 documented traps and 40 items that have to be rebuilt. The whole map is on this page, ungated.
The PDF is the same reference, formatted to send to a client.
Get The Guide And The Calculator
The full Bullhorn to HubSpot reference as a branded PDF you can send straight to a client, plus the Excel calculator we scope these migrations with: every one of the 33 features as a row, enter your counts, get hours.
Three files: the guide as a PDF, the same guide unbranded in Markdown for your AI tool, and the full Excel effort calculator.
Bullhorn to HubSpot is a very high migration, typically 8-12 weeks. Of 33 features we mapped, 11 carry across as they are and 17 land with something lost. The work is not moving records: it is the 40 items nothing moves for you.
Migration Scorecard
- Migration complexity
- Very high
- Typical timeline
- 8-12 weeks
- Recommended method
- Api
- Native sync
- Data sync, two way
- Smart transfer
- Not supported
- HubSpot subscription
- HubSpot Free (basic sync); Data Hub Starter+ for custom field mappings
Feature parity across 33 capabilities
- Maps directly: 11 (33%)
- Maps partially: 17 (52%)
- No equivalent: 5 (15%)
10
Objects synced natively
7
Limitations and traps
40
Manual rebuild items
3
Source editions covered
Where this comes from: Our own research corpus, verified 2026-07-31, behind every number on this page.
The Ten Objects That Sync Natively
What the connector moves for you, and which way each one flows.
Client Contact
Two wayBecomes Contact
Bullhorn distinguishes between Client Contacts (business contacts at client companies) and Candidates (job seekers). Rule-based logic determines which HubSpot contacts sync as Client Contacts vs. Candidates, using list memberships, form submissions, or custom properties.
Client Corporation
Two wayBecomes Company
Deduplication logic checks for existing records using company domain, email, or phone number identifiers. Bullhorn needs the Company created before deals can be created and associated.
Job Order
Two wayBecomes Deal
Deal sync supported. Automated Job Order creation when HubSpot deals reach specified stages. Job Order status (Accepting Submissions, Interviewing, Filled) syncs back to HubSpot.
Appointments
Two wayBecomes Meetings
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). HubSpot publishes 11 default field mappings for it.
Candidates
Two wayBecomes Contacts
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). HubSpot publishes 16 default field mappings for it.
Leads
Two wayBecomes Contacts
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). HubSpot publishes 15 default field mappings for it.
Notes
Into HubSpotBecomes Notes
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). HubSpot publishes 8 default field mappings for it.
Tasks
Two wayBecomes Tasks
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). HubSpot publishes 12 default field mappings for it.
Jobs
Two wayBecomes Custom Object
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). Custom object sync, no default field mappings.
Placements
Two wayBecomes Custom Object
Listed as a shared object on the app's HubSpot marketplace listing (read 2026-07-31). Custom object sync, no default field mappings.
Seven Things the Sync Does Not Tell You
Each one is documented, and each one has ended a migration in a bad week.
Placement Data Is Not Available as a Sync Object
Placement records (the core outcome in recruiting: representing a successful candidate placement) are not available as a synced object in the native Bullhorn Data Sync app. Properties like End Date, Original End Date, Assignment Status, Assignment Type, Employee Type, and Shift are not accessible.
Workaround: Use a custom API integration to sync placement data. Some third-party integration providers (IntegrateIQ, MpireSolutions) offer placement-to-deal mapping with revenue and margin details. Store placement data in custom HubSpot properties on deal records.
Candidate Records Require Special Handling
Bullhorn Candidates (job seekers) are a distinct record type from Client Contacts. The native Data Sync treats all HubSpot contacts as potential Client Contacts. Syncing candidates requires rule-based logic to distinguish them from business contacts.
Workaround: Use list memberships, form submissions, or custom properties to differentiate candidates from client contacts. Custom integration solutions can map Candidates to HubSpot contacts with specific lifecycle stages or custom properties.
Notes and Tasks May Not Sync If Other Object Syncs Fail
Activity syncing (notes, tasks, meetings) has dependencies on successful sync of parent objects. If contact or company syncs fail, associated notes and tasks will also fail to sync.
Workaround: Monitor sync health regularly. Resolve parent object sync errors first. Some activity types beyond notes, tasks, and meetings are not supported at all.
Submission/interview Tracking Does Not Sync
Bullhorn's detailed submission workflow (candidate submissions to job orders, interview scheduling, submission statuses) has no equivalent sync mapping in the HubSpot Data Sync.
Workaround: Track submissions in Bullhorn and sync summary status to HubSpot via custom properties. For full migration, build custom pipeline stages in HubSpot that mirror Bullhorn's submission workflow.
Tearsheets (candidate Lists) Do Not Sync
Bullhorn Tearsheets are organized candidate pools (e.g., 'Available Nurses', 'Top Developers') used for quick access to talent. These have no sync mapping.
Workaround: Recreate tearsheets as HubSpot static lists or saved views based on contact properties.
Order of Operations Dependency for Company-Deal Creation
Bullhorn requires the Company (Client Corporation) to exist before a Deal (Job Order) can be created and associated. If the company sync hasn't completed, deal creation will fail.
Workaround: Ensure company sync completes successfully before enabling deal sync. Monitor sync logs for association errors.
Custom Staffing-specific Data Requires Explicit Mapping
Recruiting-specific data like skills, certifications, industries, required experience, and specializations require custom field mapping to HubSpot properties.
Workaround: Create custom HubSpot properties for staffing-specific fields. Use custom field mapping (requires Data Hub Starter+) to map Bullhorn custom fields.
Five Bullhorn Features HubSpot Cannot Replace
Not a workaround away. If a client depends on one of these, it belongs in the conversation before the contract.
Resume/CV Parsing
HubSpot has no resume parsing capability. Would require third-party parsing service integration.
VMS Integration
HubSpot has no VMS integration capabilities. This is a staffing industry-specific requirement.
Background Screening Integration
HubSpot has no background screening integrations. Would require custom integration via API or Zapier.
Onboarding
HubSpot has no employee onboarding capabilities. Requires dedicated onboarding platform (BambooHR, WorkBright, etc.).
Back Office (Payroll & Billing)
HubSpot has no payroll, timesheet, or staffing billing capabilities. Requires dedicated back office system.
The 40 Items That Get Rebuilt by Hand
This is the list that separates a quote that holds from one that does not.
Data And Objects
Placement Records (the Core Recruiting Outcome -- Revenue, Margin, Dates, Assignment Details)
Candidate Records With Resumes, Skills, Certifications, and Work History
Submission Records (candidate-to-job-order Applications and Status Tracking)
Tearsheets (organized Candidate Pools)
Interview Schedules and Feedback
Timesheet and Billing Data
File Attachments (resumes, Contracts, Onboarding Documents)
Candidate Certifications, Licenses, and Credential Tracking
Referral Source and Recruiter Attribution Data
Automation
Bullhorn Hiring Workflow Automations (submission Status Progression)
Automated Candidate Status Updates
Job Order Distribution and Posting Automations
Onboarding Workflow Checklists
Compliance Tracking Automations (credential Expiration Alerts)
Email Templates for Candidate/client Communication
Reporting
Recruiter Performance Reports (placements, Submissions, Fill Rates)
Job Order Pipeline and Fill Rate Analytics
Revenue and Margin Reports by Client, Recruiter, or Division
Time-to-fill and Time-to-submit Metrics
Candidate Source Attribution Reports
Client Engagement and Activity Reports
Sales And Marketing Config
Job Order Pipeline Stages and Status Definitions
Placement Revenue Tracking and Commission Structures
Client-specific Rate Cards and Billing Rules
Candidate Search and Match Configurations
Custom Fields Across All Bullhorn Entities (contacts, Candidates, Job Orders, Placements)
Email Templates for Recruiting Communications
Users And Permissions
Recruiter and Sales User Accounts
Team/division/office Structures
Desk-level and Branch-level Reporting Hierarchies
Record Ownership and Visibility Rules
Candidate Data Access Restrictions
Integrations
Job Board Integrations (Indeed, LinkedIn, ZipRecruiter, CareerBuilder)
VMS/MSP Integrations (Fieldglass, Beeline, IQNavigator)
Background Check Integrations (Sterling, Checkr)
Onboarding Platforms (Essium, Able, Hireology)
Payroll and Billing Integrations (TempWorks, Avionte)
Phone/VOIP Integrations (RingCentral, CloudCall)
Texting/SMS Platforms for Candidate Communication
Website/career Page Integrations
The Sequence
Sync First, Then Migrate
Order is the content here. These are a dependency chain, and running them out of order is a documented way these migrations fail.
- 1
Audit Bullhorn Data
inventory client contacts, candidates, client corporations, job orders, placements, submissions, tearsheets, and custom fields
- 2
Define the Migration Scope
determine if this is a full Bullhorn replacement or if Bullhorn stays for ATS while HubSpot handles marketing/sales (common pattern for staffing agencies)
- 3
Set up HubSpot Data Sync for Contacts, Companies, and Deals as a Foundation
Set up HubSpot Data Sync for contacts, companies, and deals as a foundation
- 4
Configure Rule-based Logic to Properly Categorize HubSpot Contacts as Client Contacts Vs. Candidates in Bullhorn
Configure rule-based logic to properly categorize HubSpot contacts as Client Contacts vs. Candidates in Bullhorn
- 5
Map Bullhorn Job Order Statuses to HubSpot Deal Pipeline Stages
Map Bullhorn Job Order statuses to HubSpot deal pipeline stages
- 6
Build Custom API Integration for Placement Data (revenue, Margin, Dates) to Sync Back to HubSpot Deal Records
Build custom API integration for placement data (revenue, margin, dates) to sync back to HubSpot deal records
- 7
Export and Import Candidate Data With Skills, Certifications, and Work History as HubSpot Contact Properties
Export and import candidate data with skills, certifications, and work history as HubSpot contact properties
- 8
Recreate Tearsheets as HubSpot Static Lists or Saved Views
Recreate tearsheets as HubSpot static lists or saved views
- 9
Rebuild Recruiter Performance Reports and Pipeline Analytics in HubSpot
Rebuild recruiter performance reports and pipeline analytics in HubSpot
- 10
Migrate File Attachments (resumes, Contracts) to HubSpot or a Connected Document Management System
Migrate file attachments (resumes, contracts) to HubSpot or a connected document management system
- 11
Set up Replacement Integrations for Job Boards, Background Checks, and Other Staffing Tools
Set up replacement integrations for job boards, background checks, and other staffing tools
- 12
Rebuild Hiring Workflow Automations in HubSpot
Rebuild hiring workflow automations in HubSpot
Typically 8-12 weeks end to end, depending on how much of the source configuration is actually in use.
Effort Estimator
How Big Is This Migration?
A handful of questions, no email required. The ranges come from the research above: every feature we mapped carries an effort figure, and this adds up the ones that apply to you.
Estimated Effort
Answer a couple of questions and an hours range appears here.
Built from our research on 33 Bullhorn features. It is a range, not a quote.
A planning range, not a quote. It is delivery effort only, with no project management line and no agency markup, so add your own. What moves it most in practice is data quality.
What Goes Wrong Most Often
The failures that show up again and again, in roughly the order they bite.
Many Staffing Agencies Keep Bullhorn for ATS/recruiting and Use HubSpot for Marketing and Business Development
full replacement is rare and complex
Placement Data (the Most Important Recruiting Metric) Is NOT Available in the Native Sync
custom API work is mandatory for placement tracking
Bullhorn's Candidate Record Type Has No Direct HubSpot Equivalent
candidates become HubSpot contacts but lose the ATS-specific structure
Submission Tracking Workflow (candidate-to-job Pipeline) Requires Significant HubSpot Deal Pipeline Customization to Replicate
Submission tracking workflow (candidate-to-job pipeline) requires significant HubSpot deal pipeline customization to replicate
Company-to-Deal Association Dependency Means Companies MUST Sync Before Deals
Company-to-Deal association dependency means companies MUST sync before deals
Note/Task Sync Has Cascading Failure Risk
if parent record sync fails, activities fail too
Legacy Bullhorn Instances May Require Custom Integration Rather Than the Standard Data Sync Connector
Legacy Bullhorn instances may require custom integration rather than the standard Data Sync connector
VMS/MSP Integrations Are Deeply Embedded in Staffing Operations and Have No HubSpot Equivalent
VMS/MSP integrations are deeply embedded in staffing operations and have no HubSpot equivalent
Recruiter Performance Metrics and Desk-level Reporting Require Significant HubSpot Report Customization
Recruiter performance metrics and desk-level reporting require significant HubSpot report customization
Questions
Bullhorn To HubSpot, Answered
Yes. Data sync, two way, covering 10 objects. What it does not do is rebuild configuration: that is the 40 items below.
Typically 8-12 weeks. Complexity is driven by automation and reporting depth, not by record count: the connector moves records, so a large database is not by itself a long project.
Of 33 features we mapped, 11 (33%) carry across directly and 17 (52%) map partially, meaning something is lost or reshaped. 5 have no HubSpot equivalent at any tier.
40 items have to be rebuilt by hand, and 7 documented limitations are not surfaced by the connector at all. The full list of both is on this page.
HubSpot Free (basic sync); Data Hub Starter+ for custom field mappings
5: Resume/CV Parsing, VMS Integration, Background Screening Integration, Onboarding, Back Office (Payroll & Billing). If a client depends on one, it belongs in the conversation before the contract.
Only in one direction. The sync is not bidirectional here, so a parallel period means picking a system of record and accepting drift in the other.
Ready to get started?
Let's do something great together.
Augment your agency's marketing team's bench with our end-to-end inbound and digital solutions and find out why we're "The HubSpot Agency for HubSpot Agencies."
Fill out this form, and someone from our Solutions team will be in touch with you soon!