HRMS migration
Field-level mapping, validation, and rollback between Aperio and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.
Aperio
Source
Crelate
Destination
Compatibility
4 of 12
objects map 1:1 between Aperio and Crelate.
Complexity
BStandard
Timeline
6-10 weeks
Overview
Aperio structures performance management around review cycles, goal hierarchies, and competency frameworks. Crelate is a recruiting ATS built around candidates, job orders, and opportunities with a 20-field-per-entity custom field limit. These different object models mean the migration is a translation exercise rather than a direct record copy. We migrate employee core data, goal parent-child relationships, and review metadata into Crelate Contacts with custom fields and tags, and we flag which Crelate custom fields are consumed by each review or goal attribute. We do not migrate review templates, competency libraries, or development plan structures as code. We deliver a written inventory of every Aperio template and workflow that requires rebuild as Crelate activity forms, tags, and administrative configurations. The absence of an Aperio API means timelines run 30-40 percent longer than API-based migrations of comparable record counts.
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 Aperio object lands in Crelate, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Aperio
Employee
Crelate
Contact
1:1Aperio employee records map directly to Crelate Contacts. We extract name fields, title, department, manager relationship, and hire date from the CSV export and load them into the corresponding Crelate Contact fields. The manager relationship resolves as a Contact lookup by email. Employee IDs are preserved in a custom field aperio_employee_id__c for reconciliation. Resume or profile attachments attach via ContentDocumentLink to the Contact record after import.
Aperio
Goal
Crelate
Contact (custom fields + tags)
lossyAperio goals lack a native Crelate equivalent. We map the goal title, description, status, and target date to Crelate Contact custom fields (up to the 20-field limit). Goal content that exceeds the field cap migrates as a Crelate Tag on the Contact. We extract goal_id and parent_goal_id pairs from the CSV to identify orphaned or circular references before loading, and flag any unreconciled goals for the customer admin.
Aperio
Goal (hierarchy)
Crelate
Contact (tag structure)
1:1Aperio goal hierarchies flatten to parent_goal_id in the CSV export. We reconstruct the hierarchy by grouping goals by parent_goal_id and tagging child goals on the parent Contact as a related tag with a goal_rank prefix (e.g., 'G1_child_1', 'G1_child_2') so the relationship is recoverable in Crelate without native hierarchy support.
Aperio
Performance Review
Crelate
Contact (custom fields + activity form responses)
lossyAperio performance reviews are cycle-based records with ratings, reviewer comments, and competency scores. We map review date, overall rating, and status to Cperio Contact custom fields. Detailed competency ratings and free-text comments exceed Crelate's 20-field limit on Contacts; we store these as Crelate Activity Forms linked to the Contact with a custom activity type 'Performance Review' and field mappings copying responses to Contact columns. Review cycles are preserved as Tags on the Contact (e.g., 'Review_2024_Q4').
Aperio
Review Template
Crelate
Activity Form
lossyAperio review templates define competency sections, rating scales, and mandatory fields. Crelate has no native review template object, but activity forms with field mappings provide a structural equivalent. We export template definitions and deliver a written field map documenting each Aperio competency and rating scale with its recommended Crelate Activity Form question and Contact field pairing. The customer's admin builds the form in Crelate from this reference.
Aperio
Competency
Crelate
Activity Form (question library)
lossyAperio competency libraries are referenced within reviews and templates. Crelate has no native competency library. We export competency definitions and their rating scales and deliver a written competency reference document mapped to the Activity Form questions and field mappings where they should land in Crelate. The customer's admin rebuilds the competency library as part of their activity form setup.
Aperio
Development Plan
Crelate
Contact (tags + notes)
lossyAperio development plans track growth actions tied to employees and review outcomes. Crelate has no development plan object. We extract plan records with milestones and timelines from the CSV and map plan titles and key milestones to Crelate Contact tags. Detailed plan content migrates as a Note on the Contact with the plan body preserved in rich text. Goal links are handled through the goal mapping described above.
Aperio
Department
Crelate
Contact (tag) + Company
many:1Aperio departments represent the organizational hierarchy with parent-child relationships. Crelate's org model is company-based rather than department-based. We map each Aperio department to a Crelate Contact tag (e.g., 'Dept_Engineering', 'Dept_Sales') and optionally to a Crelate Company record if the customer wants to represent internal cost centers as Company entities. The department hierarchy does not have a direct Crelate equivalent; we document the hierarchy as a reference structure for the customer admin.
Aperio
Job Title
Crelate
Contact (custom field)
1:1Aperio job titles are associated with employees and used as criteria within review templates. Crelate has no native job title library. We export the full job title roster and map titles to a custom field job_title__c on the Contact record. Titles that appear in multiple Aperio contexts (review criteria, competency weighting) are noted in the job title reference document delivered alongside the migration.
Aperio
Review Cycle
Crelate
Contact (tag)
1:manyAperio review cycles are temporal containers that batch related reviews with start and end dates. Crelate has no cycle object. We extract cycle metadata and apply a tag to each Contact that participated in the cycle (e.g., 'Cycle_2024_H1'). Cycle dates and status are preserved in a custom field last_review_cycle__c on the Contact for reporting purposes.
Aperio
Custom Field (on Reviews, Goals, Plans)
Crelate
Contact (custom field) or Tag
lossyAperio supports custom fields on Reviews, Goals, and Development Plans with picklist and multi-select values. We identify all active custom fields during discovery, export their value sets, and map them to Crelate Contact custom fields by type. Fields that exceed Crelate's 20-field limit per entity are mapped to Crelate Tags. Where Aperio picklist values differ from any Crelate target field, we flag the discrepancy for customer resolution before loading.
Aperio
Owner
Crelate
User
1:1Aperio owner assignments on reviews, goals, and plans reference manager or HR admin users. We extract distinct owner IDs from the CSV and match by email against the Crelate destination User table. Owners without a matching Crelate User are held in a reconciliation queue for the customer's admin to provision before record import completes.
| Aperio | Crelate | Compatibility | |
|---|---|---|---|
| Employee | Contact1:1 | Fully supported | |
| Goal | Contact (custom fields + tags)lossy | Fully supported | |
| Goal (hierarchy) | Contact (tag structure)1:1 | Fully supported | |
| Performance Review | Contact (custom fields + activity form responses)lossy | Fully supported | |
| Review Template | Activity Formlossy | Fully supported | |
| Competency | Activity Form (question library)lossy | Fully supported | |
| Development Plan | Contact (tags + notes)lossy | Fully supported | |
| Department | Contact (tag) + Companymany:1 | Fully supported | |
| Job Title | Contact (custom field)1:1 | Fully supported | |
| Review Cycle | Contact (tag)1:many | Fully supported | |
| Custom Field (on Reviews, Goals, Plans) | Contact (custom field) or Taglossy | Fully supported | |
| Owner | User1: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.
Aperio gotchas
No public API means CSV-only migration exports
Goal parent-child hierarchies export as flat records
Custom fields require manual value-set mapping
Crelate gotchas
120 req/min API rate limit throttles bulk migrations
20 custom field per-entity cap forces data model decisions
15,000-record export ceiling on single operations
Sequences and automation workflows do not migrate
API key is a querystring parameter, not a header
Pair-specific challenges
Migration approach
Discovery and CSV extraction
We audit the Aperio instance across all active objects: employee profiles, goal records with parent-child links, review cycle history, competency libraries, development plans, and custom field definitions on each object type. We extract all available CSV exports with full column sets and run a data quality assessment to identify missing parent references, orphaned child goals, and fields with no values across all records. The discovery output is a written migration scope, a record-count matrix by object, and a custom field inventory with value-set samples for picklist mapping.
Schema design and field allocation
We design the Crelate destination schema within the 20-field per-entity constraint. We allocate custom Contact fields to the highest-priority Aperio attributes based on usage frequency, flagging overflow fields for tag-based migration. We configure Crelate Activity Forms to receive review and competency data where field slots are exhausted, and set up the field mappings that copy activity form responses to Contact columns. We create the activity type and form structure in a Crelate sandbox for validation before production.
Sandbox migration and reconciliation
We run a full migration into a Crelate sandbox using production-equivalent record volumes. The customer's recruiting or HR lead spot-checks 25-50 migrated Contacts against the Aperio source, validates goal hierarchy tag naming, reviews activity form responses, and confirms that review cycle tags are correctly applied. We reconcile record counts and field values and correct any mapping errors before scheduling the production migration window.
Owner reconciliation and User provisioning
We extract every distinct Aperio owner referenced on review, goal, and development plan records and match by email against the Crelate destination User table. Any owner without a matching Crelate User is held in a reconciliation queue. The customer's admin provisions missing Users before the production migration begins. Migration cannot complete past this step because Contact OwnerId references must be satisfied at insert time.
Production migration in dependency order
We run production migration through Crelate's REST API at 120 requests per minute with batch chunking and exponential backoff. The sequence is: Contacts (with core fields, job title, department tags, and goal hierarchy tags), Activity Forms for review data, Notes for development plan content, and review cycle tags applied last. Each phase emits a row-count reconciliation report before the next phase begins. Goal hierarchy reconstruction runs as a post-processing step against the goal_id and parent_goal_id pairs extracted during discovery.
Cutover, validation, and template rebuild handoff
We freeze Aperio access during cutover and run a final delta migration of any records modified during the migration window. We validate goal hierarchy tags, review cycle tags, and activity form data in Crelate and resolve any remaining reconciliation issues in a one-week hypercare window. We deliver a written inventory of every Aperio review template, competency library, and development plan structure that requires rebuild in Crelate Activity Forms, along with field mapping documentation. We do not rebuild these as Crelate configurations; that work falls to the customer's admin or a Crelate implementation partner.
Platform deep dives
Aperio
Source
Strengths
Weaknesses
Crelate
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 Aperio and Crelate.
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
Aperio: Not publicly documented — no published API surface, so rate limits are not specified externally..
Data volume sensitivity
Aperio 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 Aperio to Crelate migration scoping. Not seeing yours? Book a call.
Walk through your Aperio to Crelate migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Aperio
Other ways to arrive at Crelate
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.