HRMS migration

Migrate from iRecruit to Bullhorn ATS & CRM

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

iRecruit logo

iRecruit

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

83%

10 of 12

objects map 1:1 between iRecruit and Bullhorn ATS & CRM.

Complexity

BStandard

Timeline

4-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

iRecruit and Bullhorn serve different segments of the recruitment market and the migration reflects that structural gap. iRecruit is a hosted ATS for small-to-mid-size businesses with no public API, a built-in Exporter for ad-hoc data pulls, and an iConnect onboarding module that handles I-9 and e-signatures. Bullhorn is an ATS and CRM built for staffing and recruitment agencies with 26 years of domain depth, a fully documented REST and Bulk API, and over 350 marketplace integrations. The migration requires building export scope from iRecruit's existing saved reports since no programmatic API pull is possible, mapping per-job knock-out questions and custom screening questions to Bullhorn's custom field and custom object model, and preserving WOTC tax credit fields while flagging that re-enrollment with the payroll provider is a manual post-migration step. Bullhorn workflows, automations, and active onboarding invite sessions do not migrate as live configurations; we document them for the customer's admin to rebuild.

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

iRecruit logo

iRecruit

What's pushing teams away

  • iRecruit's pricing is opaque — the Enterprise tier requires a sales contact and there is no public per-seat or per-job price list, making budget approval difficult without a demo call.
  • The platform lacks publicly documented API endpoints or developer documentation, which blocks customers who need programmatic integrations or automated workflow triggers beyond the built-in templates.
  • Small teams report that the interface, while functional, has not kept pace with modern ATS UX — particularly around mobile candidate experience and real-time collaboration on reviews.
  • Customers with complex multi-department or multi-location hiring say the requisition approval workflow is too linear and lacks parallel routing or conditional approvals.
  • Integration options are limited to Sage HRMS, MyPayrollHR, and a generic custom export file — customers on other payroll or HRIS platforms must build and maintain their own export pipeline.

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 iRecruit objects map to Bullhorn ATS & CRM

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

iRecruit

Job / Job Posting

maps to

Bullhorn ATS & CRM

JobOrder

1:1
Fully supported

iRecruit Job postings map to Bullhorn JobOrder records. Each iRecruit job carries its title, description, location, employment type, and salary range as standard fields. Job status (open, filled, closed) maps to Bullhorn's status field. Internal and external visibility flags map to the isPublic flag on JobOrder. Active social posting settings (LinkedIn, Facebook, Twitter) do not have a direct Bullhorn API equivalent for bulk configuration — we document the setting state for the customer's admin to reconfigure in Bullhorn's job distribution settings post-migration.

iRecruit

Candidate / Applicant

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

iRecruit candidate profiles map to Bullhorn Candidate records. The candidate's resume is attached as a ContentDocument linked to the Candidate via ContentDocumentLink. Application date, source (Indeed, Monster, direct, etc.), and current stage migrate as standard fields. Candidate email, phone, name, and address fields map directly. Where a candidate has applied to multiple iRecruit jobs, we create one Bullhorn Candidate record with separate JobSubmission records for each application, preserving the per-application stage independently.

iRecruit

Job Submission / Application

maps to

Bullhorn ATS & CRM

JobSubmission

1:1
Fully supported

Each iRecruit candidate-to-job application maps to a Bullhorn JobSubmission record linking the Candidate to the JobOrder. The submission date, status (new, screening, interview, offer, hired, rejected), and any rejection reason migrate. The JobSubmission is the Bullhorn object that tracks the candidate's movement through the hiring pipeline for a specific job, satisfying the requirement to represent each application as a distinct record.

iRecruit

Requisition

maps to

Bullhorn ATS & CRM

Lead or JobOrder (split by type)

lossy
Fully supported

iRecruit Enterprise requisitions capture the hiring request from a department manager, including job details, department, and approval status. We map requisitions to Bullhorn Lead records if they represent a pre-qualified client hiring need, or to JobOrder if they represent an internal staffing req that becomes a job order in Bullhorn. Requisition approval routing state migrates as a custom field on the target object, not as a Bullhorn workflow — the approval chain requires rebuild in Bullhorn's approval process configuration.

iRecruit

iConnect Onboarding Record

maps to

Bullhorn ATS & CRM

Onboarding (Able) or custom Candidate fields

1:1
Fully supported

iRecruit iConnect onboarding records contain I-9 completion status, tax form responses (W-4, state equivalents), benefits enrollment selections, and e-signature completion flags. Bullhorn's Able onboarding module handles this differently. We migrate the onboarding form field data and completion state as custom fields on the Bullhorn Candidate record so the Bullhorn admin can initiate onboarding from the correct stage in Able. Active iConnect e-signature invite sessions cannot be transferred as live sessions — they must be restarted in Bullhorn Able on day one of go-live.

