HRMS migration
Field-level mapping, validation, and rollback between VivaHR and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.
VivaHR
Source
Crelate
Destination
Compatibility
7 of 12
objects map 1:1 between VivaHR and Crelate.
Complexity
BStandard
Timeline
3-5 weeks
Overview
VivaHR and Crelate occupy different segments of the ATS market and handle data differently at the schema level. VivaHR is a small-business ATS built around Job Postings and Candidates in customizable pipelines, but it does not publish a public REST API, which means automated bulk extraction requires manual exports or alternative approaches. Crelate is a CRM-ATS hybrid designed for staffing and recruiting agencies with a documented REST API, custom fields on Contacts, Companies, and Opportunities, and field mapping capabilities for custom forms. We map VivaHR Jobs to Crelate Job records, VivaHR Candidates to Crelate Contacts, VivaHR Pipelines to Crelate Pipeline configurations, and VivaHR Scorecard ratings to Crelate custom fields. Questionnaire responses and Culture Profile content migrate as rich-text or linked assets. We flag that Crelate's lookup resolution rules (Id, FirstName, LastName pattern) require explicit handling when migrating records that reference Hiring Team members, and that VivaHR's undocumented API is the primary constraint on extraction speed and record completeness. Workflows, automations, and integrations do not migrate as configuration; we deliver a written inventory for the customer to rebuild in Crelate.
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 VivaHR 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.
VivaHR
Job (Job Posting)
Crelate
Job
1:1VivaHR Jobs map to Crelate Job records. Each Job carries title, type, skill level, location, and posting status. We map Job status to Crelate's job isActive flag and preserve the original VivaHR job ID as a custom field vivahr_job_id__c for reconciliation. Crelate's required Name field on Job is populated from the VivaHR position title. If the migration includes active job postings, we coordinate the timing to avoid duplicate listings during the parallel-run window.
VivaHR
Candidate
Crelate
Contact
1:1VivaHR Candidates attach to Jobs within pipelines. We map Candidate profile data (name, email, phone, resume URL, social profiles) to Crelate Contact fields. Crelate's Contact record requires a Name, which we construct from VivaHR's first_name and last_name fields. The original VivaHR Candidate ID is preserved as vivahr_candidate_id__c. Any VivaHR custom candidate properties (beyond standard profile fields) migrate to Crelate custom fields on Contact, which we pre-create with matching field types before migration.
VivaHR
Hiring Pipeline
Crelate
Pipeline
lossyVivaHR Pipelines contain stage definitions attached to Jobs. Crelate Pipelines are configured via Record Types and Sales Processes. We map each VivaHR pipeline stage to a corresponding Crelate Stage within the destination Pipeline configuration. Stage names and counts may differ between systems; we create the destination pipeline in Crelate during the schema pre-creation phase with stage names matched to VivaHR equivalents where feasible, and note deviations for the customer to validate before cutover.
VivaHR
Pipeline Stage History
Crelate
Activity (Task or Note)
lossyVivaHR tracks Candidate movement through pipeline stages with timestamps. This history migrates as Crelate Activity records (Tasks with a custom subtype) linked to the Contact. Each stage change becomes a dated Task entry with the stage name in the subject field and duration notes in the body. Full pipeline history is preserved as a chronological activity list on the Contact record.
VivaHR
Scorecard
Crelate
Custom Fields (Contact or Job)
1:1VivaHR Scorecards are templates attached to Jobs for rating Candidates during evaluation. Scorecard templates and their associated ratings migrate as Crelate custom fields on the Contact record (for candidate-level ratings) or Job record (for template-level definitions). We create typed custom fields (Number, Text, or Picklist) in Crelate during schema pre-creation, matching the rating scale from VivaHR. Scorecard template structure migrates as a separate Crelate Activity Form template.
VivaHR
Culture Profile
Crelate
Rich Text (Company or Job Asset)
lossyVivaHR Culture Profiles represent employer brand content for the careers page. These are text and media assets rather than relational records. We export Culture Profile content as rich-text blocks and media URLs, then re-import them as Crelate Job Portal content or as rich-text notes attached to the Company record. Media files are exported as downloadable assets and linked as URLs in Crelate. Culture Profile migration is lower priority and can be staged after core candidate and job data.
VivaHR
Candidate Questionnaire
Crelate
Custom Fields or Activity Form
1:1VivaHR Questionnaires attached to Jobs collect structured candidate data. Questionnaire responses map to Crelate custom fields on the Contact record (if the data is candidate-attributed) or to Activity Form responses (if the data is session-attributed). We pre-create the destination custom fields in Crelate with field types matched to the questionnaire answer types before migration. Questionnaire templates migrate as Crelate Activity Form templates.
VivaHR
Hiring Team
Crelate
Contact (with Role)
1:1VivaHR Hiring Team assigns users to a Job with specific roles. Team membership maps to Crelate as Contact records with a role designation in a custom field (hiring_team_role__c). Crelate's lookup resolution requires explicit Id, FirstName, and LastName fields. If the Hiring Team member is not already a Crelate Contact, we create a Contact record and mark it with the role. Recruiter or hiring manager assignment on Job records migrates via Crelate's jobRecruiters field.
VivaHR
Candidate Automations
Crelate
Not migratable
lossyVivaHR Candidate Automations (outreach sequences, follow-up triggers) are configuration data, not records. We do not migrate automations as code. We document every active automation with its trigger conditions, actions, and timing as a written inventory for the customer to rebuild in Crelate using Crelate's Automation and Sequencing features (Business Plus tier). This is delivered as a post-migration handoff document.
VivaHR
Integrations
Crelate
Not migratable
lossyVivaHR integrations via Zapier and other platforms are configuration data. We do not migrate integration setups. We deliver a written inventory of active integrations with their trigger/action logic for the customer to reconfigure in Crelate or via Zapier connected to the new destination. If the customer uses a direct Crelate integration (e.g., ZoomInfo Talent via API), we document the setup requirements for the customer's admin.
VivaHR
Resume and Attachments
Crelate
Document Storage (Contact)
1:1Candidate resumes and file attachments stored in VivaHR migrate as Crelate document records linked to the Contact. We export files from VivaHR via available export paths, normalize file formats, and upload to Crelate's document storage linked to the corresponding Contact. Resume parsing in Crelate (Standard on Business tier) processes the imported file for structured candidate data extraction post-migration.
VivaHR
Tags
Crelate
Tags
1:1VivaHR tags on Candidates and Jobs migrate to Crelate Tags. Crelate's API accepts tags as a JSON object with category keys (Default category uses the 'Default' key). We map VivaHR tag values to Crelate tag names and apply them to the corresponding Contact records during import. Tag categories are preserved as Crelate tag groupings.
| VivaHR | Crelate | Compatibility | |
|---|---|---|---|
| Job (Job Posting) | Job1:1 | Fully supported | |
| Candidate | Contact1:1 | Fully supported | |
| Hiring Pipeline | Pipelinelossy | Fully supported | |
| Pipeline Stage History | Activity (Task or Note)lossy | Fully supported | |
| Scorecard | Custom Fields (Contact or Job)1:1 | Fully supported | |
| Culture Profile | Rich Text (Company or Job Asset)lossy | Fully supported | |
| Candidate Questionnaire | Custom Fields or Activity Form1:1 | Fully supported | |
| Hiring Team | Contact (with Role)1:1 | Mapping required | |
| Candidate Automations | Not migratablelossy | Fully supported | |
| Integrations | Not migratablelossy | Mapping required | |
| Resume and Attachments | Document Storage (Contact)1:1 | Fully supported | |
| Tags | Tags1:1 | Mapping required |
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.
VivaHR gotchas
No publicly documented API for bulk exports
Fillable PDF forms not supported on the platform
First-time job posting approval delay
Product name inconsistency across web properties
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 data extraction scoping
We audit the source VivaHR account for record volume (Candidates, Jobs, Pipelines, Scorecards, Questionnaires, Culture Profiles), custom property definitions, and active automations. Since VivaHR lacks a documented API, we work with the customer to identify available export paths: built-in report downloads, CSV exports from individual views, and any direct database access the customer can provide. We map every VivaHR object to its Crelate destination equivalent and produce a written migration scope with record counts and extraction method assignments.
Schema pre-creation in Crelate
We create the destination Crelate schema before any data moves. This includes creating custom fields on Contact (for candidate properties and Scorecard ratings), Job (for template-level Scorecard definitions), and Company (for Culture Profile content). We configure Pipeline Record Types and Sales Processes to match VivaHR pipeline stages, with stage names and probabilities mapped. We set up tag categories in Crelate that mirror VivaHR tag groups. Schema is deployed to a Crelate Sandbox or staging environment first for validation before production migration.
Data extraction and normalization
We extract data from VivaHR using the scoped methods (manual exports, CSV downloads, or available database paths). Extracted records are normalized into a staging format: VivaHR Candidate fields mapped to Crelate Contact schema, VivaHR Job fields mapped to Crelate Job schema, pipeline stage names matched to destination stage IDs, and VivaHR custom properties mapped to pre-created Crelate custom field logical names. We run deduplication checks on email addresses before loading. Any records missing required Crelate fields (Name on Contact, Name on Job) are flagged in a reconciliation report for the customer to resolve before import.
Parent-record pre-creation and lookup resolution
Crelate requires that parent records exist before child records can reference them via lookup. We load parent records first: Companies (created from VivaHR Company data if present, or derived from candidate email domains), then Contacts (Candidates), then Jobs. Hiring Team members are pre-created as Contact records with their role designation before any candidate records that reference them are loaded. This ensures that Crelate's lookup resolution (Id, FirstName, LastName) can attach references correctly without creating duplicate Contact records.
Staging migration and reconciliation
We run a full migration into Crelate's staging environment using production-equivalent record volume. The customer reconciles record counts (Contacts in, Jobs in, pipeline stage counts, tag distributions), spot-checks 25-50 random records against the VivaHR source, and validates that Scorecard ratings, Questionnaire answers, and Culture Profile content rendered correctly in Crelate. Any mapping corrections, missing fields, or tag mismatches are resolved here before production migration begins.
Production migration and cutover
We freeze writes in VivaHR during the cutover window, run a final delta extraction of any records modified since the staging migration, load the delta into Crelate production, and enable Crelate as the system of record. We deliver the Automation and Integration inventory document to the customer's admin team for rebuild in Crelate. We support a one-week hypercare window to resolve reconciliation issues. We do not rebuild VivaHR automations as Crelate automations inside the migration scope; that work is documented separately as a post-migration engagement.
Platform deep dives
VivaHR
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 VivaHR 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
VivaHR: Not publicly documented — confirm with VIVAHR support during scoping..
Data volume sensitivity
VivaHR 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 VivaHR to Crelate migration scoping. Not seeing yours? Book a call.
Walk through your VivaHR 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 VivaHR
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.