HRMS migration

Migrate from HROne to Bullhorn ATS & CRM

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

HROne logo

HROne

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

50%

6 of 12

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

Complexity

BStandard

Timeline

4-8 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from HROne to Bullhorn is a cross-category migration from an HRMS to a recruitment ATS and CRM. HROne stores employees, compensation histories, time-and-attendance logs, and leave balances. Bullhorn stores candidates, contacts, job orders, and placements. There is no 1:1 object match, so every record type from HROne requires an explicit mapping decision during discovery. Employees who are existing placed candidates or prospective hires map to Bullhorn Candidate or Contact; those who are internal staff only do not map to Bullhorn at all and should remain in HROne or another HRMS post-migration. We handle the per-record extraction from HROne's API, the timezone normalization of attendance data, and the Bullhorn bulk import process. Workflows, payroll automations, leave approval rules, and compliance configurations do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Bullhorn or a companion HR system.

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

HROne logo

HROne

What's pushing teams away

  • New users report a steep learning curve and find certain modules overwhelming without guided onboarding, leading some to seek simpler alternatives during the evaluation period.
  • Reports are functional but exporting or customizing them requires more steps than expected, frustrating power users who rely on HR analytics for decision-making.
  • Performance slows during payroll processing windows, which is precisely when reliability matters most, causing friction for HR teams under deadline pressure.
  • The login popup asking about mood every session is cited as a recurring annoyance that some users find unprofessional and disruptive to daily workflows.

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

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

HROne

Employee

maps to

Bullhorn ATS & CRM

Candidate or Contact (split required)

1:many
Fully supported

HROne Employee records require an explicit type decision during scoping. Employees who represent placed candidates or prospective talent map to Bullhorn Candidate. Employees who represent existing clients or hiring managers map to Bullhorn Contact attached to a ClientCorporation. Internal staff with no candidate or client relationship do not map into Bullhorn; we flag these for the customer to retain in HROne or another HRMS post-migration. We use email address as the dedupe key during Bullhorn import and preserve the original HROne employee ID in a custom field hrone_employee_id__c for audit and cross-reference.

HROne

Department and Cost Center

maps to

Bullhorn ATS & CRM

ClientCorporation (for client-side) or Department Custom Object

lossy
Fully supported

HROne's org structure (departments, cost centers, reporting hierarchy) maps to Bullhorn ClientCorporation for external-facing organizational records. For internal department tracking within Bullhorn, we use Bullhorn's Custom Objects to preserve department assignments if the customer requires them for reporting across placements.

HROne

Compensation Record

maps to

Bullhorn ATS & CRM

Custom Object (on Bullhorn Candidate or Placement)

1:1
Fully supported