iRecruit

User / Team Member

maps to

Bullhorn ATS & CRM

User

1:1
Fully supported

iRecruit user accounts (recruiter, hiring manager, admin roles) map to Bullhorn User records. Role assignments and team associations migrate as user-level properties and a custom User field for department affiliation. Session-based authentication tokens cannot migrate. Bullhorn's User records must be provisioned by the customer's Bullhorn admin before the candidate and job migrations run, since OwnerId references on JobOrder and Candidate require a valid Bullhorn User ID.

iRecruit

Custom Knock-Out Question

maps to

Bullhorn ATS & CRM

Custom Object or custom fields on JobOrder

1:many
Fully supported

iRecruit stores knock-out questions as per-job field configurations, and a candidate's answer set varies by the specific job they applied to. Bullhorn does not have a native per-job knock-out question model — the equivalent is a Bullhorn Custom Object attached to the JobOrder, or a set of custom fields on JobOrder. We create a Custom Object (up to 10 on Bullhorn ATS) capturing each knock-out question and its type (boolean pass/fail, multi-select), then attach answer instances as Custom Object records per JobSubmission. This preserves the per-job answer context that would otherwise collapse if mapped to a static custom field on Candidate.

iRecruit

Custom Screening Question (per job)

maps to

Bullhorn ATS & CRM

Custom fields on JobSubmission

1:1
Fully supported

iRecruit custom screening questions are defined at the job level and capture free-text, numeric, or multiple-choice answers from applicants. These migrate as custom fields on Bullhorn JobSubmission so each candidate's answers attach to the specific application record rather than the candidate profile. Bullhorn ATS Growth limits custom fields per entity — we audit the field count during scoping and use Bullhorn's custom field limit structure (up to 20 of any combination of checkboxes, drop-downs, radio, pickers, and text types per entity) as the constraint.

iRecruit

Communication Template

maps to

Bullhorn ATS & CRM

Note (as template text)

1:1
Fully supported

iRecruit communication templates store mass personalised email body text and subject lines tied to specific candidate stages. Template text migrates as Note records attached to a designated Bullhorn User or a Bullhorn custom object created for template storage. Active sending queues and scheduled send-time triggers do not migrate — these are workflow-level features that require rebuild in Bullhorn's automation module. The template body text and subject lines are preserved for the admin to reconfigure in Bullhorn's email template system.

iRecruit

WOTC Tax Credit Record

maps to

Bullhorn ATS & CRM

Custom fields on Candidate

1:1
Fully supported

WOTC qualification category, qualifying date, and credit amount range per candidate migrate as custom fields on the Bullhorn Candidate record. Bullhorn has no native WOTC object. We preserve the full WOTC field set (category, qualifying date, credit range, status) so the customer's accounting records are complete. Re-enrollment with the destination payroll provider is a manual post-migration step — the filing window is typically 28 days from hire date, and failure to re-submit forfeits the credit.

iRecruit

EEO / Affirmative Action Data

maps to

Bullhorn ATS & CRM

Custom fields on Candidate

1:1
Fully supported

iRecruit EEO demographic fields (race/ethnicity, gender, veteran status, disability status) and hiring outcome flags migrate as custom fields on the Bullhorn Candidate record. Bullhorn ATS does not have a native affirmative action reporting module at every tier — EEO reporting on Bullhorn is available through Bullhorn Recruitment Cloud or via third-party compliance tools. We preserve the underlying demographic data so it can feed a reporting tool of the customer's choosing. The generated EEO reports themselves do not migrate as formatted reports.

iRecruit

Custom Export File / Sage HRMS / MyPayrollHR Schema

maps to

Bullhorn ATS & CRM

Custom fields and custom objects on relevant entities

1:1
Fully supported

Where iRecruit has been configured with a custom export file pushing to Sage HRMS or MyPayrollHR, we migrate the export field schema as Bullhorn custom fields and custom objects. The mapping is driven by the customer's existing iRecruit export definition — we work from the export file structure to identify which fields are derived from which source object and replicate that relationship in Bullhorn's schema. Customers on other HRIS platforms will need to re-establish their export pipeline using Bullhorn's API or a Bullhorn marketplace integration post-migration.

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.

iRecruit logo

iRecruit gotchas

High

No documented public API for programmatic migration

High

Active iConnect onboarding sessions are not transferable

Medium

