HRMS migration

Migrate from Bullhorn Connexys ATS to BambooHR

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

Bullhorn Connexys ATS logo

Bullhorn Connexys ATS

Source

BambooHR

Destination

BambooHR logo

Compatibility

82%

9 of 11

objects map 1:1 between Bullhorn Connexys ATS and BambooHR.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Bullhorn Connexys ATS to BambooHR is a shift from a recruitment-agency ATS/CRM hybrid to a core HRIS with embedded applicant tracking. Bullhorn Connexys centres on Candidates, JobOrders, Accounts, and Placements with a Salesforce-backed data model and configurable pipelines; BambooHR centres on Employees, Applicants, and standard HR fields (PTO, benefits, payroll) with a lightweight ATS layer. The migration requires a careful split: recruiting-active candidates who represent future hires map to BambooHR Applicants, while employee records map to BambooHR Employee files. Placement records (hires made) map as completed employee records with start date and compensation preserved. Bullhorn Custom Objects, Job Reporting stage history, and Bullhorn-specific pipeline stages do not have direct BambooHR equivalents; we document these as configuration items for the customer to rebuild post-migration. We do not migrate Bullhorn Workflows, Sequences, or automation rules; we deliver a written inventory of these for the customer's admin to rebuild in BambooHR or a connected workflow tool.

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

Bullhorn Connexys ATS logo

Bullhorn Connexys ATS

What's pushing teams away

  • The platform lacks native support for temporary or shift-based recruitment workflows, forcing agencies in the temporary staffing segment to build custom workarounds or accept fragmented processes.
  • Value-for-money scores are consistently below average in user reviews, with agencies citing opaque pricing, large annual contracts, and surprise renewal increases of around 20% as key pain points.
  • Steep onboarding complexity and a steep learning curve for new users lead to extended implementation timelines and require significant internal training investment before teams reach productivity.
  • Email deliverability issues have been reported, with candidate communications occasionally landing in spam folders, which disrupts communication workflows critical to recruitment pipelines.
  • Support quality varies by contract tier, and agencies on lower plans report slower response times and limited access to advanced troubleshooting resources.

Choosing

BambooHR logo

BambooHR

What's pulling them in

  • Lowest friction entry point for SMBs moving off spreadsheets — intuitive interface means most teams are functional within days, not weeks.
  • Consolidation value: BambooHR merges ATS, onboarding, HR records, time-off, and payroll into a single pane of glass that employees never need to leave.
  • Volume discounts applied automatically by headcount, so pricing scales predictably as the company grows without renewal negotiations.
  • BambooHR reports most customers go live in four to six weeks, making it a realistic commitment for under-resourced HR teams.
  • Award-winning Support Heroes cited frequently in reviews — responsive human support after implementation is a differentiator.

Object mapping

How Bullhorn Connexys ATS objects map to BambooHR

Each row shows how a Bullhorn Connexys ATS object lands in BambooHR, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Bullhorn Connexys ATS

Candidate

maps to

BambooHR

Applicant or Employee (split required)

1:many
Fully supported

Bullhorn Candidate records split at migration time based on status. Candidates with no associated Placement and an active Application status map to BambooHR Applicant records via the BambooHR ATS Hiring API. Candidates with an associated Placement record (a hire outcome) map to BambooHR Employee records with the Placement start date, salary, and status preserved as the Employee start date and employment status. We flag any Candidate record with GDPR consent flags for the customer's admin to review before import, since BambooHR handles consent tracking differently from Bullhorn's native GDPR consent management.

Bullhorn Connexys ATS

Account (Client Company)

maps to

BambooHR

Company

1:1
Fully supported

Bullhorn Account records representing client companies map to BambooHR Company records, which store the client's name, industry, and address. Bullhorn's billing and company-size fields map to custom fields in BambooHR. Account is created before any linked Contact or Placement import so that the relationship is satisfied at insert time. Multi-office Bullhorn Accounts (where one client has multiple offices) require a decision during scoping: flatten to one Company in BambooHR or use BambooHR's Locations feature to distinguish offices.

Bullhorn Connexys ATS

Contact

maps to

BambooHR

Employee (contact fields) or Applicant (contact fields)

1:1
Fully supported

Bullhorn Contact records representing hiring managers and client-side contacts map to Employee records in BambooHR if they are internal employees of the company, or to Applicant contact fields if they are external contacts being tracked for reference. We preserve the Contact's email, phone, title, and any custom fields and map them to the corresponding BambooHR standard or custom fields. Account-Contact associations are preserved via the Company relationship in BambooHR.

Bullhorn Connexys ATS

JobOrder (Job)

maps to

BambooHR

Job Opening

1:1
Fully supported

