HRMS migration

Migrate from Kallidus Recruit to Bullhorn ATS & CRM

Field-level mapping, validation, and rollback between Kallidus Recruit and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.

Kallidus Recruit logo

Kallidus Recruit

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

58%

7 of 12

objects map 1:1 between Kallidus Recruit and Bullhorn ATS & CRM.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Kallidus Recruit to Bullhorn is a migration from a UK-built ATS module within a broader talent suite to a staffing-focused ATS and CRM with global adoption in agency and enterprise recruitment. The primary structural difference is that Kallidus Recruit models Vacancies as standalone records with internal pipelines, while Bullhorn uses a Job object with separate Opportunity records for placements and a Client Corporation record for the hiring company. We map Kallidus Candidates directly to Bullhorn Candidates, map Vacancy records to Bullhorn Job postings with pipeline stages preserved, and link Applications to the Bullhorn JobOrder and Candidate records using the vacancy identifier as the dedupe key. Because Kallidus Recruit exposes its Backoffice API only to Super Users, we coordinate credential provisioning during scoping before any export tooling can authenticate. We do not migrate email templates, agency portal configurations, or automated reminder flows; we deliver a written inventory of these for the customer's admin to rebuild in Bullhorn.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Kallidus Recruit logo

Kallidus Recruit

What's pushing teams away

  • Customers report that Kallidus Recruit and the HRIS module are sold as one platform but behave as separate products with poor data linkage, prompting switchers to seek a genuinely unified system.
  • Reporting is described as limited compared to standalone ATS platforms, with custom report building requiring workarounds or third-party tools to achieve adequate analytics.
  • The standard outstanding-training reminder email cannot be customised, which has caused candidates and internal staff to mark legitimate reminders as spam, creating communication gaps.
  • Some customers felt the platform was priced at a premium tier without delivering proportional depth in automation, compliance workflows, or AI features that competitors now standardly include.

Choosing

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

What's pulling them in

  • Agencies choose Bullhorn because it combines ATS and CRM in one platform, eliminating the need to switch between separate tools for candidate management and client relationship tracking.
  • The resume parser extracts contact details, work history, and skills into structured, searchable candidate profiles automatically without manual data entry, reportedly driving 24% more placements per recruiter.
  • Bullhorn's placement and split-billing model natively supports contract staffing workflows, handling start/end dates, overtime rules, and multi-party pay/charge rates in a single record.
  • The platform offers extensive third-party integrations through its Recruitment Cloud Marketplace, connecting with back-office, onboarding, and payroll systems used by staffing agencies.
  • 72% of Bullhorn customers are teams with fewer than 10 users, and Bullhorn's implementation team handles setup and data migration for small agencies going live within weeks.

Object mapping

How Kallidus Recruit objects map to Bullhorn ATS & CRM

Each row shows how a Kallidus Recruit 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.

Kallidus Recruit

Candidate

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

Kallidus Recruit Candidates map directly to Bullhorn Candidates. The primary contact fields (name, email, phone, address, candidate profile) transfer to Bullhorn Candidate. We use the candidate email address as the dedupe key during import to avoid duplicate records. Candidate status history from Kallidus (active, screening, interview, offer, placed) maps to Bullhorn Candidate status fields. Any notes attached to the Candidate record migrate as Bullhorn Note records linked via ContentDocumentLink.

Kallidus Recruit

Vacancy

maps to

Bullhorn ATS & CRM

JobOrder

1:1
Fully supported

Kallidus Recruit Vacancies map to Bullhorn JobOrder records. Role title, department, location, job description, opening date, and closing date transfer directly. The Kallidus pipeline stage model maps to Bullhorn JobOrder status (Open, Interview, Offer, Extended, Filled, Closed). We inventory every custom vacancy field during scoping because customer-defined fields on Vacancy are not always consistently exposed in Kallidus exports; these require manual field creation in Bullhorn using Bullhorn's custom field editor or the Custom Objects API before the vacancy import.