Knock-out questions and custom job questions vary per requisition

Medium

WOTC qualification records require HRIS re-enrollment

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

  • iRecruit has no public API — export scope must be built from saved reports

    iRecruit does not publish API documentation or a developer portal. All data export relies on the built-in Exporter tool and the custom export file format for Sage HRMS and MyPayrollHR. We cannot make direct API calls to pull records in bulk. We work from the customer's existing saved report definitions in iRecruit's Exporter to determine which fields and record sets to extract. If the customer has no saved reports, we build the export scope collaboratively with their iRecruit admin during discovery, which adds one to two days to the discovery phase. The export runs as a scheduled or on-demand download from iRecruit, and we transform the resulting CSV or file export into the Bullhorn REST and Bulk API ingestion format.

  • Active iConnect onboarding sessions are not transferable as live workflows

    iConnect onboarding records include active e-signature sessions, in-progress I-9 forms, and benefits enrollment workflows tied to a specific candidate. These sessions are authenticated against iRecruit's infrastructure and cannot be migrated as live sessions. We preserve the onboarding checklist state, completed documents, and all form field data as custom fields on the Bullhorn Candidate record so Bullhorn Able can restart from the correct stage. The customer must re-send onboarding invite emails from Bullhorn Able on day one of go-live for any candidate with an active onboarding record.

  • Per-job knock-out questions create duplicate answer sets per candidate

    iRecruit knock-out and custom screening questions are defined per job, not globally. A candidate who applied to three different jobs may have three different answer sets for a field with the same name (e.g., 'Years of experience'). Bullhorn does not natively store per-application answer sets on a custom field on the Candidate record — those answers would be overwritten on each application. We resolve this by mapping knock-out and custom screening answers to Bullhorn JobSubmission custom fields, creating a Custom Object for knock-out questions to preserve the per-job context, and asking the customer to confirm which job context takes priority for any reporting or screening logic that depends on a single answer.

  • Bullhorn custom fields and custom objects have tier-specific limits

    Bullhorn ATS Growth has no custom objects; Bullhorn ATS has 2 custom objects with 55 fields each; Bullhorn Front Office Growth and Enterprise have 10 custom objects with 55 fields each. Bullhorn custom fields are also limited by edit type (up to 20 of any combination of checkboxes, drop-downs, pickers, and text types per entity). We audit the iRecruit custom field count during discovery to ensure the destination Bullhorn tier supports the equivalent schema. If the customer is on a Bullhorn ATS tier below Enterprise and the iRecruit data includes more custom fields than the tier supports, we prioritize migration of the highest-impact fields and document the remainder for post-migration manual entry or a tier upgrade.

  • WOTC re-enrollment must happen manually within the filing window

    WOTC tax credit qualification data migrates as custom fields on the Bullhorn Candidate record, preserving the category, qualifying date, and credit range for the customer's accounting records. However, the actual credit capture depends on the destination payroll or HRIS system's WOTC processing. The customer must re-submit qualifying hires to their payroll provider's WOTC programme post-migration. The filing window is typically 28 days from the hire date — if re-enrollment is missed, the credit is forfeited. We include a WOTC re-enrollment checklist as part of the migration handoff documentation.

