HRMS migration
Field-level mapping, validation, and rollback between ApplicantStack and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.
ApplicantStack
Source
Crelate
Destination
Compatibility
10 of 12
objects map 1:1 between ApplicantStack and Crelate.
Complexity
BStandard
Timeline
2-3 weeks
Overview
ApplicantStack and Crelate occupy different segments of the ATS market — ApplicantStack serves small to mid-sized teams with a flat-rate budget model centered on SwipeClock ecosystem integration, while Crelate targets staffing and recruiting agencies with a CRM-anchored Living Platform that includes AI Co-Pilot features. The migration requires parsing ApplicantStack's CSV exports generated through the Reports builder (there is no live API migration endpoint), normalizing flat-file record structures into Crelate's relational schema, and resolving the duplicate-prone candidate records that ApplicantStack reviewers consistently report. We migrate Jobs/Positions, Candidates, Custom Questionnaires, User Accounts, Hiring Pipeline Stages, Attachments, and New Hire records where the Onboard module is active. Job board distribution settings, email templates with trigger logic, and Workflow configurations do not migrate; we deliver a written inventory of these for the customer's admin to rebuild in Crelate's automation tools. The pair shares a common migration constraint: both platforms export via CSV rather than real-time API, which means two export cycles (one for mapping, one for final cutover) are standard practice.
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 ApplicantStack 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.
ApplicantStack
Jobs/Positions
Crelate
Job Order (Recruit)
1:1ApplicantStack Positions map to Crelate Job Order records. Job metadata — title, description, status, and opening count — transfers as structured field data. ApplicantStack's job board distribution settings (Indeed, JobTarget, custom branded boards) are configuration-only data that do not carry forward; the job posting content migrates but the distribution connections must be re-established in Crelate's job distribution settings by the customer's admin. We flag any active job distribution configurations during discovery so they are not silently dropped.
ApplicantStack
Candidates
Crelate
Contact (Recruit type)
1:1Candidate records from ApplicantStack map to Crelate Contacts with the Recruit subtype. We extract name, email, phone, application date, resume, status, source, and notes as structured fields. The ApplicantStack duplicate detection gap is a known risk for this migration: we run deduplication against the destination Crelate org using email address, phone number, and normalized name strings, and flag likely duplicates for customer review before final import so that ApplicantStack's duplicate record accumulation does not carry forward into Crelate.
ApplicantStack
Custom Questionnaires
Crelate
Application Form + Custom Fields
1:1ApplicantStack Questionnaires (custom application forms) store responses as field-value pairs tied to the candidate record. We extract all custom field responses and map them to Crelate's custom field equivalents on the Contact record, creating the destination custom fields during the schema setup phase. Crelate's field mapping feature allows these form responses to write directly to Contact, Company, or Opportunity columns — we configure these mappings before migration so questionnaire data surfaces correctly in the candidate record. Any questionnaire logic (knockout questions, conditional branching) is documented separately as a configuration rebuild item for the customer's admin.
ApplicantStack
User Accounts (Recruiters/Hiring Managers/Admins)
Crelate
Users
1:1ApplicantStack user role assignments (Administrator, Recruiter, Hiring Manager) map to Crelate Users with equivalent access roles. We extract all user records with their role assignments and resolve them by email match against the destination Crelate org. Crelate's role model differs from ApplicantStack's three-role structure — we document the nearest equivalent role assignment for each migrated user during scoping. Users without a matching Crelate account go to a reconciliation queue for the customer's admin to provision before record import completes.
ApplicantStack
Hiring Pipeline Stages
Crelate
Pipeline Stage
lossyApplicantStack's configurable pipeline stages (Applied, Screening, Interview, Offer, Hired, Rejected) migrate as Crelate Pipeline stage values. We export the full ApplicantStack pipeline configuration and the per-candidate stage history, replaying the stage progression timeline as timestamped activities attached to each Contact in Crelate. The stage names are preserved as-is unless they conflict with Crelate's default stage vocabulary, in which case we map them to the nearest equivalent during transformation.
ApplicantStack
Attachments (Resumes, Cover Letters)
Crelate
Resume/Cover Letter Attachments
1:1Resume files, cover letters, and uploaded documents attached to ApplicantStack candidate records are extracted as binary blobs with their original file names preserved. We attach them to the corresponding Contact record in Crelate. File-type validation runs during extraction to confirm documents are PDF, DOCX, or other standard resume formats; any non-standard file types are flagged for customer review before import.
ApplicantStack
New Hire Records (ApplicantStack Onboard)
Crelate
Candidate Onboarding Records
1:1When ApplicantStack Onboard is active, new hire onboarding packets include I-9 data, tax forms, and custom onboarding documents. We extract these as structured records and separate document blobs. Crelate does not have a native onboarding module with the same I-9 tracking depth as ApplicantStack Onboard — we extract the onboarding data in its entirety and present it as a structured document set that the customer re-imports into their chosen onboarding tool (Crelate's onboarding portal if included in plan, or a third-party onboarding platform) rather than migrating onboarding as native records. We confirm which ApplicantStack product SKU (Recruit only, Onboard only, or bundled) is active during discovery to calibrate this scope.
ApplicantStack
Tags/Labels
Crelate
Tags
1:1Candidate tags and job labels from ApplicantStack export as flat tag arrays. We preserve all tags and apply them to the corresponding Contact records in Crelate. Crelate supports tagging on Contacts, Companies, and Job Orders. Where identical tags exist on multiple record types, we apply them to the relevant records. Tag merge logic handles cases where slightly different tag names may have resulted from ApplicantStack's duplicate detection gaps (e.g., a tag applied separately to two duplicate candidate records that we consolidate into one Crelate Contact).
ApplicantStack
Email Templates (with trigger logic)
Crelate
Email Templates (content only)
1:1ApplicantStack stores email template content used in candidate communication sequences. We export the template body text and variable placeholders as a content inventory. The automated trigger logic associated with these templates — the conditions under which emails are sent, timing delays, and enrollment rules — does not migrate because it is automation logic rather than content. We deliver a written inventory of each template with its trigger conditions and recommended Crelate automation rebuild, which uses Crelate's Automation and Sequencing tools (available from Business Plus tier). The customer's admin configures sequencing post-migration.
ApplicantStack
Custom Properties (Employer-Defined Fields)
Crelate
Custom Fields
1:1Custom properties added to Candidates or Jobs beyond ApplicantStack's standard schema are captured as key-value pairs. We map them to custom fields in Crelate, creating the destination properties during schema setup before any data import. Crelate's field type system (text, number, date, picklist, multi-select, checkbox) governs the mapping — we perform type inference from the ApplicantStack export values and flag any ambiguous mappings for customer confirmation before import. Employer-defined fields on Job Orders map to custom fields on the Crelate Job Order object.
ApplicantStack
Reports/Exports (CSV output)
Crelate
Crelate Import Mapping
lossyApplicantStack's CSV exports are our primary data source for migration. We parse the flat-file structure output by the Reports builder and normalize it into the relational schema required by Crelate's import. This includes expanding multi-valued fields (tags, sources), normalizing date formats, and resolving foreign-key-style references (e.g., Owner ID to a user email) that ApplicantStack embeds as raw values. We build a mapping configuration file during the development phase that governs how each ApplicantStack CSV column maps to the Crelate import field.
ApplicantStack
Workflows and Automation Rules
Crelate
Automation Inventory (no migration)
1:1ApplicantStack Workflows and automation rules are configuration data that do not export. We document every active ApplicantStack workflow — its trigger, conditions, actions, and active/enrollment status — as a written handoff item for the customer's admin to rebuild in Crelate's Automation and Sequencing tools (Business Plus tier). This includes any custom workflow automation built at the Business tier. The document includes recommended Crelate equivalents for each automation pattern so the admin has a rebuild guide rather than a blank slate.
| ApplicantStack | Crelate | Compatibility | |
|---|---|---|---|
| Jobs/Positions | Job Order (Recruit)1:1 | Fully supported | |
| Candidates | Contact (Recruit type)1:1 | Fully supported | |
| Custom Questionnaires | Application Form + Custom Fields1:1 | Fully supported | |
| User Accounts (Recruiters/Hiring Managers/Admins) | Users1:1 | Mapping required | |
| Hiring Pipeline Stages | Pipeline Stagelossy | Fully supported | |
| Attachments (Resumes, Cover Letters) | Resume/Cover Letter Attachments1:1 | Fully supported | |
| New Hire Records (ApplicantStack Onboard) | Candidate Onboarding Records1:1 | Fully supported | |
| Tags/Labels | Tags1:1 | Mapping required | |
| Email Templates (with trigger logic) | Email Templates (content only)1:1 | Fully supported | |
| Custom Properties (Employer-Defined Fields) | Custom Fields1:1 | Mapping required | |
| Reports/Exports (CSV output) | Crelate Import Mappinglossy | Fully supported | |
| Workflows and Automation Rules | Automation Inventory (no migration)1: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.
ApplicantStack gotchas
Trial limits visibility to first 100 candidates
Pricing is per-user including all roles
Export is report-based, not a live database query
Duplicate detection gaps create record overlap
Onboarding module is a separate product SKU
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 ApplicantStack product SKU confirmation
We audit the source ApplicantStack account to confirm the active product SKU (Recruit only, Onboard only, or bundled), candidate count, job count, active user count, custom questionnaire count, and whether any custom employer-defined fields exist beyond the standard schema. We also confirm whether the source account is a trial (with the 100-candidate visibility cap) or a paid subscription. The discovery call covers the ApplicantStack pipeline stage configuration, active email templates, and any automated workflows that the customer wants documented for rebuild. We extract all relevant records from ApplicantStack's Reports builder in CSV format during this phase, working with the customer's admin to build the export templates needed for all migration objects.
Crelate org setup and schema design
We create the destination schema in Crelate before any data import begins. This includes provisioning custom fields on Contact, Company, and Job Order to receive ApplicantStack custom properties; configuring the pipeline stages to match the ApplicantStack stage vocabulary; setting up Tags; and creating any custom forms needed to receive questionnaire responses. If Crelate's role model requires adjustments to match the ApplicantStack role structure, we document the mapping. Schema setup runs in Crelate's admin interface and is validated before the first record is imported.
Deduplication strategy and duplicate review
We run ApplicantStack candidate records through a deduplication pipeline using email address, phone number, and normalized name string matching. Candidates identified as likely duplicates (same person applied under different email addresses or slight name variations, a known ApplicantStack gap) are flagged for customer review before the final import. We provide the customer with a duplicate review sheet listing each flagged candidate pair, the source of the duplicate detection, and the recommended resolution (merge into one Crelate Contact or keep as separate records). The customer's confirmation on duplicates governs the import logic. Skipping this step allows ApplicantStack's duplicate accumulation to carry into Crelate from day one.
Test migration and reconciliation
We run a full test migration into a Crelate staging environment using production data volume. The customer's recruiting lead reviews 25-50 spot-checked candidate records against the ApplicantStack source, verifies that questionnaire responses map to the correct custom fields, confirms that pipeline stage history appears on the Contact timeline, and validates that attachment files are correctly associated. Any mapping corrections, field type issues, or missing data are resolved in the test migration before the production cutover. We emit a record-count reconciliation report after each test run showing Contacts imported, Jobs imported, attachments processed, and duplicates resolved.
Production migration and cutover
We freeze writes in ApplicantStack during the production cutover window and extract a final delta CSV capturing any records created or modified since the initial export. We run the production migration in record-dependency order: Job Orders first, then Contacts (with deduplication applied), then pipeline stage history as timeline activities, then attachments, then custom field data. Tags and labels apply to the relevant records during import. After each phase completes, we reconcile row counts against the source CSV before proceeding to the next phase. The migration run completes overnight or over a weekend to minimize operational impact.
Post-migration handoff and automation rebuild inventory
We deliver the migration completion report with record counts, any records that could not be imported (and the reason for each), and a duplicate resolution log. We deliver the written workflow and automation inventory documenting every active ApplicantStack automation with its trigger conditions, actions, and recommended Crelate Automation and Sequencing rebuild. We deliver the job board distribution configuration inventory documenting all active distribution settings for manual rebuild in Crelate. We support a one-week post-migration window for reconciliation issues raised by the customer's recruiting team. We do not rebuild ApplicantStack Workflows or email sequences inside the migration scope; those are separate configuration engagements for the customer's admin.
Platform deep dives
ApplicantStack
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 ApplicantStack 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
ApplicantStack: Not publicly documented.
Data volume sensitivity
ApplicantStack 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 ApplicantStack to Crelate migration scoping. Not seeing yours? Book a call.
Walk through your ApplicantStack 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 ApplicantStack
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.