HROne salary structures, pay components, and compensation histories do not have a native Bullhorn standard object equivalent. We map these to a Bullhorn Custom Object (created per Bullhorn's custom object setup process) attached to the Candidate record. Fields include pay frequency, currency, base salary, and relevant allowances. Compensation on active Placements can be stored on the Placement record directly if the Bullhorn edition supports the required fields.

HROne

Time and Attendance Log

maps to

Bullhorn ATS & CRM

Custom Object or Placement Shift tracking

lossy
Fully supported

Clock-in/out logs, shift assignments, and overtime records in HROne store timestamps in the local timezone of the office or biometric device. We normalize all timestamps to UTC during transformation before mapping to Bullhorn. Bullhorn has no native attendance tracking module; attendance data maps to a Bullhorn Custom Object attached to the Candidate or Placement record, or is flagged for handoff to Bullhorn Time & Expense if that companion product is included in the customer's Bullhorn license.

HROne

Leave Balance

maps to

Bullhorn ATS & CRM

Custom Object (on Candidate or separate HRMS required)

lossy
Fully supported

Leave entitlements, accrual policies, and current balances from HROne do not map into Bullhorn's ATS schema. Bullhorn is not designed to manage leave tracking. We map leave balance data to a Bullhorn Custom Object if the customer needs it visible on the candidate or placement record, but we recommend a separate HRMS or Bullhorn Time & Expense for leave management post-migration. Carry-forward rules and leave type configurations are preserved in the mapping document for the customer's HR admin.

HROne

Document (Offer Letter, Contract, ID Proof)

maps to

Bullhorn ATS & CRM

ContentDocument linked to Candidate or Contact

1:1
Fully supported

HROne stores employee documents as file attachments or DocumentTemplate records. We extract file binaries and their metadata (document type, language, upload date) from HROne and import them into Bullhorn as ContentDocument records linked via ContentDocumentLink to the corresponding Candidate or Contact. We preserve the original document name and add a custom field for document type classification.

HROne

Job Opening (HROne Enterprise recruitment module)

maps to

Bullhorn ATS & CRM

JobOrder

1:1
Fully supported

HROne's recruitment module (available on Enterprise tier) stores job postings, candidate pipelines, and applicant data. Job title, department, location, and employment type from HROne map directly to Bullhorn JobOrder. Applicant status values from HROne map to Bullhorn JobSubmission status values with a mapping table provided during discovery. Interview scores and recruiter-specific custom fields may require Custom Objects in Bullhorn if the fields do not map to standard Candidate properties.

HROne

Applicant and Candidate Pipeline

maps to

Bullhorn ATS & CRM

Candidate + JobSubmission

1:1
Fully supported

HROne applicants on a job opening map to Bullhorn Candidate records with a JobSubmission linking each Candidate to the corresponding JobOrder. We map the HROne applicant status (applied, screening, interview, offer, hired, rejected) to the equivalent Bullhorn status values using a translation table. If HROne stores interview scorecards, these map to Bullhorn Custom Objects on the Candidate or JobSubmission.

HROne

Performance Appraisal

maps to

Bullhorn ATS & CRM

Custom Object or Notes on Candidate

lossy
Fully supported

Goals, appraisal cycles, and review ratings from HROne's performance module do not have a standard Bullhorn equivalent. We map appraisal data to a Bullhorn Custom Object attached to the Candidate record, with fields for appraisal date, rating, reviewer, and comments. If the customer does not license Bullhorn custom objects, we store appraisal summaries as Note records linked to the Candidate.

HROne

Organization Hierarchy

maps to

Bullhorn ATS & CRM

ClientCorporation or Department Custom Object

1:1
Fully supported

The HROne org chart (departments, manager relationships, cost centers) maps to Bullhorn ClientCorporation records for external organizations and to Bullhorn Custom Objects or a structured field mapping for internal reporting. Manager relationships from HROne are preserved as Bullhorn User-to-Candidate or User-to-Contact relationships for placement supervisory tracking.

HROne

Custom Fields on Employee

maps to

Bullhorn ATS & CRM

Custom Object fields

lossy
Fully supported

HROne organizations frequently add instance-specific custom fields to the Employee object. These are not consistently exposed via the HROne public API and may only appear in UI exports. We perform a manual custom-field discovery step: we compare the HROne API export against a UI-generated sample export and flag any discrepancy. Unmapped custom fields migrate to Bullhorn Custom Object fields, created per Bullhorn's schema-before-data approach. We validate field type compatibility (text, number, date, picklist) during mapping.

HROne

User Account

maps to

Bullhorn ATS & CRM

Bullhorn User (by email match)

1:1
Fully supported

HROne user accounts (including system accounts, shared logins, and inactive accounts retained for historical access) do not all map to Bullhorn users. We audit the HROne user list separately from the employee list and flag accounts that should not be replicated in Bullhorn to avoid inflating billable-seat counts. Active HROne users with recruitment responsibilities map to Bullhorn User records by email match. Any HROne user without a matching Bullhorn User is held in a reconciliation queue for the customer's admin to provision before candidate data import resumes.

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.

HROne logo

HROne gotchas

High

HROne's REST API has no documented bulk export endpoint

Medium

Timezone normalization required for attendance data

Medium

Per-user billing model can inflate headcount during migration planning

Medium

Custom fields are instance-specific and not always in the public API

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

  • Cross-category schema requires an explicit object-type decision per HROne record

    HROne and Bullhorn do not share a common object model. HROne stores employees as HR records tied to payroll and compliance; Bullhorn stores people as Candidates or Contacts tied to job pipelines and client accounts. There is no automatic mapping between the two. We require every HROne Employee record to be classified during discovery as Candidate, Contact, or no-migration (internal staff only). Migrations that skip this classification step produce Bullhorn records with misaligned object types, orphaned relationships, and unusable placement data.

  • HROne lacks a documented bulk export API endpoint

    HROne's public API at api.hr-on.com exposes individual-record endpoints but does not document a bulk query or paginated list endpoint for large datasets. For migrations with hundreds or thousands of employee records, we work around this by constructing filter-based API calls per object or, when API access is insufficient, extracting data from HROne's database backup exports provided by the customer during discovery. We verify record completeness against HROne's UI count before loading into Bullhorn. Bullhorn's bulk import process (Bullhorn Import, up to 15,000 records included in standard setup) accepts these extracts once formatted to the Bullhorn field schema.

  • Bullhorn Custom Objects must be set up before data migration begins

    Bullhorn requires Custom Objects to be requested and configured through Bullhorn Support or the Bullhorn Hub before any data can be written to them. Custom Objects are not self-service in Bullhorn; the customer must submit a setup sheet per object. We create the setup documentation during schema design and coordinate with the customer's Bullhorn admin to submit the request before migration begins. This adds two to five business days to the timeline that is not present in same-platform migrations. ATS Growth edition supports two Custom Objects; Growth and Enterprise support up to ten.

  • Attendance timestamps require timezone normalization before Bullhorn import

    Clock-in/out logs in HROne store timestamps in the local timezone of the employee's office or biometric device. Organizations with multi-state or multi-country workforces export attendance data with mixed timezones in a single extract. We detect mixed-timezone exports during data profiling, normalize all timestamps to UTC before transformation, and map them to a Bullhorn Custom Object field. Failure to normalize produces incorrect shift duration records and payroll discrepancies if the attendance data is used downstream by Bullhorn Time & Expense or a third-party payroll integration.

  • Payroll, leave approval workflows, and compliance configurations do not migrate

    HROne's payroll engine, statutory compliance configurations (PF, ESI, TDS, PT filings for India), and leave approval workflows are HROne-specific and have no equivalent in Bullhorn. Bullhorn is an ATS and CRM, not an HRMS or payroll system. We do not migrate payroll configurations, statutory filing rules, or leave approval workflows. We deliver a written inventory of every active HROne payroll rule and leave workflow for the customer's HR admin to evaluate for rebuild in HROne (if retaining it as an HR system) or a replacement payroll and compliance platform.

Migration approach

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

  1. Discovery and migration classification

    We audit the HROne instance across all modules in scope: Employee records, Compensation, Time and Attendance, Leave Balances, Documents, Recruitment module (if on Enterprise), Performance Appraisals, Organization Structure, and Custom Fields. We classify every HROne record type as Candidate, Contact, Custom Object, or no-migration. We also audit the HROne user list against the employee list to flag non-replicatable accounts before Bullhorn import. The discovery output is a written migration scope with object classification, record count estimates, and a Bullhorn edition recommendation (ATS Growth, Growth, or Enterprise based on custom object requirements).

  2. Bullhorn Custom Object setup coordination

    Bullhorn requires Custom Objects to be created via Bullhorn Support or the Bullhorn Hub before data import. We prepare the Custom Object Setup Spreadsheet (Bullhorn's official template) with all required fields, field types, and display labels based on the HROne custom fields and compensation structures identified during discovery. The customer's Bullhorn admin submits this to Bullhorn Support. We allow two to five business days for Bullhorn to provision the custom objects before beginning data migration. We validate that the provisioned objects match our specifications before proceeding.

  3. Schema mapping and transform design

    We design the Bullhorn field schema for every object in scope: Candidate fields, Contact fields, JobOrder fields, Custom Object field definitions, and ContentDocument metadata for documents. We build the HROne-to-Bullhorn field-level mapping document with transform rules: timezone normalization for attendance timestamps, pay frequency standardization for compensation records, leave type translation table for leave balances, and document type classification for HROne file attachments. Each mapping includes the Bullhorn field API name, data type, required/optional status, and any validation rule that applies on the Bullhorn side.

  4. Sandbox migration and reconciliation

    We run a full migration into Bullhorn's sandbox environment (using Bullhorn's test org or a development instance) with production-like record volumes. The customer's Bullhorn admin reconciles record counts against HROne source counts: Candidates in, Contacts in, JobOrders in, Custom Object records in, Documents linked. We spot-check twenty to fifty records against HROne source data for field-level accuracy. Any mapping corrections, custom object field issues, or timezone normalization errors surface here before production migration begins.

  5. Owner and User provisioning

    We extract every distinct HROne owner referenced on Employee, Compensation, Attendance, Leave, Recruitment, and Document records and match by email against the Bullhorn destination org's User table. Any HROne owner without a matching Bullhorn User is held in a reconciliation queue. The customer's Bullhorn admin provisions missing Bullhorn Users before record import resumes. Owner resolution is required before Candidate and Contact import because Bullhorn's User references are required on most standard records.

  6. Production migration in dependency order

    We run production migration in record-dependency order: ClientCorporations (if mapping org structure to external clients), Candidates (with the HROne-employee-type classification applied), Contacts, JobOrders, Custom Object records for Compensation and Attendance, Document imports via Bullhorn ContentDocument, Job Submissions linking Candidates to JobOrders, and Performance Appraisal data to Custom Objects. Each phase emits a row-count reconciliation report before the next phase begins. We use Bullhorn's standard import tooling and API where applicable, with batch chunking and retry logic for large record sets.

  7. Cutover, validation, and handoff documentation

    We freeze HROne write access during the cutover window, run a final delta migration of any records modified during the migration window, then confirm Bullhorn as the system of record for candidate and recruitment data. We deliver the Payroll and Leave Workflow Inventory document to the customer's HR admin for rebuild evaluation, along with the Custom Object schema documentation and field mapping spreadsheet. We provide a one-week post-go-live window for reconciliation support. We do not rebuild HROne payroll configurations, leave approval workflows, or statutory compliance rules inside the migration scope; those are separate engagements.

Platform deep dives

Context on both ends of the pair

HROne logo

HROne

Source

Strengths

  • All-in-one HRMS covering payroll, attendance, leave, recruitment, and performance from a single cloud platform.
  • Mobile-first architecture with a companion app that lets employees self-serve payslips, attendance, and leave requests.
  • Per-user pricing with no long-term contracts and implementation support included in standard tiers.
  • India labor law and compliance reporting built into the payroll module for statutory filings.
  • Responsive customer support with dedicated training during and after implementation.

Weaknesses

  • Steep onboarding curve for new users; guided support is required to avoid overwhelming first-time administrators.
  • Exporting and customizing reports is unintuitive and requires more steps than necessary.
  • System performance degrades noticeably during peak payroll processing periods.
  • Login experience includes a mood-check popup that users consistently describe as intrusive.
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. 1 of 7 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

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

  • Object compatibility

    B

    1 of 7 objects need a mapping; the rest are 1:1.

  • 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

    HROne: Powered by Azure API Management; specific quotas not publicly published — typical enterprise SaaS limits assumed.

  • Data volume sensitivity

    A

    HROne exposes a bulk API — large-volume migrations stream efficiently.

Estimator

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

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

Can't find your answer?

Walk through your HROne 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 eight weeks for accounts with fewer than 5,000 employee records and a clear candidate-versus-internal-employee classification. Migrations involving Bullhorn Custom Object setup coordination, large attendance histories requiring timezone normalization, HROne Enterprise recruitment module data, or multi-object schema complexity move to ten to sixteen weeks. Bullhorn's own standard onboarding (Bullhorn Launch) typically runs under two weeks for initial access; the migration timeline runs in parallel with or immediately following that onboarding phase.

Adjacent paths

Related migrations to explore

Ready when you are

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