Kallidus Recruit

Application

maps to

Bullhorn ATS & CRM

JobSubmission

1:1
Fully supported

Kallidus Recruit Applications link a Candidate to a Vacancy and carry status, submission date, screening notes, and interview scores. We map Applications to Bullhorn JobSubmission records, resolving the Candidate reference and JobOrder reference at migration time using the Kallidus candidate email and vacancy identifier as foreign keys. Application status transitions (applied, short-listed, rejected, withdrawn) map to Bullhorn JobSubmission status values.

Kallidus Recruit

Interview Record

maps to

Bullhorn ATS & CRM

Placement Certification or Note

1:1
Fully supported

Kallidus Recruit interview scheduling records (date, interviewer assignment, outcome, candidate self-scheduling confirmation) transfer as Note records or custom fields on the Bullhorn JobSubmission. Bullhorn does not have a native interview scheduling sub-object equivalent to Kallidus Recruit's interview management module, so interview outcome data is preserved as structured notes on the JobSubmission for admin reference. Candidate self-scheduling preferences do not have a Bullhorn equivalent and are noted in the handoff document for manual reconfiguration.

Kallidus Recruit

Hiring Manager and User

maps to

Bullhorn ATS & CRM

User and Contact (Client Corporation)

1:many
Fully supported

Kallidus Recruit User accounts (internal staff and hiring managers) split into two Bullhorn objects. Internal recruiter and admin users map to Bullhorn User records via email match. Hiring managers attached to Vacancies map to Bullhorn Contact records under the relevant Client Corporation (JobOrder). Role-based permissions from Kallidus do not transfer to Bullhorn profiles; we document the role structure in the inventory and the customer's Bullhorn admin configures profiles and permissions post-migration.

Kallidus Recruit

Agency Portal Contact

maps to

Bullhorn ATS & CRM

Contact (under Client Corporation)

1:1
Fully supported

External agency recruiters who submit candidates via the Kallidus agency portal have separate contact records (agency name, contact name, email, phone). These map to Bullhorn Contact records under a Client Corporation record representing the agency. We export submission history associated with each agency contact as Note records on the Contact for reference. The agency portal submission interface does not migrate; the customer's Bullhorn admin configures external recruiter access via Bullhorn's standard client portal or VMS connector if needed.

Kallidus Recruit

Custom Vacancy Fields

maps to

Bullhorn ATS & CRM

Custom Fields on JobOrder

lossy
Mapping required

Organisations that have added custom fields to Vacancy records in Kallidus Recruit to capture sector-specific data (for example, security clearance level, travel requirements, contract type) require manual schema creation in Bullhorn. We inventory all custom vacancy fields during scoping by exporting the Kallidus backoffice field configuration, then create matching custom fields on the Bullhorn JobOrder object using the Custom Objects API (up to 55 fields per entity). The customer reviews field names and types before we run the vacancy import. This is a manual configuration step that adds time to the scoping phase.

Kallidus Recruit

Email Template

maps to

Bullhorn ATS & CRM

Email Template (not migrated as code)

lossy
Fully supported

Kallidus Recruit email templates used for candidate communications (with merge fields for Candidate and Vacancy data) are exported as template bodies and field mapping documentation. Bullhorn email templates use a different merge field syntax and template structure. We do not migrate templates as code. We deliver a written inventory of every Kallidus email template with its body content, merge field references, and the candidate communication it triggers, so the customer's Bullhorn admin can recreate them in Bullhorn's template editor. The standard non-customisable reminder email is noted as a gap that Bullhorn's customisable templates will resolve.

Kallidus Recruit

Vacancy Poster (job-board posting)

maps to

Bullhorn ATS & CRM

Job Posting Distribution

lossy
Fully supported

