HRMS migration

Migrate from Revolut People to Bullhorn ATS & CRM

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

Revolut People logo

Revolut People

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

92%

12 of 13

objects map 1:1 between Revolut People and Bullhorn ATS & CRM.

Complexity

BStandard

Timeline

2-4 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Revolut People to Bullhorn crosses a platform-type boundary: Revolut People is a skills-first HRMS with performance cycles, PTO tracking, and compensation analytics; Bullhorn is an ATS and CRM purpose-built for staffing agencies with no native performance management, PTO, or org-chart module. We audit every Revolut People module during discovery, flag objects that have no Bullhorn equivalent, and migrate what Bullhorn can hold. Candidate records (from Revolut People Employees), Companies, Jobs, and Placements transfer through Bullhorn's REST API with rate-limit handling at up to 1,500 requests per minute. Skills, compensation, and performance data migrate as custom fields on the Candidate and Placement objects. Bullhorn ATS Growth (Team Edition) excludes API access entirely, which we confirm during scoping before any extraction begins. Workflows, automations, PTO accruals, and engagement survey engines do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Bullhorn or a complementary 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

Revolut People logo

Revolut People

What's pushing teams away

  • Revolut People is not available for new US customers as of 2024 due to reported regulatory or compliance issues, forcing US-based teams to find alternative platforms.
  • The platform lacks depth in payroll processing and benefits administration compared to dedicated HR suites, with G2 reviewers noting these as areas where Revolut People lags behind competitors.
  • Advanced compensation analytics and equity management features are limited, with some reviewers noting that total compensation tracking feels bolted on rather than native to the platform.

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

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

Revolut People

Employee

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

Revolut People employee records map to Bullhorn Candidate. We extract name, email, phone, job title, department, employment status, start date, and manager reporting line. The Candidate record becomes the primary destination object. If the Bullhorn instance uses the Candidate-to-Contact split, we map Revolut People employees to Candidate (active or placed worker) and flag any contingent worker records for separate handling. Custom fields for employment type (full-time, part-time, contractor) and cost centre migrate to Bullhorn Candidate custom fields.

Revolut People

Org Structure

maps to

Bullhorn ATS & CRM

Corporate Structure (Division + User Role)

lossy
Mapping required

Revolut People's hierarchical org chart with departments, roles, and reporting lines has no direct Bullhorn equivalent. Bullhorn's Corporate Structure provides divisions and user roles for internal staffing operations, but it does not store a full org chart or role-to-skills mapping. We extract the hierarchy as a flat parent-child map, restore divisions in Bullhorn's corporate structure, and document the reporting-line tree for the customer's admin to reference during Bullhorn user provisioning.

Revolut People

Recruitment: Job Posting

maps to

Bullhorn ATS & CRM

JobOrder

1:1
Fully supported

Revolut People job postings map to Bullhorn JobOrder. Job title, description, location, employment type, salary range, and status migrate directly. The job pipeline stage names from Revolut People map to Bullhorn JobOrder status values (Open, On Hold, Closed, Cancelled). We preserve the original job ID for audit and cross-reference during reconciliation.

Revolut People

Recruitment: Applicant

maps to

Bullhorn ATS & CRM

Candidate and JobSubmission

1:1
Fully supported

Revolut People applicant records map to Bullhorn Candidate (person record) and JobSubmission (application record linking Candidate to JobOrder). Application status values from Revolut People map to Bullhorn SubmissionStatus (New, Active, Reviewed, Interviewing, Offered, Placed, Rejected). Interview scheduling notes and application notes migrate as Candidate notes. Where Revolut People stores candidate skills or competency scores against the application, we map these to Bullhorn Candidate custom fields.

Revolut People

Performance Cycle

maps to

Bullhorn ATS & CRM

Candidate Note or Custom Object

1:1
Fully supported

Revolut People performance cycles (date-bounded review periods with review records) have no native Bullhorn object. Bullhorn ATS does not include performance management. We migrate cycle metadata as a Bullhorn Note on the Candidate record with cycle name, start date, and end date, and we flag the performance cycle object in the written inventory for the customer to rebuild in Bullhorn or a complementary performance tool post-migration.

Revolut People

Performance Review

maps to

Bullhorn ATS & CRM

Candidate Custom Fields + Note

1:1
Fully supported

Revolut People review records with structured feedback, ratings, and reviewer comments migrate to Bullhorn Candidate custom fields (rating scores) and a Candidate Note (full review text and reviewer identity). PIP and probation records migrate as flagged notes with a custom status field to distinguish them from standard reviews. We cannot preserve review cycle relationships natively in Bullhorn; this context is documented in the written handoff.

Revolut People

Skills and Competency Framework

maps to

Bullhorn ATS & CRM

Candidate Custom Fields

1:1
Fully supported

Revolut People skills, proficiency levels, and custom competency frameworks vary per tenant and have no standard Bullhorn equivalent. We audit the full skill library during discovery, normalise skill names and proficiency scales, and map each skill to a Bullhorn Candidate custom field. Custom scorecards with non-standard rubrics are flattened to key-value pairs and stored in a structured note. Bullhorn's custom field limits per object are confirmed during scoping.