Migration approach

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

  1. Discovery and export scope building

    We conduct a structured discovery session with the customer's iRecruit admin to identify all saved Exporter report definitions, active job postings, candidate record volume, requisition approval histories, onboarding record states, and any custom export file configurations. We review the custom knock-out and screening questions per job, the WOTC qualification record count, and the EEO demographic field configuration. If no saved Exporter reports exist, we build the export scope collaboratively with the admin, pulling the same dataset they rely on for reporting. This phase produces a written migration scope document specifying record volumes, object inventory, and the Bullhorn tier recommendation based on custom field and custom object count.

  2. Bullhorn schema design

    We design the Bullhorn destination schema based on the export scope. This includes provisioning custom fields on JobOrder (for job-level metadata), JobSubmission (for per-application answers), and Candidate (for WOTC, EEO, and onboarding state fields). For knock-out questions, we create Bullhorn Custom Objects attached to JobOrder and JobSubmission, using the Bullhorn Custom Object Setup Sheet to define field names, edit types, required flags, and picklist values. We configure the Bullhorn job distribution settings to replicate the social posting configuration from iRecruit. Schema is validated in a Bullhorn Sandbox before any production data moves.

  3. Export extraction and data transformation

    We extract data from iRecruit using the Exporter tool or custom export files based on the saved report definitions from Phase 1. The export files are ingested into our transformation pipeline, where we apply the mapping logic: per-job knock-out answers to JobSubmission custom fields, candidate applications to JobSubmission records with the Candidate as the parent, WOTC fields to Candidate custom fields, and EEO fields to Candidate custom fields. For multi-job candidates, we generate separate JobSubmission records per application. We run a data quality audit checking for missing required fields, invalid formats, and orphaned records (candidates with no associated job submission) before loading.

  4. Sandbox migration and reconciliation

    We run a full migration into a Bullhorn Sandbox using production-like record volumes. The customer's Bullhorn admin reviews a reconciliation report comparing record counts in iRecruit against what landed in Bullhorn, spot-checks 25-50 candidate and job records for field-level accuracy, and verifies that knock-out question answers are stored at the correct level (JobSubmission or Custom Object rather than Candidate). Any mapping corrections are made to the transformation pipeline and the Sandbox migration is re-run until reconciliation passes. The admin signs off the schema and mapping before production migration is scheduled.

  5. User provisioning and owner reconciliation

    Bullhorn User records must be provisioned before any OwnerId references can be assigned to JobOrder, Candidate, or JobSubmission records. We extract every distinct iRecruit user referenced on a record (recruiter, hiring manager, admin) and map them to Bullhorn User by email match. Any iRecruit user without a matching Bullhorn User goes to a provisioning queue for the customer's Bullhorn admin to create and activate. Bullhorn ATS Growth and Starter tiers have user count limits — we verify the provisioned user count against the tier during this phase.

  6. Production migration in dependency order

    Production migration runs in record-dependency order: Bullhorn Users (provisioned, not migrated), JobOrder records (jobs are the parent for submissions), Candidate records (candidates are the parent for submissions), JobSubmission records with resolved CandidateId and JobOrderId, Custom Object instances for knock-out questions with resolved JobOrderId, custom field values on Candidate for WOTC and EEO data, and communication template text as Note records. We use Bullhorn REST API for record-level inserts and the Bulk API for large batch imports, with exponential backoff on rate-limit responses. Each phase emits a row-count reconciliation report before the next phase begins.

  7. Cutover, validation, and inventory handoff

    We freeze iRecruit writes during the cutover window, run a delta migration of any records modified during the migration window, then enable Bullhorn as the system of record. We deliver the complete inventory of items that require manual rebuild in Bullhorn: active iConnect onboarding invite sessions (restart in Able), workflow and automation equivalents, job board distribution configuration, requisition approval routing rules, and the WOTC re-enrollment checklist with the 28-day filing window noted. We support a one-week hypercare window where we resolve any record-level issues raised by the recruiting team. Rebuild of Bullhorn automations, onboarding templates, and approval processes is outside standard migration scope.

Platform deep dives

Context on both ends of the pair

iRecruit logo

iRecruit

Source

Strengths

  • Unlimited job postings and unlimited applicants on Enterprise at a fixed tier price.
  • Paperless onboarding via iConnect covers I-9, tax forms, and e-signatures in a single workflow.
  • Free job board auto-distribution to Indeed, SimplyHired, Monster, and Jobs.com on Enterprise.
  • Built-in Exporter lets admins query any field in the system for custom reporting.
  • WOTC tax credit integration is native, capturing $2,400–$9,600 per qualifying new hire.

Weaknesses

  • No publicly documented API — programmatic integrations require reverse-engineering the export file format.
  • Pricing is opaque and requires a sales contact; no self-service purchase path.
  • UX has not kept pace with modern ATS design, particularly for mobile candidate experience.
  • Limited HRIS integration options — only Sage HRMS, MyPayrollHR, and a generic custom export.
  • Linear requisition approval workflow lacks parallel or conditional routing for complex organisations.
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 iRecruit and Bullhorn ATS & CRM.

B

Overall complexity

Standard migration

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

  • Object compatibility

    A

    All 7 core objects map 1:1 between iRecruit 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

    iRecruit: Not publicly documented.

  • Data volume sensitivity

    B

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

Estimator

Estimate your iRecruit 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 iRecruit to Bullhorn ATS & CRM data migrations

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

Can't find your answer?

Walk through your iRecruit 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 four and six weeks for accounts with up to 10,000 candidate records and well-documented iRecruit Exporter reports. Bullhorn states that small staffing agencies can go live in as little as two weeks for standard implementations, but an iRecruit migration adds time for the export-scope building phase and per-job custom field mapping. Migrations with complex knock-out question structures, large WOTC qualification histories, active iConnect onboarding record sets, or multi-location requisition workflows move to eight to twelve weeks.

Adjacent paths

Related migrations to explore

Ready when you are

Move from iRecruit.
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