HRMS migration
Field-level mapping, validation, and rollback between Built and Recruit CRM & ATS. We move data and schema; workflows are rebuilt natively in Recruit CRM & ATS.
Built
Source
Recruit CRM & ATS
Destination
Compatibility
8 of 10
objects map 1:1 between Built and Recruit CRM & ATS.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Built to Recruit CRM is a platform category shift from org chart automation to recruitment ATS/CRM, which means the migration scope centers on employee records as Contacts or Candidates rather than replicating Built's visual hierarchy. Built stores manager assignments as Employee-to-Employee lookups; we resolve these through a two-pass import that first loads all base records then links manager references using destination-assigned IDs. Recruit CRM accepts custom fields on all entities, so any Built custom properties on Employee records map to custom Contact or Candidate fields after schema discovery. Attachments stored against Built profiles do not appear in standard API exports and require a separate file-level extraction from Built support. Recruit CRM's import mechanism relies on CSV or XLS uploads with field mapping at the UI level, so we prepare destination-ready export files with pre-mapped column headers to minimize manual reconciliation during import. Workflows, ADP sync configurations, and visual org chart renderings do not migrate because they are platform-specific constructs with no direct Recruit CRM equivalents; we deliver a written inventory of any active ADP sync rules and org chart structures for your team to rebuild manually in Recruit CRM or document as a separate integration project.
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 Built object lands in Recruit CRM & ATS, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Built
Employee
Recruit CRM & ATS
Contact or Candidate
1:1Built Employee records map to Recruit CRM Contact or Candidate depending on whether the employee record represents a current team member or a historical placement. We extract each Employee's name fields, title, employment type, start date, and location assignment, then format them into Recruit CRM's standard Contact schema or Candidate profile based on the customer's record-type strategy. Start dates migrate as typed date fields to preserve tenure visibility in Recruit CRM.
Built
Employee
Recruit CRM & ATS
Contact
1:1For organizations treating current Built employees as Contacts in Recruit CRM (for internal hiring or employee referral workflows), we map Employee email to Contact email as the dedupe key, Employee phone to Contact phone, and Employee address components to Contact address fields. Employment type (full-time, part-time, contractor) maps to a custom Contact field since Recruit CRM's standard Contact schema does not include an employment type property by default.
Built
Manager Assignment
Recruit CRM & ATS
Custom Lookup Field
lossyBuilt stores manager assignment as a link from one Employee record to another Employee record. Recruit CRM Contact does not have a native manager relationship field. We resolve this during a two-pass import: first loading all Contact base records with a temporary placeholder for the manager reference, then in the second pass resolving the manager Contact ID and writing to a custom Contact field (e.g., reports_to__c) that you configure in Recruit CRM before migration. Circular manager assignments are detected and flagged during the scoping phase so they do not create impossible hierarchies in the destination.
Built
Department
Recruit CRM & ATS
Company or Custom Field
1:1Built Department records represent organizational units that map to Recruit CRM Companies when the department functions as a client organization, or to a custom Contact field (department__c) when the department represents an internal organizational unit. We review the Department schema during scoping to determine the appropriate mapping strategy. Department head information migrates as a Contact reference or custom field depending on the chosen structure.
Built
Location
Recruit CRM & ATS
Contact Address Components
1:1Built Location records contain office site or remote-work designations. We extract the location name, address, city, state, and country fields and map them to the corresponding Contact address fields in Recruit CRM. If Built uses a hierarchical location model (e.g., Region > Office > Floor), we flatten it into a single address structure and preserve the hierarchy in a custom field for reference. Remote-work designations migrate as a custom field value on the Contact record.
Built
Job Title
Recruit CRM & ATS
Contact Title Field
1:1Job title is stored as a free-text field on the Built Employee record. It maps directly to the Contact Title field in Recruit CRM with no transformation required. Title is preserved as entered in Built without normalization, so duplicates (e.g., 'Software Engineer' vs 'Software Engineer ') may require a post-migration dedupe step if Recruit CRM enforces strict uniqueness.
Built
Employment Type
Recruit CRM & ATS
Custom Contact Field
lossyBuilt tracks employment type as a property on the Employee record with values including full-time, part-time, contractor, and temporary. Recruit CRM's standard Contact schema does not include an employment type field, so we create a custom picklist field (employment_type__c) on the Contact object before migration. The picklist values are seeded from the distinct values found in the Built export, and any unmapped values are flagged for manual review during staging validation.
Built
Custom Fields (Employee-level)
Recruit CRM & ATS
Custom Fields (Contact-level)
1:1Built organizations can define custom properties on Employee records. We extract the complete custom field schema at the start of migration by querying the Built API and comparing against standard Employee fields to build a full field list. Each custom field is then created as a matching custom field on the Recruit CRM Contact object, with field type preserved (text, number, date, picklist). Picklist values migrate as option entries in the Recruit CRM custom field configuration. Any custom fields with no clear Recruit CRM equivalent are flagged for explicit mapping during the scoping call.
Built
Attachments (Employee-level)
Recruit CRM & ATS
File Re-link Required
1:1Employee documents and uploaded files attached to profiles in Built do not appear in the standard data export. This is a documented limitation of Built's export mechanism. If you need attachments migrated, you must request a separate file-level export from Built support. We handle the extracted files as a parallel batch: organized into a folder structure keyed by employee ID, with a mapping spreadsheet linking each file to the destination Contact record. Re-linking is a manual step in Recruit CRM's UI or API because Recruit CRM does not have a native bulk file-to-contact attachment mechanism. We document the re-link procedure and provide the mapping spreadsheet to your team.
Built
Org Chart Visualization
Recruit CRM & ATS
Not Migrated
1:1The visual org chart is a rendering of underlying employee hierarchy data in Built, not a separate data object. When migrating from Built, we extract the underlying Employee records, Department assignments, and manager relationships. The visual org chart does not have a direct equivalent in Recruit CRM because Recruit CRM is an ATS/CRM rather than an org chart platform. We deliver a written document describing your organizational hierarchy derived from the migrated data, which your team can use to manually configure any org chart widgets or reporting structures in Recruit CRM or a separate org chart tool.
| Built | Recruit CRM & ATS | Compatibility | |
|---|---|---|---|
| Employee | Contact or Candidate1:1 | Fully supported | |
| Employee | Contact1:1 | Fully supported | |
| Manager Assignment | Custom Lookup Fieldlossy | Fully supported | |
| Department | Company or Custom Field1:1 | Fully supported | |
| Location | Contact Address Components1:1 | Fully supported | |
| Job Title | Contact Title Field1:1 | Fully supported | |
| Employment Type | Custom Contact Fieldlossy | Mapping required | |
| Custom Fields (Employee-level) | Custom Fields (Contact-level)1:1 | Fully supported | |
| Attachments (Employee-level) | File Re-link Required1:1 | Fully supported | |
| Org Chart Visualization | Not Migrated1:1 | 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.
Built gotchas
ADP sync field names differ between source and destination
Manager relationships require two-pass import sequencing
Attachments and files are not included in standard API exports
Custom field schema is per-organization and not self-documenting
Recruit CRM & ATS gotchas
API rate limits are license-scaled and can throttle bulk migration
Custom field schemas vary per organization and require field-level mapping
Files and email attachments require separate extraction and re-upload
Email sequences and automation logic do not transfer between platforms
Pair-specific challenges
Migration approach
Scoping and data audit
We audit the Built environment across all Employee records, custom field definitions, Department and Location schemas, and manager relationship count. We extract a complete field inventory via the Built API and compare it against standard Employee fields to identify any custom-only properties. We review the manager relationship graph to detect circular references and estimate the depth of the two-pass import. The scoping output is a written migration scope document with record counts, custom field mapping table, and manager resolution plan. We also confirm whether attachments need to be exported separately from Built support and coordinate that request timing.
Recruit CRM schema preparation
We create the destination schema in Recruit CRM before any data import. This includes provisioning any custom fields on the Contact object to receive Built custom properties (with matching field types and picklist values), configuring the employment_type__c picklist, and confirming the department__c field structure. We document the field mapping table and share it with the customer's Recruit CRM admin for review and visibility configuration. Recruit CRM admin credentials are required at this step to create custom fields through the UI or API.
Data export and transformation
We extract all Employee, Department, Location, and manager relationship records from Built via API. The export is transformed into Recruit CRM-ready CSV format with pre-mapped column headers. Manager references are held as a temporary employee ID column pending destination ID resolution. Custom field values are mapped to the corresponding Recruit CRM custom fields. Any data quality issues (missing required fields, duplicate records by email) are flagged in a pre-migration data quality report. The customer reviews the report and approves the transformation logic before staging migration.
Staging migration and reconciliation
We run a full migration into a Recruit CRM staging environment using the transformed CSV. The customer's team reconciles record counts (Contacts in, Departments mapped, Locations assigned), spot-checks 25-50 records against the Built source for field accuracy, and verifies that manager relationships populated correctly in the custom reports_to__c field. Any field mapping corrections are made to the transformation script and the staging migration is re-run until reconciliation passes. The customer signs off on the staging results before production migration begins.
Attachment extraction (if required)
If the customer has requested attachment migration, we coordinate the file-level export from Built support during the staging phase. We receive the files organized by employee ID, re-organize them into a flat folder structure keyed by Built employee ID, and prepare a mapping spreadsheet linking each file to the destination Recruit CRM Contact record. The re-link procedure is documented step-by-step for the customer's team to execute in Recruit CRM's UI because bulk file attachment requires individual record navigation.
Production migration and cutover
We freeze writes to Built during the cutover window, run a final delta export capturing any records modified since the staging migration, and load the production CSV into Recruit CRM. The delta load resolves any remaining manager references and custom field values. We deliver a final reconciliation report comparing Built source record counts against Recruit CRM destination record counts. We provide the Workflow and ADP sync inventory document listing any Built automations and ADP integration rules that cannot migrate, with recommendations for manual rebuild in Recruit CRM. We do not rebuild workflows or automations as part of standard scope.
Platform deep dives
Built
Source
Strengths
Weaknesses
Recruit CRM & ATS
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 Built and Recruit CRM & ATS.
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
Built: Not publicly documented.
Data volume sensitivity
Built 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 Built to Recruit CRM & ATS migration scoping. Not seeing yours? Book a call.
Walk through your Built to Recruit CRM & ATS migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Built
Other ways to arrive at Recruit CRM & ATS
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.