Revolut People

Goal and Roadmap

maps to

Bullhorn ATS & CRM

Task

1:1
Fully supported

Revolut People goal records with milestones, ownership, and progress percentages map to Bullhorn Task. Goal name, description, due date, and status transfer. Custom roadmap layouts do not have a Bullhorn equivalent; we store roadmap structure as a structured note on the Task. Goal hierarchies with parent-child relationships are flattened into separate Task records with a custom parent-goal reference field.

Revolut People

Engagement Survey

maps to

Bullhorn ATS & CRM

Candidate Note or Custom Object

1:1
Fully supported

Revolut People engagement survey questions and employee response data have no native Bullhorn object. Survey response scores for aggregate engagement metrics migrate to a Bullhorn custom object (if the Bullhorn edition supports custom objects) or as structured notes on the Candidate record. Individual question-and-answer pairs are stored as a serialised note. Survey metadata (survey name, date, participation rate) is documented separately.

Revolut People

PTO and Leave Balance

maps to

Bullhorn ATS & CRM

Separate HR System (flagged for rebuild)

1:1
Fully supported

Revolut People time, attendance, PTO, and sick leave data has no Bullhorn equivalent. Bullhorn ATS does not include a leave management or time-tracking module. We export current leave balances and leave type assignments from Revolut People as a structured CSV and hand it off to the customer for import into a dedicated HR system or for manual entry. Leave balance data is not written to Bullhorn as part of the standard migration scope.

Revolut People

Salary Structure and Compensation

maps to

Bullhorn ATS & CRM

Placement Custom Fields

1:1
Fully supported

Revolut People pay grades, position descriptions, and base salary data migrate as Bullhorn Placement custom fields (if Bullhorn CRM or Enterprise tier is in scope) or as Candidate custom fields. Equity vesting data from Revolut People's compensation insights dashboard is exported as a separate dataset and stored as structured notes on the Candidate record; vesting schedules and projection data do not export cleanly and are flagged in the handoff. Pay structure definitions (grade, level, band) map to Bullhorn Placement compensation fields.

Revolut People

User Role and Access

maps to

Bullhorn ATS & CRM

Bullhorn User Role and Permission Set

1:1
Fully supported

Revolut People role-based access controls assign permissions per user and differ from Bullhorn's permission model. We extract role assignments from Revolut People and map them to Bullhorn user roles (recruiter, sales, hiring manager, admin) and permission sets. Bullhorn's division-level access controls are configured during migration. Role mapping is validated with the customer's Bullhorn admin before user provisioning begins.

Revolut People

Document

maps to

Bullhorn ATS & CRM

Candidate Attachment + File Manifest

1:1
Fully supported

Revolut People employee documents (contracts, ID copies, offer letters) are not accessible via a documented public API and do not migrate. We generate a file manifest listing each document's original location, associated employee, and document type, and hand this to the customer's admin for manual re-upload to Bullhorn Candidate records 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.

Revolut People logo

Revolut People gotchas

High

No public HRMS API means no automated export pipeline

High

US customer suspension limits platform availability

Medium

Compensation equity data stored separately from payroll

Medium

Custom skills and scorecards vary per tenant

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

  • Revolut People has no documented public HRMS API

    Revolut People has no published HRMS API for employees, reviews, org structure, or recruitment data. The developer portal covers the Business banking API, not the People HRMS module. We work around this using admin-level CSV exports where available and screen-scraping workflows for structured records that lack export paths. Where exports are unavailable, we flag the object as requiring manual extraction before migration begins, which adds time to the discovery phase and can affect the timeline for data that requires manual pulling.

  • Bullhorn ATS Growth excludes API access entirely

    Bullhorn ATS Growth (Team Edition) does not include API access. All other Bullhorn editions include API access with documented rate limits of 100,000 calls per month, 1,500 requests per minute, and 50 concurrent sessions. We confirm the customer's Bullhorn edition during scoping before any extraction pipeline is designed. If the customer is on ATS Growth, the migration uses Bullhorn's included data import tooling rather than the API, which constrains batch size and eliminates programmatic reconciliation.

  • Custom skills and scorecards require per-tenant normalisation

    Revolut People allows fully custom skills, values scorecards, and competency frameworks per organisation with no enforced standard taxonomy. Bullhorn has no native skills management object. During migration scoping, we audit the full skill library, normalise skill names and proficiency scales across the tenant, and build a custom field map for Bullhorn Candidate records. This discovery work adds time to the scoping phase but prevents silent data loss where non-standard scorecard formats would otherwise be dropped during import.

  • Bullhorn workflows and automations require rebuild

    Bullhorn Workflows and Bullhorn Automation rules are not API-migratable and do not transfer between instances. Bullhorn's Automation builder uses trigger-action-step logic that differs from Revolut People's workflow model. We do not migrate automations as code. We deliver a written inventory of every active Revolut People workflow and Bullhorn Automation rule with its trigger, conditions, and actions, and the customer's Bullhorn admin rebuilds them in Bullhorn Automation post-migration. This handoff document is part of the standard migration deliverable.

  • Bullhorn has no native performance, PTO, or benefits module

    Revolut People performance cycles, reviews, PIP templates, goal roadmaps, PTO accruals, and benefits administration have no native Bullhorn equivalent because Bullhorn is an ATS and CRM, not a full HRMS. We migrate what Bullhorn can hold (candidate records, compensation as custom fields, review text as notes) and flag all other HRMS objects in the written handoff. Customers who rely on Revolut People for core HR beyond recruiting will need a complementary HR platform post-migration or a rebuild of those workflows in Bullhorn's custom object layer.

