HRMS migration
Field-level mapping, validation, and rollback between Recruit CRM & ATS and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.
Recruit CRM & ATS
Source
Bullhorn ATS & CRM
Destination
Compatibility
12 of 15
objects map 1:1 between Recruit CRM & ATS and Bullhorn ATS & CRM.
Complexity
CModerate
Timeline
4-6 weeks
Try the reverse
Overview
Moving from Recruit CRM & ATS to Bullhorn is a migration from a small-team-focused recruitment CRM to an enterprise staffing platform with a different object hierarchy, workflow model, and pricing structure. Recruit CRM organizes data around Candidates, Jobs, Contacts, Companies, and Deals; Bullhorn uses its own entity model with Jobs, Candidates, Contacts, Companies, and Opportunities as the core objects. We map the Recruit CRM Deals object to Bullhorn Opportunities, preserve pipeline stage histories, and rebuild hotlist membership as Bullhorn Groups. Recruit CRM API rate limits are license-scaled and require chunked extraction to avoid throttling during large migrations. Bullhorn's custom field limits per entity must be validated against Recruit CRM's per-organization custom field schemas before migration to flag any fields that cannot be accommodated. Email sequences, workflow automations, and Chrome extension-sourced data logic do not migrate as executable logic; we deliver a written inventory of these for the customer's Bullhorn admin to rebuild post-migration.
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.
Source platform
Recruit CRM & ATS platform overview
Scorecard, SWOT, gotchas, and pricing for Recruit CRM & ATS.
Destination platform
Bullhorn ATS & CRM platform overview
Scorecard, SWOT, gotchas, and pricing for Bullhorn ATS & CRM.
Data migration guide
The complete Bullhorn migration guide
Data model, import mechanisms, field mapping strategy, pitfalls, and cutover — by the engineers running it.
Source platform guide
Recruit CRM migration guide
Understand the data you're exporting from Recruit CRM & ATS before mapping it.
Destination checklist
Bullhorn migration checklist
Pre- and post-cutover tasks for moving onto Bullhorn ATS & CRM.
Source checklist
Recruit CRM migration checklist
Exit checklist for unwinding your Recruit CRM & ATS setup cleanly.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Recruit CRM & ATS object lands in Bullhorn ATS & CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Recruit CRM & ATS
Candidate
Bullhorn ATS & CRM
Candidate
1:1Recruit CRM Candidates map directly to Bullhorn Candidate records. We map standard profile fields (name, email, phone, location, skills, source) by API field name, then resolve custom field values from Recruit CRM's per-organization custom field schema to Bullhorn custom fields in the Candidate entity. Bullhorn imposes a per-entity custom field limit; we audit the Recruit CRM custom field count during discovery and flag any that exceed Bullhorn's allowance, which may require a custom object or a field reduction strategy agreed upon with the customer before migration.
Recruit CRM & ATS
Job
Bullhorn ATS & CRM
Job
1:1Recruit CRM Jobs map to Bullhorn Jobs with the full pipeline stage structure preserved. Bullhorn's hiring workflow is configurable per Job, and we map Recruit CRM's pipeline stages to Bullhorn's Workflow Steps so that candidate advancement through stages reflects the original placement pipeline history. Job assignments (assigned recruiter) map to Bullhorn Job Owner.
Recruit CRM & ATS
Contact
Bullhorn ATS & CRM
Contact
1:1Recruit CRM Contacts (hiring managers, referrers, business contacts distinct from Candidates) map to Bullhorn Contact records. The Contact-to-Company association in Recruit CRM maps to Bullhorn's Contact-to-Company relationship. Custom fields on Contacts migrate to Bullhorn Contact custom fields following the same field-level audit as Candidates.
Recruit CRM & ATS
Company
Bullhorn ATS & CRM
Company
1:1Recruit CRM Companies map to Bullhorn Company records with the full contact and job association preserved. Bullhorn's Company entity supports multiple Contacts per Company; we resolve the Recruit CRM Company-to-Contact associations at migration time and link the imported Contacts to the correct Bullhorn Company via the CompanyID lookup.
Recruit CRM & ATS
Deal
Bullhorn ATS & CRM
Opportunity
1:1Recruit CRM Deals track placement or business transactions tied to Companies and Candidates. We map Deals to Bullhorn Opportunities, translating Deal stage names to Bullhorn Opportunity Stage values and preserving Deal value, currency, expected close date, and any custom Deal fields. If the customer uses multiple Deal pipelines in Recruit CRM, we map them to Bullhorn Record Types on Opportunity to preserve pipeline separation.
Recruit CRM & ATS
Hotlist
Bullhorn ATS & CRM
Group
1:manyRecruit CRM Hotlists are curated candidate lists with saved search criteria and member IDs. We extract all candidate IDs from each hotlist during the discovery phase and create Bullhorn Groups (using Bullhorn's Group or List entity) with the original hotlist names preserved. Candidate-to-Group membership is re-established by adding each Candidate's Bullhorn ID to the corresponding Group at migration time. Hotlist search criteria do not migrate as logic; only the member snapshot migrates.
Recruit CRM & ATS
Task
Bullhorn ATS & CRM
Task
1:1Recruit CRM Tasks linked to Candidates, Contacts, or Jobs migrate to Bullhorn Tasks with assignment, due date, status, and priority preserved. We resolve the owner reference by matching Recruit CRM user emails to Bullhorn User records. Completed versus open task counts are preserved as the Task Status value.
Recruit CRM & ATS
Meeting
Bullhorn ATS & CRM
Event
1:1Recruit CRM Meeting records (date, time, attendees, outcome, notes) migrate to Bullhorn Event records. We preserve the meeting start and end time, location, and outcome description. Attendee resolution maps Recruit CRM Contact or Candidate references to Bullhorn Candidate or Contact IDs via the migration lookup table.
Recruit CRM & ATS
Call Log
Bullhorn ATS & CRM
Task (Call subtype)
1:1Recruit CRM Call Logs with duration, outcome, and linked Contact or Candidate migrate to Bullhorn Task records with TaskSubtype = Call. We preserve the call duration, outcome, timestamp, and the linked Candidate or Contact reference using the parent-record lookup table built during the mapping phase.
Recruit CRM & ATS
Note
Bullhorn ATS & CRM
Note
1:1Recruit CRM Notes attached to Candidates, Companies, or Jobs are stored as free-text records and migrate to Bullhorn Note records linked via ContentDocumentLink to the parent record. We preserve the full note body, creation timestamp, and the parent object association (Candidate, Contact, Company, or Job) resolved through the Bullhorn ID lookup.
Recruit CRM & ATS
File (Resume, Attachment)
Bullhorn ATS & CRM
Document / Attachment
1:1Candidate resumes, company documents, and email attachments stored in Recruit CRM's file storage migrate to Bullhorn as Documents attached to the corresponding Candidate or Company record. Each file is downloaded via the Recruit CRM Files API and re-uploaded to Bullhorn with the same candidate and object associations preserved. Large-volume file migrations require chunked parallel extraction and re-upload; we include file migration time in the timeline estimate during scoping.
Recruit CRM & ATS
Pipeline Stage
Bullhorn ATS & CRM
Workflow Step
lossyRecruit CRM's customizable pipeline stages per Job map to Bullhorn Workflow Steps. We extract the complete stage configuration (stage name, order, automation triggers if any) during discovery and create the equivalent Bullhorn Hiring Workflow with matching steps. Bullhorn's workflow is configured per Job or Job Order type, so we align the migrated workflow to the appropriate Bullhorn Job Record Type.
Recruit CRM & ATS
User / Owner
Bullhorn ATS & CRM
User
1:1Recruit CRM user accounts (recruiters, consultants, admins) map to Bullhorn User records by email match. We resolve active user assignments on Jobs, Candidates, and Deals to the corresponding Bullhorn User. Inactive Recruit CRM users without a matching Bullhorn User are held in a reconciliation queue for the customer's Bullhorn admin to provision before record import resumes.
Recruit CRM & ATS
Custom Field (Candidates, Jobs, Contacts, Companies)
Bullhorn ATS & CRM
Custom Field
lossyRecruit CRM custom field schemas are fully customer-defined and vary per organization. We audit the actual custom field set during discovery, map each field by data type (text, number, date, picklist, checkbox) to the equivalent Bullhorn custom field type, and create the Bullhorn custom fields in the destination org before any record migration. Fields that exceed Bullhorn's per-entity custom field limits are flagged and resolved with the customer before migration proceeds.
Recruit CRM & ATS
Sequence Enrollment
Bullhorn ATS & CRM
Activity Note (enrollment snapshot)
1:1Recruit CRM email sequence enrollments (which candidates are active in which sequences and what step they are on) migrate as Bullhorn Note records on the Candidate, documenting the sequence name and last-known step. The sequence logic itself (cadence steps, timing rules, trigger conditions) is platform-specific and does not transfer. We deliver a written sequence inventory to the customer's Bullhorn admin for rebuild in Bullhorn Automation or the chosen sales engagement tool.
| Recruit CRM & ATS | Bullhorn ATS & CRM | Compatibility | |
|---|---|---|---|
| Candidate | Candidate1:1 | Fully supported | |
| Job | Job1:1 | Fully supported | |
| Contact | Contact1:1 | Fully supported | |
| Company | Company1:1 | Fully supported | |
| Deal | Opportunity1:1 | Fully supported | |
| Hotlist | Group1:many | Fully supported | |
| Task | Task1:1 | Fully supported | |
| Meeting | Event1:1 | Fully supported | |
| Call Log | Task (Call subtype)1:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| File (Resume, Attachment) | Document / Attachment1:1 | Fully supported | |
| Pipeline Stage | Workflow Steplossy | Fully supported | |
| User / Owner | User1:1 | Fully supported | |
| Custom Field (Candidates, Jobs, Contacts, Companies) | Custom Fieldlossy | Fully supported | |
| Sequence Enrollment | Activity Note (enrollment snapshot)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.
Recruit CRM & ATS gotchas
API rate limits are license-scaled and can throttle bulk migration
Custom field schemas vary per organization and require field-level mapping
Files and email attachments require separate extraction and re-upload
Email sequences and automation logic do not transfer between platforms
Bullhorn ATS & CRM gotchas
ATS Growth edition has no API access
Attachments excluded from CSV bulk exports
Custom Object limits vary sharply by edition
Opportunity pipeline stages are recruitment-specific
Resume parse quality varies by document format
Pair-specific challenges
Migration approach
Discovery and schema audit
We audit the source Recruit CRM account across candidates, jobs, contacts, companies, deals, hotlists, custom field schemas, pipeline stages, and file volume. We pair this with Bullhorn edition selection guidance: Bullhorn Starter ($99/user) covers basic ATS; Core ($165/user) adds custom fields, workflows, and LinkedIn integration; Pro adds AI, automation, and analytics with a dedicated account manager. We also capture the Recruit CRM API rate limit tier (per license count) to calibrate chunking strategy. The discovery output is a written migration scope document with the complete object inventory, file count, custom field list, and rate-limit-adjusted extraction plan.
Field-level mapping and Bullhorn custom field creation
We map each Recruit CRM standard field to its Bullhorn equivalent by API name, then process custom fields by data type. Bullhorn custom fields are created in the destination org before any record migration begins. If the Recruit CRM custom field count exceeds Bullhorn's per-entity limits, we present the customer with a reduction worksheet and create a prioritized list of fields to migrate versus defer. Pipeline stages from Recruit CRM are mapped to Bullhorn Opportunity Stages and Sales Processes, with the customer confirming the stage mapping before configuration.
User reconciliation and Bullhorn User provisioning
We extract every distinct Recruit CRM user (recruiter, consultant, admin) referenced on Jobs, Candidates, Deals, Tasks, and Meetings and match by email against the Bullhorn destination org's User table. Recruit CRM users without a matching Bullhorn User go to a reconciliation queue. The customer's Bullhorn admin provisions any missing Users and confirms active versus inactive status for each. Owner references cannot be migrated until this step is complete because Bullhorn requires a valid OwnerId on most standard objects.
Sandbox migration and reconciliation
We run a full migration into a Bullhorn Sandbox using production-like data volume. The customer's Bullhorn admin reconciles record counts (Candidates in, Jobs in, Contacts in, Companies in, Opportunities in, Tasks in, Notes in) and spot-checks 25-50 records against the Recruit CRM source. We validate custom field values, hotlist membership, file associations, and stage mapping during sandbox migration. Any mapping corrections are documented and applied before production migration begins.
Production migration in dependency order
We run production migration in record-dependency order: Users (manual provisioning validated), Companies (first, as Contacts and Jobs reference them), Contacts, Candidates (with custom fields resolved), Jobs (with pipeline stage mapping applied), Opportunities (with AccountId and OwnerId resolved), Tasks and Call Logs, Meeting Events, Notes, Hotlist membership as Groups, and Files (parallel pipeline). Each phase emits a row-count reconciliation report before the next phase begins. Recruit CRM API rate limits are enforced throughout via chunking and backoff.
Cutover, validation, and automation rebuild handoff
We freeze Recruit CRM writes during the cutover window, run a final delta migration of any records modified during the migration, then enable Bullhorn as the system of record. We deliver a written inventory of Recruit CRM email sequences, pipeline automations, and hotlist search criteria for the customer's Bullhorn admin to rebuild in Bullhorn Automation (Herefish) or as Bullhorn Hiring Workflow configurations. We support a one-week hypercare window where we resolve any reconciliation issues raised by the recruitment team. We do not rebuild Recruit CRM workflows or sequences as Bullhorn automation as part of the migration scope.
Platform deep dives
Recruit CRM & ATS
Source
Strengths
Weaknesses
Bullhorn ATS & CRM
Destination
Strengths
Weaknesses
Complexity grading
Moderate HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Moderate migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Recruit CRM & ATS and Bullhorn ATS & CRM.
Object compatibility
1 of 7 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
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
Recruit CRM & ATS: 60 requests per minute for accounts with 6 or fewer licenses; 10 requests per minute per license for larger accounts.
Data volume sensitivity
Recruit CRM & ATS doesn't expose a bulk API — REST + parallelization used for high-volume runs.
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 Recruit CRM & ATS to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.
Walk through your Recruit CRM & ATS to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Recruit CRM & ATS
Other ways to arrive at Bullhorn ATS & CRM
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.