Kallidus Recruit's Vacancy Poster distributes job postings to multiple boards from one place. We document the active job-board distribution list for each Vacancy (which boards, which date, current status). Bullhorn's job publishing module supports direct posting to major job boards and LinkedIn. We inventory the active board distribution and deliver it as a configuration guide; re-posting to job boards in Bullhorn is a manual step that the customer's admin performs or that can be configured as part of Bullhorn's standard job-board integration setup.

Kallidus Recruit

Candidate Status History

maps to

Bullhorn ATS & CRM

Candidate History via Note

1:1
Fully supported

Kallidus Recruit tracks candidate status changes over time (applied, screening, interview, offer, placed, rejected). Bullhorn Candidate records do not preserve a native status history timeline beyond the current status field. We export the full status change log from Kallidus as a series of dated Note records on the Bullhorn Candidate, each stamped with the original status and timestamp, so that the hiring manager or recruiter can review the candidate's journey without referring back to the source system.

Kallidus Recruit

GDPR Anonymisation and Redaction Data

maps to

Bullhorn ATS & CRM

Candidate (with data handling notes)

lossy
Fully supported

Kallidus Recruit includes built-in GDPR-compliant candidate anonymisation and redaction tooling. We document any candidates that have been anonymised or had data redacted under GDPR requests, with the redaction date and scope. Bullhorn does not have a native GDPR redaction workflow equivalent; we flag these records in the migration inventory so the customer's Bullhorn admin can apply appropriate data handling notes or engage Bullhorn's compliance documentation process if required.

Kallidus Recruit

Xref and Adobe Sign Integration Records

maps to

Bullhorn ATS & CRM

Note (inventory only)

1:1
Fully supported

Kallidus Recruit customers who use Xref for reference checks or Adobe Sign for document flows have linked records and attachments that do not export as structured data. We inventory the Kallidus integration configuration (which vacancy stages trigger Xref, which document types use Adobe Sign) and deliver it as a reference document for the customer's Bullhorn admin to re-establish via Bullhorn's native integrations (Bullhorn has an Adobe Sign connector in the marketplace) or to document as a gap in the Bullhorn setup.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Kallidus Recruit logo

Kallidus Recruit gotchas

Medium

API tokens restricted to Super Users

Medium

Recruit and HRIS share a brand but not a schema

Low

Standard email templates cannot be customised by the customer

Low

Limited public documentation of API rate limits

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM gotchas

High

ATS Growth edition has no API access

High

Attachments excluded from CSV bulk exports

Medium

Custom Object limits vary sharply by edition

Medium

Opportunity pipeline stages are recruitment-specific

Low

Resume parse quality varies by document format

Pair-specific challenges

  • Kallidus Recruit API requires Super User access

    Kallidus Recruit exposes its Backoffice API only to Super User accounts. We must coordinate with the customer's administrator to provision a Super User token before migration tooling can authenticate. If the organisation has internal governance policies that prevent any user from holding Super User access, migration may require elevated access to be granted temporarily or a named migration contact to handle the export phase. This adds one to two weeks to scoping in organisations with strict role separation.

  • Vacancy pipeline stages do not map automatically to Bullhorn JobOrder status

    Kallidus Recruit allows organisations to configure custom pipeline stages per Vacancy. Bullhorn JobOrder uses a standard status model (Open, Interview, Offer, Extended, Filled, Closed) that is not a direct one-to-one match for every Kallidus custom stage. We inventory every unique pipeline stage value across all Vacancies during scoping, map them to the nearest Bullhorn JobOrder status, and document any stages that have no equivalent. Stages without a Bullhorn equivalent are noted in the inventory for the customer's admin to decide whether to use a custom field on JobOrder or accept the closest standard status.

  • Custom vacancy fields require manual schema creation in Bullhorn

    Organisations that have added custom fields to Vacancy records (for sector-specific data such as security clearance, travel percentage, or contract type) find that these fields are not always exposed consistently in Kallidus API exports. We inventory every custom vacancy field during scoping, but creating matching custom fields in Bullhorn is a manual step that requires the customer to review field names, data types, and picklist values before we run the vacancy import. This step is a common source of delay in migrations where the customer has many custom vacancy fields.

  • Agency portal contacts and submissions have no direct Bullhorn equivalent

    Kallidus Recruit's agency portal provides a structured submission channel for external recruiters with separate contact records and submission history. Bullhorn handles external recruiter access through its standard client portal, VMS connector, or manual submission. We export agency contact data and submission history as Bullhorn Contact records and Note records, but the portal interface does not migrate. The customer's Bullhorn admin rebuilds external recruiter access post-migration, and any integrations with agency-specific portals (such as agency-managed job-board aggregator feeds) are inventoried separately for reconfiguration.

  • Standard email templates and automated reminders do not migrate

    Kallidus Recruit's standard email templates (including the non-customisable outstanding-training reminder) and any automated email workflows do not have a Bullhorn equivalent in terms of configuration structure. We export template bodies and document merge field usage, but the templates themselves are not transferred as code. The customer's Bullhorn admin recreates email templates in Bullhorn's template editor. Bullhorn's customisable template model resolves the non-customisable reminder limitation that Kallidus Recruit customers report.