Migration approach

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

  1. Discovery and edition confirmation

    We audit the Revolut People tenant across all active modules (Performance, Recruitment, HR), record counts for employees, applicants, job postings, and review cycles, and the full skill library and custom scorecard taxonomy. We confirm the customer's intended Bullhorn edition (ATS Growth, Team, Corporate, or Enterprise) to determine API availability, custom field limits, and whether Placement custom fields are in scope. The discovery output is a written migration scope that lists every Revolut People module, the Bullhorn destination for each, and any objects flagged as requiring manual extraction or rebuild.

  2. Extraction strategy for no-API source

    Because Revolut People has no documented public HRMS API, we design a hybrid extraction approach: admin-level CSV exports for employee records, org structure, and recruitment data; structured data pulls from the compensation insights dashboard for salary and equity data; and a document manifest for employee files. Where exports are unavailable, we flag the object and agree on a manual extraction window with the customer's Revolut People admin before migration begins. Extraction scripts are validated against a sample of 50-100 records before full extraction runs.

  3. Bullhorn schema design and custom field provisioning

    We design the Bullhorn destination schema: custom fields on Candidate for skills, proficiency levels, compensation data, and performance review ratings; custom fields on Placement for salary structures; JobOrder configuration for job status mapping; and user role definitions mapped from Revolut People role assignments. If the Bullhorn edition supports custom objects (Corporate and above), we provision a custom object for engagement survey data. Schema is deployed to a Bullhorn sandbox first for validation before production migration begins.

  4. Sandbox migration and reconciliation

    We run a full migration into the Bullhorn sandbox using production-like data volumes. The customer's recruitment operations lead reconciles record counts (Candidates in, JobOrders in, Submissions in), spot-checks 25-50 random candidate records against the Revolut People source, and validates that skills, compensation, and review data landed in the correct custom fields. Any mapping corrections are applied before production migration begins. This step also confirms that Bullhorn ATS Growth is not in scope if API access is required.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Bullhorn Users (validated against Revolut People owner emails), Companies (from Revolut People company records), JobOrders (job postings), Candidates (employee and applicant records with custom fields populated), JobSubmissions (linking Candidates to JobOrders), Placement records with compensation custom fields, and engagement history (interview notes, communications). Bullhorn API calls use OAuth2 with BhRestToken, respect the 1,500 req/min rate limit, and implement exponential backoff on 429 responses. Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and workflow handoff

    We freeze Revolut People writes during cutover, run a final delta migration of any records modified during the window, then enable Bullhorn as the system of record. We deliver the automation and workflow inventory document, the custom scorecard normalisation map, the document file manifest, and the Bullhorn custom field schema to the customer's Bullhorn admin. We support a one-week hypercare window where we resolve any reconciliation issues raised by the recruitment team. We do not rebuild Revolut People workflows or Bullhorn Automation rules inside the migration scope; that is a separate engagement.

Platform deep dives

Context on both ends of the pair

Revolut People logo

Revolut People

Source

Strengths

  • Skills-based competency frameworks with pre-built and customisable proficiency scales for role-level skill definitions.
  • AI-assisted 1:1 meeting tools that generate agendas and track action items between manager and employee.
  • Modular pricing allows teams to start with Performance at £8/employee and add Recruitment or HR at £3–4 more per month.
  • Zero implementation fees stated upfront, reducing initial cost of adoption for new customers.
  • Organisational structure editor integrates permissions, reporting lines, and department hierarchy in one view.

Weaknesses

  • No public HRMS API documented; migration relies on screen scraping or partner export tools which may miss historical review data.
  • US market suspension since 2024 limits the platform's relevance for international teams with US entities.
  • Limited payroll depth compared to dedicated HR suites; compensation tracking lacks integration with payroll execution.
  • Benefits administration is view-only for employees rather than a full benefits-enrollment engine with carrier integrations.
  • Documentation for GDPR data portability requests is sparse, making right-to-erasure and data export compliance harder to automate.
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 Revolut People 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

    Revolut People: Not publicly documented..

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Revolut People 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 two and four weeks for accounts under 5,000 candidate records, 500 jobs, and no historical performance review data requiring custom field remapping. Migrations with larger candidate databases (over 20,000 records), multiple job pipelines, or custom scorecard normalisation work move to six to ten weeks because of the extraction-phase work for a no-API source and the custom field design needed in Bullhorn's schema. Bullhorn's own documentation states that small agencies are typically operational within weeks and mid-size agencies within two to six weeks.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Revolut People.
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