Bullhorn JobOrder records map to BambooHR Job Openings, which represent active and historical job postings. The JobOrder title, description, requirements, and salary range migrate as Job Opening fields. Bullhorn's job status (Open, Filled, Cancelled) maps directly to BambooHR Job Opening status. We map custom job fields as BambooHR custom fields on the Job Opening object. Any Bullhorn job fields that have no BambooHR equivalent are flagged as configuration items for the customer's admin to address post-migration.

Bullhorn Connexys ATS

Placement

maps to

BambooHR

Employee (completed hire)

1:1
Fully supported

Bullhorn Placement records, representing confirmed hires that link Candidate to JobOrder with start date, salary, and placement status, map to BambooHR Employee records. The Placement start date becomes the Employee hire date. The placement fee (if tracked) migrates as a custom field. Placement status (Active, Extended, Terminated, Declined) requires a scoping decision: Active and Extended map to active Employee records; Terminated and Declined require a decision on whether to import as terminated Employee records or to exclude from the active migration scope.

Bullhorn Connexys ATS

Pipeline Stages (Job Reporting)

maps to

BambooHR

Applicant Stage

1:1
Fully supported

Bullhorn's Job Reporting junction object tracks each Candidate's movement through pipeline stages with timestamps and associated User. BambooHR's ATS models applicant stages as a configurable pipeline (Applied, Phone Screen, Interview, Offer, Hired, Rejected). Bullhorn stage history (which tracks every transition through Application, Submittal, Interview, Offer, Placement) does not have a direct BambooHR equivalent. We migrate the most recent stage and the date of that transition as an Applicant custom field; full stage history is documented as a manual-rebuild item. Incomplete or inaccurate Job Reporting records in Bullhorn are flagged during discovery for the customer's admin to address before migration.

Bullhorn Connexys ATS

User (Owner/Recruiter)

maps to

BambooHR

Employee (with hiring role)

1:1
Fully supported

Bullhorn User records representing recruiters, administrators, and managers map to BambooHR Employee records with the BambooHR user role set to reflect the Bullhorn access level. Owner assignment on Candidate, JobOrder, and Placement records links to the corresponding BambooHR Employee via the hireUserId field on Job Openings and Applicants. We resolve owners by email match and flag any Bullhorn User without a matching BambooHR Employee for the customer's admin to provision before record import.

Bullhorn Connexys ATS

Custom Object

maps to

BambooHR

Custom Fields (configuration required)

lossy
Fully supported

Bullhorn Custom Objects (extending Candidate, Contact, Account, Job, and Placement) with up to 55 fields each do not have a standalone equivalent in BambooHR. We migrate each Custom Object as a set of BambooHR custom fields on the corresponding standard object (Employee, Applicant, Company, Job Opening). Limits vary by Bullhorn edition: 2 Custom Objects on Bullhorn ATS, 10 on Front Office Growth/Enterprise. We audit the field types during discovery and map text, number, date, and picklist fields to their BambooHR equivalents; Bullhorn-specific types (Picker:Candidate, Picker:Client) require manual mapping decisions during scoping.

Bullhorn Connexys ATS

Attachment / Resume

maps to

BambooHR

Document

1:1
Fully supported

Bullhorn resume files and attachments export via the REST API. We chunk large attachment batches to stay within Bullhorn's 100,000 API call monthly ceiling and 50 concurrent session cap. Resume files migrate to BambooHR Documents attached to the corresponding Applicant (for candidate resumes) or Employee (for onboarding documents) record. Parsed resume data from Bullhorn's resume parser migrates as standard and custom fields on the Applicant record rather than as raw file attachments alone.

Bullhorn Connexys ATS

Tax Info and Compliance Data

maps to

BambooHR

Employee (custom fields)

1:1
Mapping required

Bullhorn Candidate Tax Info captures federal filing status and exemptions that may be relevant for placed employees. GDPR consent flags on Candidate records require special handling: we map consent status to BambooHR Employee custom fields for GDPR-relevant records and flag any consent records that need explicit re-collection under the customer's data governance policy post-migration. Regional compliance fields vary by Bullhorn instance configuration and are mapped individually during discovery.

Bullhorn Connexys ATS

Activity / Notes

maps to

BambooHR

Note or Comment

1:1
Fully supported

Bullhorn activity feeds and notes on Candidate, Contact, JobOrder, and Placement records export via API with timestamps and note body text. We map note content to BambooHR Notes on the corresponding Applicant or Employee record. Activity type (email, call, meeting, task) does not have a structured equivalent in BambooHR; we store the activity type as a Note tag or custom field. Bullhorn's activity timeline ordering is preserved by sorting on the original timestamp during import.

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.

Bullhorn Connexys ATS logo

Bullhorn Connexys ATS gotchas

High

API rate limits cap bulk migration throughput

Medium

Connexys edition tier governs Custom Object limits

Medium