Migration approach

Six steps for a successful Kallidus Recruit to Bullhorn ATS & CRM data migration

  1. Discovery and Super User credential provisioning

    We conduct a structured discovery call with the customer's Kallidus Recruit administrator to audit the source portal. This includes an inventory of Candidate records, Vacancy records (active and closed), Application records, Hiring Manager and User accounts, agency portal contacts, custom vacancy fields, and any active Xref or Adobe Sign integration configurations. Because the Kallidus Backoffice API requires Super User access, we coordinate the provisioning of a Super User token or a named migration contact with Super User permissions before any export tooling can authenticate. The discovery output is a written migration scope document with record counts, object inventory, and a Bullhorn edition recommendation based on the customer's team size and feature requirements.

  2. Destination schema design and pipeline mapping

    We design the Bullhorn destination schema before any data moves. This includes creating Client Corporation records (one per unique hiring company in the Vacancy data), configuring JobOrder record types and status values that map to the Kallidus vacancy pipelines, setting up Candidate custom fields if required, and mapping the Kallidus application status values to Bullhorn JobSubmission statuses. Custom vacancy fields from Kallidus are reviewed with the customer, created as custom fields on Bullhorn JobOrder using the Custom Objects API, and validated before vacancy import begins. This phase produces a schema design document and a Bullhorn sandbox configuration that the customer reviews and approves.

  3. Sandbox migration and record reconciliation

    We run a full migration into a Bullhorn Sandbox using a representative data sample. The customer's recruiter lead and system administrator reconcile record counts (Candidates in, Client Corporations in, JobOrders in, JobSubmissions in), spot-check 25-50 random records against the Kallidus source for field-level accuracy, and verify that custom vacancy fields have populated correctly on JobOrder records. Any mapping corrections are applied to the migration scripts before production migration begins. This step prevents discovery of mapping errors after the production cutover has started.

  4. User and Contact provisioning

    We extract every distinct Hiring Manager and User from Kallidus Recruit and separate them into two groups: internal staff who will use Bullhorn (mapped to Bullhorn User records via email match) and external hiring managers or agency contacts (mapped to Bullhorn Contact records under Client Corporation). Internal recruiters without a matching Bullhorn User account are held in a reconciliation queue for the customer's admin to provision before record import resumes. Agency contact records are imported after Client Corporation records are in place so that the parent lookup is satisfied.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Client Corporations (from hiring companies on Vacancies), Bullhorn Users (validated by admin), Candidates (from Kallidus Candidate records), JobOrders (from Kallidus Vacancies with custom fields created in step 2), JobSubmissions (linking Candidate to JobOrder), agency Contact records, interview outcome notes, candidate status history notes, and integration inventory documentation. Each phase emits a row-count reconciliation report before the next phase begins. We use Bullhorn's REST API with adaptive throttling, starting conservatively and ramping up while monitoring for rate-limit responses.

  6. Cutover, delta sync, and workflow inventory handoff

    We freeze Kallidus Recruit writes during the cutover window, run a final delta migration of any records modified during the migration window (new Candidates applied, status changes), then enable Bullhorn as the system of record. We deliver the email template inventory, agency portal configuration notes, job-board distribution list, Xref and Adobe Sign integration notes, and the GDPR redaction log to the customer's Bullhorn admin. We support a one-week hypercare window where we resolve any data quality issues raised by the customer's team. We do not rebuild Kallidus email templates, agency portal configurations, or any automated reminder flows inside the migration scope; those are separate configuration tasks for the customer's admin.

