HRMS migration
Field-level mapping, validation, and rollback between Rival Recruit and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.
Rival Recruit
Source
Bullhorn ATS & CRM
Destination
Compatibility
8 of 12
objects map 1:1 between Rival Recruit and Bullhorn ATS & CRM.
Complexity
BStandard
Timeline
4-8 weeks
Overview
Moving from Rival Recruit to Bullhorn is a recruitment-agency data migration with a specific complexity: Rival Recruit was formerly SilkRoad Technology, and organizations with multi-year histories may have legacy data formats, workflow definitions, and API endpoint references that predate the rebrand. We audit for SilkRoad-era artifacts before generating the field map, and we handle the Rival Recruit onboarding API gap by performing live schema discovery against the customer's environment rather than relying on the 2020-vintage public Onboard Web Service Guide. We migrate Candidates (1:1), Positions to Jobs (1:1), Employees, Documents, Tags, and active Onboarding journeys. Workflow definitions, Interview Schedules, Career Site configurations, and Custom Fields are discovered, documented, and remapped; they do not migrate as live configurations. Bullhorn's REST API drives the import with rate-limit handling and batch chunking so active candidate pipelines remain accessible throughout the cutover.
Every standard and custom field arrives verified.
AI proposes the map; you confirm before any record moves.
Parent–child, lookups, and ownership stay linked.
Calls, emails, meetings — with original timestamps.
Documents, uploads, and inline notes move with the record.
Why teams make this switch
Leaving
What's pushing teams away
Choosing
What's pulling them in
Object mapping
Each row shows how a Rival Recruit object lands in Bullhorn ATS & CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Rival Recruit
Candidate
Bullhorn ATS & CRM
Candidate
1:1Rival Recruit candidate records map 1:1 to Bullhorn Candidate. The source candidate ID becomes a custom field rival_candidate_id__c for cross-reference. Contact info (name, email, phone, address), work history, education, source attribution, and current stage status transfer directly. Resume attachments extract as binary files and reattach to Bullhorn via the Document entity linked to the Candidate. Active pipeline stage maps to Bullhorn's Candidate status values, which we configure as a picklist matching the source stage names.
Rival Recruit
Position
Bullhorn ATS & CRM
Job
1:1Rival Recruit Positions map to Bullhorn Job (the JobOrder entity in Bullhorn's API). Title, department, location, hiring manager (mapped to Bullhorn Owner/User), and open/closed status transfer directly. The position approval workflow state is preserved as a custom field rather than an active workflow, since Bullhorn does not replicate Rival Workflow definitions. Job status (Open/Closed/On Hold) maps to Bullhorn's employmentType and status fields.
Rival Recruit
Onboarding Records
Bullhorn ATS & CRM
Employee + Placement
1:1Rival Recruit onboarding journeys managed in Rival Workflow tie to new hire records. Bullhorn does not have a native onboarding journey object; we map active onboarding journeys to Bullhorn Employee records (Employee entity) with onboarding status stored as a custom field onboarding_journey_status__c. Pending I-9, tax forms, and compliance documents attach to the Employee record. We flag any onboarding steps that reference undocumented Rival Onboarding API endpoints and fall back to bulk export for those records.
Rival Recruit
Documents
Bullhorn ATS & CRM
Document (Candidate/Job/Placement)
1:1Resumes, cover letters, offer letters, background check results, and compliance documents extract from Rival Recruit as binary attachments with their metadata. We remap each document to the corresponding Bullhorn entity (Candidate, JobOrder, or Placement) using the Bullhorn Document API. Document type labels (resume, cover_letter, offer_letter) map to Bullhorn's description field with a custom document_type__c picklist for filtering.
Rival Recruit
Employee
Bullhorn ATS & CRM
Employee
1:1Rival Recruit employee records (personal info, job title, department, manager, start date, employment status) map 1:1 to Bullhorn Employee. Effective-dated employment changes preserve their historical timestamps in a custom field employment_history__c as a JSON array. Bullhorn's Employee entity supports termination records, which we create from the Rival Recruit employment status field when applicable.
Rival Recruit
Users
Bullhorn ATS & CRM
User
1:1Rival platform users (name, email, role, team assignment) map to Bullhorn User records. We match by email address during migration. The Owner assignment on Candidate, Job, and Employee records resolves to the Bullhorn User ID after User import completes. Any Rival Recruit user without a matching Bullhorn User goes to a reconciliation queue for the customer's Bullhorn admin to provision before record import resumes.
Rival Recruit
Tags
Bullhorn ATS & CRM
Candidate Tags
1:1Rival Recruit tags applied to candidates for segmentation extract as a flat lookup table (candidate_id, tag_name). Bullhorn supports tagging on Candidate records via the tags field. We reapply tag assignments as Bullhorn tags on the migrated Candidate records. If tag count exceeds Bullhorn's practical tag limit, we convert excess tags to a custom multi-select picklist on the Candidate record.
Rival Recruit
Career Sites
Bullhorn ATS & CRM
Inventory (not migrated)
lossyRival Recruit branded career site configurations, job board distribution settings, and employee testimonial content are configurable assets, not transactional records. We export the site configuration as a structured JSON document and the content blocks as a written inventory for the customer's team to rebuild in Bullhorn's Career Portal or a Bullhorn-endorsed WordPress plugin. This is not a live migration of site data.
Rival Recruit
Workflows
Bullhorn ATS & CRM
Inventory (not migrated)
lossyRival Recruit onboarding, offboarding, and internal mobility workflows define journeys with steps, assignees, and conditions. Bullhorn Workflows and Rival Workflows are architecturally distinct and cannot migrate as code. We export workflow definitions as JSON blueprints and remap step owners to Bullhorn User IDs where possible. The customer receives a written workflow inventory document with recommended Bullhorn automation equivalents for each journey. Rebuild is handled by the customer's Bullhorn admin or an implementation partner post-migration.
Rival Recruit
Interview Schedules
Bullhorn ATS & CRM
Appointment (Activity)
1:1Rival Recruit interview events (date, time, interviewer, candidate, position) map to Bullhorn Appointment records attached to the Candidate and Job. Interview scorecards require manual rebuild in Bullhorn; we document the scorecard fields and structure as a separate inventory. Calendar relationships (interviewer availability, interview type) transfer as Appointment metadata where supported by the Bullhorn API.
Rival Recruit
Custom Fields
Bullhorn ATS & CRM
Custom Fields
lossyRival Recruit custom fields on candidates and positions are entirely customer-specific with no universal default. We perform a pre-migration schema audit via the Rival Recruit API to enumerate every active custom field and its data type. Bullhorn's Growth and Enterprise editions allow up to 10 Custom Objects with 55 fields each (ATS Growth capped at 2). We map each discovered Rival custom field to a Bullhorn custom field, using the appropriate Bullhorn field type (text, number, picklist, date, checkbox, multi-select). Fields that exceed Bullhorn's character limits receive truncation with a note in the migration log.
Rival Recruit
SilkRoad Legacy Artifacts
Bullhorn ATS & CRM
Custom field cleanup
lossyOrganizations with multi-year histories in SilkRoad Technology may have legacy data referencing SilkRoad-specific naming conventions, workflow IDs, and API endpoints. We audit the Rival Recruit export for SilkRoad-era field names, deprecated workflow references, and outdated integration configuration. These artifacts are renamed or flagged for manual review before Bullhorn import. Any deprecated endpoint references in the export are mapped to Bullhorn equivalents and documented in the migration report.
| Rival Recruit | Bullhorn ATS & CRM | Compatibility | |
|---|---|---|---|
| Candidate | Candidate1:1 | Fully supported | |
| Position | Job1:1 | Fully supported | |
| Onboarding Records | Employee + Placement1:1 | Mapping required | |
| Documents | Document (Candidate/Job/Placement)1:1 | Mapping required | |
| Employee | Employee1:1 | Fully supported | |
| Users | User1:1 | Fully supported | |
| Tags | Candidate Tags1:1 | Mapping required | |
| Career Sites | Inventory (not migrated)lossy | Mapping required | |
| Workflows | Inventory (not migrated)lossy | Mapping required | |
| Interview Schedules | Appointment (Activity)1:1 | Mapping required | |
| Custom Fields | Custom Fieldslossy | Mapping required | |
| SilkRoad Legacy Artifacts | Custom field cleanuplossy | Fully supported |
Gotchas + challenges
Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.
Rival Recruit gotchas
SilkRoad to Rival rebrand affects legacy data continuity
Onboarding API documentation lags behind current product
Delta data during migration window causes pipeline drift
Custom fields vary by customer and require discovery before mapping
Bullhorn ATS & CRM gotchas
ATS Growth edition has no API access
Attachments excluded from CSV bulk exports
Custom Object limits vary sharply by edition
Opportunity pipeline stages are recruitment-specific
Resume parse quality varies by document format
Pair-specific challenges
Migration approach
Discovery and schema audit
We audit the source Rival Recruit instance across all active modules (ATS, Workflow, Onboarding), enumerating every custom field on Candidate and Position via API schema discovery, identifying active workflows and their step definitions, cataloging the binary document attachment library (file types, total size, count), and determining the number of active onboarding journeys. We also audit for SilkRoad-era artifacts by scanning for deprecated field names and legacy endpoint references. The discovery output is a written scope document covering record counts, data model complexity, and any Bullhorn edition requirement implied by the custom object count.
Destination schema design and edition alignment
We design the Bullhorn destination schema to accommodate the discovered Rival Recruit data model. This includes configuring Bullhorn Custom Objects (aligned to the customer's Bullhorn edition), creating custom fields mapped from Rival Recruit custom fields, configuring Candidate status values and Job status values to match source stage names, and setting up Bullhorn User roles and team assignments aligned to the Rival Recruit role hierarchy. Schema is deployed into a Bullhorn sandbox first for validation. If the customer's Bullhorn edition does not support the required custom object count, we surface this during schema design and recommend an edition upgrade before migration proceeds.
SilkRoad artifact remediation and delta baseline export
We remediate SilkRoad-era data artifacts identified during discovery by renaming legacy field references and flagging deprecated endpoint usage in the export. After remediation, we run the baseline full export from Rival Recruit covering all supported objects (Candidates, Positions, Employees, Documents, Tags, Onboarding Records, Interview Schedules). We establish the delta timestamp at this point and communicate the migration freeze window to the customer's team. Any data modified between baseline export and freeze window is captured in the delta export at cutover.
Sandbox migration and reconciliation
We run a full migration into a Bullhorn sandbox using production-like data volume. The customer's Bullhorn admin reconciles record counts (Candidates in, Jobs in, Employees in, Documents in, Tags in), spot-checks 25-50 candidate records against the Rival Recruit source, verifies document attachment integrity, and validates the custom field mapping for accuracy. Any mapping corrections, truncation decisions, or schema adjustments happen in the sandbox before production migration begins. Owner and User reconciliation also completes at this stage.
Production migration in dependency order
We run production migration in record-dependency order: Users first (validated manually), then Employees, then Jobs, then Candidates (with document attachments linked), then Tags, then Onboarding Records. Each phase emits a row-count reconciliation report. Document attachments are extracted separately from metadata and remapped to Bullhorn's Document entity with the correct parent reference. We use Bullhorn's REST API with rate-limit handling, exponential backoff, and batch chunking throughout. Active pipeline stages and offers receive priority sequencing in the cutover to prevent hiring disruption.
Cutover, delta sync, and workflow rebuild handoff
We freeze Rival Recruit writes during the cutover window, run a final delta migration capturing all records modified since the baseline export, then enable Bullhorn as the system of record. We deliver the workflow inventory document (JSON blueprints for Rival Workflow definitions with recommended Bullhorn equivalents), the custom field mapping table, and the SilkRoad artifact remediation log. We support a one-week hypercare window for reconciliation issues raised by the customer's recruiting team. We do not rebuild Rival Workflows or sequences as Bullhorn automations inside the migration scope; that is a separate engagement or an internal admin task.
Platform deep dives
Rival Recruit
Source
Strengths
Weaknesses
Bullhorn ATS & CRM
Destination
Strengths
Weaknesses
Complexity grading
Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.
Overall complexity
Standard migration
Derived from compatibility, mapping clarity, API constraints, and data volume across Rival Recruit and Bullhorn ATS & CRM.
Object compatibility
1 of 7 objects need a mapping; the rest are 1:1.
Field mapping clarity
Field mapping is derived from defaults — final spec confirmed during the sample migration.
Timeline complexity
7-object category — typical timelines run 2–7 days end-to-end.
API constraints
Rival Recruit: N/A — no public API.
Data volume sensitivity
Rival Recruit doesn't expose a bulk API — REST + parallelization used for high-volume runs.
Estimator
Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.
Step 1
Pick a category, then your source and destination platforms.
Category
FAQ
Answers to the questions buyers ask most during Rival Recruit to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.
Walk through your Rival Recruit to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Rival Recruit
Other ways to arrive at Bullhorn ATS & CRM
Ready when you are
Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.