Job Reporting stage history can be incomplete

Low

Bullhorn does not publish pricing publicly

BambooHR logo

BambooHR gotchas

High

Undocumented API rate limits can trigger 503 errors

High

Per-employee pricing model requires active record count verification

Medium

API credentials must be sent on every request to avoid extra round trips

Medium

Custom field schema varies per account and requires manual inventory

Low

Document and attachment exports are not covered by standard report exports

Pair-specific challenges

  • Bullhorn API rate limits cap export throughput

    Bullhorn enforces 100,000 API calls per month per org and 50 concurrent API sessions. For agencies with large candidate databases, exports must be chunked across multiple months or run during off-peak periods to avoid hitting the ceiling. We schedule export jobs to stay within these limits and notify the customer when throttling requires extending the timeline. BambooHR's API does not impose comparable monthly ceiling restrictions, so the destination-side import is not rate-limited at equivalent scale.

  • Bullhorn Custom Objects have no BambooHR standalone equivalent

    Bullhorn Custom Objects extending Candidate, Contact, Account, Job, and Placement (up to 55 fields each, 2 on Bullhorn ATS tier, 10 on Front Office Growth/Enterprise) do not map to a standalone object in BambooHR. We map each Custom Object as a collection of custom fields on the corresponding BambooHR standard object (Employee, Applicant, Company, Job Opening). Bullhorn-specific field types such as Picker:Candidate, Picker:Client, and Picker:Job require manual mapping decisions during discovery, and some may require the customer's admin to redesign the data capture in BambooHR's custom field editor.

  • Job Reporting stage history is incomplete in many Bullhorn instances

    The Bullhorn Job Reporting junction object tracks each Candidate's movement through pipeline stages with timestamps and the associated User. Incomplete or inaccurate Job Reporting records are common in production Bullhorn instances and can cause downstream issues when Candidates are processed post-migration. We audit Job Reporting completeness during the discovery phase, reconstruct missing stage transitions where source data allows, and flag any records with gaps to the customer's admin before migration. Full stage history cannot be fully preserved in BambooHR's ATS pipeline model and is documented as a manual-rebuild item.

  • Placement status mapping requires a scoping decision before migration

    Bullhorn Placement records carry a status field (Active, Extended, Terminated, Declined) that does not map directly to BambooHR's Employee record model. Active and Extended placements map to active BambooHR Employee records; Terminated and Declined placements require a decision during scoping: import as terminated Employee records with a termination date, or exclude from the active migration scope if the customer prefers to keep historical placement data in a reporting archive. We cannot default to one approach because the customer's HR reporting and compliance requirements govern which decision is appropriate.

  • BambooHR's ATS lacks Bullhorn's advanced pipeline automation features

    BambooHR's applicant tracking includes configurable stages and automated candidate communications, but it does not offer Bullhorn's property-triggered workflow automation with branching logic and GDPR consent management built into the pipeline. Any Bullhorn Workflows governing candidate communication, compliance checks, or stage-transition triggers do not migrate as automation code. We deliver a written inventory of every active Bullhorn Workflow with its trigger, conditions, and actions as a configuration document for the customer's admin to rebuild in BambooHR or a connected automation tool such as Zapier, Make, or a dedicated ATS workflow integration.

Migration approach

Six steps for a successful Bullhorn Connexys ATS to BambooHR data migration

  1. Discovery and Bullhorn edition audit

    We audit the source Bullhorn Connexys ATS instance across edition tier (Bullhorn ATS, Corporate, or Front Office Growth/Enterprise), API access credentials, Candidate and Placement volumes, active JobOrder count, Custom Object definitions and field counts, Job Reporting completeness, and Bullhorn Workflow inventory. We also establish whether the migration scope includes active recruiting pipelines (Candidates with no Placement) or historical placement records only, or both. The discovery output is a written migration scope document and a Bullhorn-to-BambooHR field mapping matrix.

  2. Candidate-to-Applicant and Placement-to-Employee split design

    We design the split logic for Bullhorn Candidate records: active candidates without a Placement become BambooHR Applicants; candidates with a Placement become BambooHR Employee records. We define the Placement status handling (Active, Extended, Terminated, Declined) and confirm with the customer's HR lead before migration runs. We design the BambooHR custom field schema to accommodate Bullhorn Custom Object data and flag any field types without a direct BambooHR equivalent for manual resolution during scoping.

  3. BambooHR sandbox setup and field mapping validation

    We set up a BambooHR test environment and deploy the custom field schema. We validate the field mapping matrix by running a pilot migration of a representative subset (50-100 records) of Bullhorn Candidates and Placements. The customer's HR lead reviews the imported records against the source system, confirms the Applicant versus Employee split logic, and signs off before production migration begins. Any mapping corrections happen here, not in production.

  4. Owner reconciliation and user provisioning

    We extract every distinct Bullhorn User referenced on Candidate, Placement, and JobOrder records and match by email against the BambooHR destination account's Employee table. Any Bullhorn User without a matching BambooHR Employee goes to a reconciliation queue. The customer's admin provisions any missing BambooHR users (with appropriate role assignments) before record import proceeds. Owner assignments on Bullhorn records are stored as a custom field on the corresponding BambooHR record during migration.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Companies (from Bullhorn Accounts), Job Openings (from Bullhorn JobOrders), Employees (from Bullhorn Placements), Applicants (from Bullhorn Candidates without Placements), Documents and resumes, Notes and activity history, and custom field data last. Bullhorn API rate-limit pacing applies throughout the export phase; we chunk large record sets and run exports during off-peak periods to stay within the 100,000-call monthly ceiling. Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and Workflow rebuild handoff

    We freeze Bullhorn writes during cutover, run a final delta migration of any records modified during the migration window, then enable BambooHR as the system of record for HR data. We deliver the Bullhorn Workflow and automation inventory document to the customer's admin team. We support a one-week hypercare window where we resolve any data reconciliation issues raised by the customer's HR team. We do not rebuild Bullhorn Workflows as BambooHR automations inside the migration scope; that work is a separate engagement.

