HRMS migration
Field-level mapping, validation, and rollback between Recooty and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.
Recooty
Source
Bullhorn ATS & CRM
Destination
Compatibility
6 of 12
objects map 1:1 between Recooty and Bullhorn ATS & CRM.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Recooty and Bullhorn serve different segments of the recruiting market. Recooty is an AI-powered ATS built for small and medium businesses with visual pipelines, one-click job board distribution, and bundled AI tools on Growth and Business plans. Bullhorn is a cloud-based ATS and CRM platform designed for staffing agencies and recruitment firms managing high-volume candidate and client relationships. The migration from Recooty to Bullhorn requires resolving several structural differences: Recooty organizes hiring around Jobs with per-job Pipelines and candidate-centric records, while Bullhorn separates Leads, Candidates, Contacts, and Companies with Opportunities used for placement tracking. We extract candidate records with full application history and pipeline stage data from Recooty, split or merge records into Bullhorn's entity model (Leads for new prospects, Candidates for applicants, Contacts for client contacts), and preserve custom field definitions and GDPR consent metadata as documented field mappings rather than automatic replication. Bullhorn's API rate limits (100,000 calls per month, 1,500 per minute, 50 concurrent sessions) and the absence of API access on ATS Growth edition require careful scoping before migration begins. Job board publishing history, branded career pages, and Recooty workflow automations do not transfer between platforms and are treated as separate rebuild items in the migration deliverable.
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 Recooty 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.
Recooty
Job (Job Posting)
Bullhorn ATS & CRM
Job
1:1Recooty Jobs migrate to Bullhorn Job records as the primary job container. Each Recooty job title, description, location, department, employment type, and publishing status maps directly to the equivalent Bullhorn Job fields (title, description, address, employmentType). Bullhorn Job records are created first because Candidate applications reference the Job ID as a required foreign key. We preserve the Recooty job status (Draft, Published, Closed) as a Bullhorn custom field if the destination edition requires it, since Bullhorn handles status via the isDeleted flag and separate JobOrder status states.
Recooty
Candidate / Applicant
Bullhorn ATS & CRM
Candidate
1:1Recooty Candidate records map to Bullhorn Candidate as the primary applicant record. The mapping includes full name fields, email, phone, resume file (PDF, DOC, TXT), application date, and any pipeline stage assignments. Recooty candidates tied to multiple job applications (one candidate, multiple applications) map to separate Bullhorn JobSubmission records, each linked to the same Candidate ID. This preserves the multi-application history that Recooty tracks natively.
Recooty
Pipeline (Hiring Pipeline)
Bullhorn ATS & CRM
Sales Process + Opportunity Record Type
1:manyRecooty's per-job visual pipeline stages (Applied, Screening, Interview, Offer, Hired) map to Bullhorn Opportunity record types with a corresponding Bullhorn Sales Process defining the stage whitelist. Each Recooty pipeline becomes a Bullhorn Record Type on the Opportunity object. If Recooty has custom pipeline stages per job, we create multiple Bullhorn Record Types and Sales Processes during schema setup, mapping the original Recooty stage names to Bullhorn OpportunityStatus values. Stage transition dates from Recooty are preserved in Bullhorn custom date fields.
Recooty
Interview Schedule
Bullhorn ATS & CRM
Task or Event
1:1Recooty Interview records (date, time, type, interviewer, candidate ID) map to Bullhorn Task records with TaskSubtype set to Interview or Bullhorn Event records depending on whether the interview is a scheduled meeting or a task-based to-do. Recooty Business and Enterprise calendar sync integrations do not transfer; we migrate the interview metadata as structured data and the customer's admin re-establishes calendar integrations in Bullhorn. Self-scheduling links are documented separately as a rebuild item.
Recooty
Custom Fields (Candidate + Job)
Bullhorn ATS & CRM
Custom Fields
lossyRecooty custom fields (Business and Enterprise only) map to Bullhorn custom fields on the Candidate and Job entities. Bullhorn supports text, number, date, dropdown, multi-select, checkbox, and currency field types which cover the Recooty custom field set. We pre-create Bullhorn custom fields via the Bullhorn Field Mappings interface (Admin > Field Mappings) during schema setup, using the Recooty field labels as display names and preserving the original Recooty API field names in the Bullhorn field description for admin reference. Custom field limits per Bullhorn entity are checked before migration to avoid over-provisioning.
Recooty
Career Page (Branded Careers Site)
Bullhorn ATS & CRM
Bullhorn Career Portal
lossyRecooty branded career pages generated on Growth and above do not migrate as builder state. Bullhorn Career Portal serves as the replacement. We extract the job content from Recooty Job records (which includes the formatted job description and application questions) and provide a migration worksheet listing every active job posting with its content, application questions, and any custom branding notes. The customer's Bullhorn admin uses the Bullhorn Career Portal builder to re-publish. Job posting history on Recooty's connected job boards is documented as a separate board-level re-publishing checklist.
Recooty
GDPR Consent Records
Bullhorn ATS & CRM
Candidate Consent Fields
1:1Recooty stores candidate consent records, data retention policy IDs, and audit trail entries as structured account data. Bullhorn does not have a dedicated GDPR consent object; consent status is tracked via field-level flags (hasOptedOutOfEmail, dateAdded) and custom fields. We extract GDPR metadata from Recooty, map candidate IDs to Bullhorn Candidate records, and set Bullhorn email opt-out flags and a custom consent_date__c field carrying the original Recooty consent timestamp. Any candidates whose consent status may have lapsed during the migration window are flagged in a separate report for admin review.
Recooty
Company / Client Contacts (via Recooty if used)
Bullhorn ATS & CRM
Contact + ClientCorporation
1:1Recooty does not have a dedicated client management module, but teams sometimes store client company names in custom fields or in candidate notes. Bullhorn's ClientCorporation (Company) and Contact objects allow structured client relationship tracking separate from candidate records. If Recooty contains company or client data in structured form, we map it to Bullhorn ClientCorporation and Contact records during migration. If the data exists only in unstructured notes, we flag it for manual entry or a separate data enrichment step.
Recooty
Owner (Recruiter / Hiring Manager)
Bullhorn ATS & CRM
User
1:1Recooty Owner records map to Bullhorn User records by email match. Bullhorn User provisioning is a prerequisite for any migration because Opportunity records and Candidate assignments require OwnerId. We reconcile all distinct Recooty Owner emails against Bullhorn User records and flag any missing Users for the customer's Bullhorn admin to provision before record import proceeds.
Recooty
Job Board Posting History
Bullhorn ATS & CRM
Not migratable
lossyRecooty's job board publishing connections (LinkedIn, Glassdoor, Indeed, and 100+ boards) are OAuth or API tokens scoped to the Recooty platform and are not portable. We preserve the job content (title, description, requirements) and application questions in the Bullhorn Job records. Board-level publishing history is documented in a separate post-migration checklist, and the customer's admin re-establishes publishing connections through Bullhorn's job board integrations or by publishing directly through each board's native interface.
Recooty
Recooty Workflows / Automations
Bullhorn ATS & CRM
Not migratable
lossyRecooty workflow automations (stage-change triggers, email notifications, assignment rules) do not migrate to Bullhorn Automation (formerly Herefish) because they are different automation engines with different trigger models, action types, and configuration schemas. We deliver a written inventory of every active Recooty automation with its trigger conditions, actions, and a recommended Bullhorn Automation equivalent. The customer's Bullhorn admin or a Bullhorn partner rebuilds them post-migration.
Recooty
Analytics and Reports
Bullhorn ATS & CRM
Reports and Dashboards
lossyRecooty pipeline metrics, hire velocity, and candidate ratings do not transfer as Bullhorn reports. Bullhorn Starter includes standard reporting; Bullhorn Core and Pro add advanced analytics dashboards. We extract key Recooty metrics (pipeline stage counts, time-in-stage averages, application volumes by job) as a CSV reference sheet and provide a mapping table showing which Bullhorn standard reports replace each Recooty analytics view. Custom Recooty reports are documented as a rebuild scope for the customer's reporting team.
| Recooty | Bullhorn ATS & CRM | Compatibility | |
|---|---|---|---|
| Job (Job Posting) | Job1:1 | Fully supported | |
| Candidate / Applicant | Candidate1:1 | Fully supported | |
| Pipeline (Hiring Pipeline) | Sales Process + Opportunity Record Type1:many | Fully supported | |
| Interview Schedule | Task or Event1:1 | Fully supported | |
| Custom Fields (Candidate + Job) | Custom Fieldslossy | Fully supported | |
| Career Page (Branded Careers Site) | Bullhorn Career Portallossy | Fully supported | |
| GDPR Consent Records | Candidate Consent Fields1:1 | Fully supported | |
| Company / Client Contacts (via Recooty if used) | Contact + ClientCorporation1:1 | Fully supported | |
| Owner (Recruiter / Hiring Manager) | User1:1 | Fully supported | |
| Job Board Posting History | Not migratablelossy | Fully supported | |
| Recooty Workflows / Automations | Not migratablelossy | Fully supported | |
| Analytics and Reports | Reports and Dashboardslossy | Mapping required |
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.
Recooty gotchas
Tier-gated bulk import blocks high-volume migrations
GDPR audit trails require explicit cross-platform mapping
Job board posting history does 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 edition verification
We audit the Recooty source account across plan tier (Starter/Growth/Business/Enterprise), active job count, candidate volume, pipeline configurations, custom field definitions, GDPR compliance settings, and integration inventory. We simultaneously verify the Bullhorn destination edition (ATS Growth/Starter/Core/Pro/Enterprise) with a focus on API access status and rate-limit tier. If the customer holds ATS Growth, we flag the edition as incompatible with API-based migration and recommend an upgrade to Starter or above before scoping proceeds.
Schema design and Bullhorn Record Type setup
We design the Bullhorn destination schema before any data moves. This includes creating Bullhorn custom fields (mapped to Recooty custom field labels and types), configuring Record Types and Sales Processes for pipeline migration, setting up Opportunity stages that mirror the Recooty pipeline structure, and designing the Job-Bullhorn Job mapping. Schema is validated in a Bullhorn sandbox or staging org before production migration begins. GDPR consent fields are added to the Candidate entity during this phase.
Sandbox migration and reconciliation
We run a full migration into the Bullhorn production environment using representative data volume. The customer's recruiting operations lead reconciles record counts (Jobs in, Candidates in, Applications in, Pipeline stages in), spot-checks 25-50 candidate records against the Recooty source, and validates that pipeline stage transitions and timestamps match the original Recooty data. Any mapping corrections are applied to the migration scripts before the production migration begins.
Candidate and Job migration with GDPR metadata
We migrate Bullhorn Jobs first, since all Candidate applications reference a Job ID as a required foreign key. Candidate records follow, with GDPR consent metadata mapped to Bullhorn's email opt-out flags and a custom consent_date__c field. Multi-application candidates (one candidate applied to multiple Recooty jobs) result in multiple Bullhorn JobSubmission records tied to the same Candidate ID. Recooty pipeline stage assignments map to Bullhorn Opportunity records with the appropriate Record Type and Sales Process assigned. Custom field values transfer to Bullhorn custom fields by name and type match.
Interview schedule, Owner, and integration mapping
We migrate Recooty interview records as Bullhorn Task or Event records linked to the corresponding Candidate and Job. Recooty Owner records reconcile against Bullhorn User records by email match; missing Users go to a provisioning queue that the customer's Bullhorn admin resolves before record import resumes. Job board publishing history is documented in a post-migration checklist for the customer's admin to work through manually.
Cutover, delta sync, and automation rebuild handoff
We freeze Recooty writes during cutover, run a final delta migration of any records modified during the migration window, then enable Bullhorn as the system of record. We deliver the automation and workflow inventory document listing every active Recooty workflow with its trigger, conditions, and recommended Bullhorn Automation equivalent. We deliver the job board re-publishing checklist and the GDPR consent flag report. We support a five-business-day hypercare window for reconciliation issues raised by the recruiting team.
Platform deep dives
Recooty
Source
Strengths
Weaknesses
Bullhorn ATS & CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Recooty 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
Recooty: Not publicly documented.
Data volume sensitivity
Recooty 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 Recooty to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.
Walk through your Recooty 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 Recooty
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.