Platform deep dives

Context on both ends of the pair

Kallidus Recruit logo

Kallidus Recruit

Source

Strengths

  • Integrated job-board posting via Vacancy Poster distributes vacancies to multiple boards from one place.
  • Candidate self-scheduling for interviews reduces administrative coordination overhead.
  • Agency portal provides a structured submission channel for external recruiters.
  • GDPR-compliant candidate anonymisation and redaction tooling is built into the screening workflow.
  • Part of a broader talent suite (LMS, HRIS) that some organisations prefer to manage under one vendor relationship.

Weaknesses

  • Recruit and HRIS modules are marketed together but lack deep data integration in practice.
  • Reporting and analytics are limited compared to standalone ATS platforms, often requiring third-party tools.
  • API access is restricted to Super Users, adding a coordination step for migration tooling setup.
  • Standard system messages (such as training reminders) cannot be customised by the customer.
  • Pricing is premium-only with no public tier breakdown, making cost comparisons difficult before a sales conversation.
Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

Destination

Strengths

  • Unified ATS and CRM on one platform purpose-built for staffing agencies, eliminating separate tools for candidates and clients.
  • Automated resume parsing extracts structured candidate data—contact details, work history, skills—into searchable profiles instantly.
  • Native placement and split-billing model handles contract staffing workflows including start/end dates and overtime rules.
  • Bullhorn Recruitment Cloud Marketplace offers 100+ pre-validated third-party integrations spanning the full recruiting lifecycle.
  • 24/7 global support coverage from 350+ support staff with dedicated account management included at all tiers.

Weaknesses

  • Widely regarded as old and bloated with an unintuitive interface and steep learning curve for new recruiters.
  • Slow page loads and performance lag cited in over 200 verified G2 reviews during high-volume recruiting periods.
  • Pricing is opaque—custom-negotiated per organization with significant upfront implementation fees that vary by deal.
  • ATS Growth edition excludes API access entirely, preventing automated data export without upgrading first.

Complexity grading

How hard is this migration?

Standard HRMS migration. All 7 core objects map 1:1 between Kallidus Recruit and Bullhorn ATS & CRM.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Kallidus Recruit and Bullhorn ATS & CRM.

  • Object compatibility

    A

    All 7 core objects map 1:1 between Kallidus Recruit and Bullhorn ATS & CRM.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Kallidus Recruit: Not publicly documented in the Backoffice API guide.

  • Data volume sensitivity

    B

    Kallidus Recruit doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Kallidus Recruit to Bullhorn ATS & CRM migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Kallidus Recruit to Bullhorn ATS & CRM data migrations

Answers to the questions buyers ask most during Kallidus Recruit to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Kallidus Recruit to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for organisations under 10,000 Candidates, 500 Vacancies, and 2,000 Applications with no custom vacancy fields. Migrations with custom vacancy fields, agency portal contact data, large application histories, or multiple vacancy pipelines requiring stage-by-stage pipeline mapping move to eight to twelve weeks because of schema review time, custom field creation in Bullhorn, and the Super User coordination step for API access.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Kallidus Recruit.
Land in Bullhorn ATS & CRM, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day