Platform deep dives

Context on both ends of the pair

Bullhorn Connexys ATS logo

Bullhorn Connexys ATS

Source

Strengths

  • Runs on the Salesforce platform, leveraging global cloud infrastructure and deep integration ecosystem.
  • Offers advanced automation for candidate communication, compliance workflows, and GDPR consent management.
  • Supports up to 10 Custom Objects with 55 fields each on enterprise tiers, enabling complex vertical-specific data capture.
  • Includes resume parsing, career portal, mass email/SMS, and LinkedIn integration out of the box.
  • Centralises candidate, client, job, and placement data in a single searchable database with configurable pipelines.

Weaknesses

  • Lacks native support for temporary or shift-based staffing workflows, limiting appeal for agencies in that segment.
  • Pricing is opaque, requires custom quotes, and reported renewal increases of ~20% create budget uncertainty.
  • API rate limits of 100,000 calls per month and 50 concurrent sessions restrict bulk migration throughput.
  • Steep learning curve and implementation complexity demand significant internal training investment.
  • User-reported email deliverability issues can disrupt candidate communication workflows.
BambooHR logo

BambooHR

Destination

Strengths

  • Single platform consolidating ATS, onboarding, HR records, payroll, and time-off reduces system sprawl for SMBs.
  • Fast implementation — BambooHR reports four to six weeks from kickoff to go-live for most customers.
  • Per-employee pricing with automatic volume discounts makes cost predictable as headcount grows.
  • Strong customer support reputation (Support Heroes) cited consistently across G2, Capterra, and direct testimonials.
  • Well-documented API with UTF-8 encoding, clear field types, and HTTPS-only access.

Weaknesses

  • Mobile application is significantly limited compared to the desktop experience, frustrating remote and field workers.
  • Companies above 150–200 employees frequently outgrow the platform's feature depth and customization surface.
  • Limited advanced reporting and analytics compared to enterprise HR platforms — custom report building is the ceiling.
  • PTO and profile customization are pain points — non-standard accrual policies and complex org structures require workarounds.
  • Document management and attachment handling lack the granularity of dedicated document-centric HR systems.

Complexity grading

How hard is this migration?

Standard HRMS migration. All 7 core objects map 1:1 between Bullhorn Connexys ATS and BambooHR.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Bullhorn Connexys ATS and BambooHR.

  • Object compatibility

    A

    All 7 core objects map 1:1 between Bullhorn Connexys ATS and BambooHR.

  • 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

    Bullhorn Connexys ATS: 100,000 API calls per month per org; 50 concurrent sessions maximum.

  • Data volume sensitivity

    A

    Bullhorn Connexys ATS exposes a bulk API — large-volume migrations stream efficiently.

Estimator

Estimate your Bullhorn Connexys ATS to BambooHR 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 Bullhorn Connexys ATS to BambooHR data migrations

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

Can't find your answer?

Walk through your Bullhorn Connexys ATS to BambooHR migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Migrations under 5,000 Candidate records, 1,000 Placements, and no Bullhorn Custom Objects land between $4,000 and $6,500 and complete in three to five weeks. Migrations with multiple Bullhorn Custom Objects (each with up to 55 fields), large Placement histories, incomplete Job Reporting records, or requirements for sandbox validation before production migration move to $8,500-$12,000 and eight to twelve weeks because of schema reconciliation, custom field type mapping, and Bullhorn API rate-limit pacing across the export phase.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Bullhorn Connexys ATS.
Land in BambooHR, 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