HRMS migration
Field-level mapping, validation, and rollback between Yello and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
Yello
Source
Zoho Recruit
Destination
Compatibility
8 of 13
objects map 1:1 between Yello and Zoho Recruit.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Yello to Zoho Recruit is primarily a schema translation and export-to-import migration. Yello does not publish a public API, so we work from structured CSV exports, extracting Candidates, Job Requisitions, Events, Evaluations, Notes, and Attachments in dependency order. Zoho Recruit provides its own CSV import tool with module mapping and field mapping screens, but we bypass those screens by writing directly to Zoho Recruit's API endpoints, which gives us control over custom field types, lookup resolution, and duplicate handling that the native import wizard does not expose. We discover Yello's custom field list during scoping from a sample export, generate a field-mapping table before migration begins, and flag any multi-day Event records that require date-range splitting. Workflow Rules, Blueprints, and Assignment Rules in Zoho Recruit are not migrated as code; we deliver a written inventory of these for the customer's admin to rebuild. User provisioning and mandatory-field compliance (Zoho Recruit requires Last Name on every Candidate) are resolved during the reconciliation phase before any bulk record write.
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 Yello object lands in Zoho Recruit, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
Yello
Candidate
Zoho Recruit
Candidate
1:1Yello Candidate records map directly to Zoho Recruit Candidate. We extract first name, last name, email, phone, address, source, pipeline stage, tags, and all custom Candidate properties. Zoho Recruit requires Last Name as a mandatory field on every Candidate; any Yello Candidate without a last name (e.g., mononyms or corporate entity names) receives a placeholder value of 'Not Provided' per Zoho's import specification. Custom Candidate fields from Yello map to Zoho custom fields, which must be pre-created during the schema design phase because Zoho's Standard plan limits custom fields to 50 per module.
Yello
Requisition
Zoho Recruit
Job Opening
1:1Yello Job Requisitions map to Zoho Recruit Job Opening. We extract title, department, location, headcount, status, and any custom Requisition fields. The Requisition-to-Job Opening mapping is sequenced first in the migration order because Job Opening ID is a required lookup on Candidate records (via the Apply for a Job module). Active Requisitions map to Zoho's Open status; closed and filled Requisitions map to Closed status.
Yello
Event
Zoho Recruit
Event
lossyYello Campus Events map to Zoho Recruit Event records. Yello Events can span multiple days and venues in a single record; the standard export represents a multi-day Event as a single record with a date range. We parse the date range, split into individual daily Event records, and write each as a separate Zoho Event with a reference to the parent Event name for grouping. Registration lists and Candidate attendance records attach to the Event via Zoho's Candidate_Event linkage.
Yello
Evaluation
Zoho Recruit
Interview Feedback Form
1:1Yello Evaluations (structured feedback records including scores, comments, and evaluator attribution tied to a specific Pipeline Stage) map to Zoho Recruit Interview Feedback Form records. Custom evaluation forms with non-standard field names require a field-mapping table generated during discovery. We map each Yello evaluation score field to a corresponding Zoho custom field or standard rating field, and preserve evaluator name and timestamp.
Yello
Note
Zoho Recruit
Note
1:1Yello Notes (free-text conversation history and recruiter commentary attached to Candidates) migrate to Zoho Recruit Note records. We extract the note body, author name, and timestamp. Notes are written to the Candidate's record via Zoho's Note module with the Parent ID set to the migrated Candidate ID. HTML formatting in Yello notes is preserved as rich text where Zoho supports it.
Yello
Tag
Zoho Recruit
Tag
1:1Yello flexible candidate labels (typically school, degree, role, or recruiting season tags) migrate to Zoho Recruit Tag records. Tags are extracted as a flat list per Candidate and written to Zoho as Tag records with a Candidate_Tag linkage. Tag names longer than Zoho's character limit are truncated to 50 characters per Zoho field specification.
Yello
Pipeline Stage
Zoho Recruit
Hiring Pipeline Stage
lossyYello configurable hiring stage names and ordering map to Zoho Recruit Hiring Pipeline stages. We extract the stage name, position in the sequence, and active/inactive status. Stage ordering is preserved by writing stages in ascending position order during Zoho pipeline configuration. Zoho Recruit allows multiple pipelines (each with its own stage sequence) which mirrors Yello's pipeline configuration for teams using multiple concurrent recruiting tracks.
Yello
Attachment
Zoho Recruit
Resume / Document
1:1Yello binary attachments (resumes, cover letters, portfolio items) associated with Candidates migrate to Zoho Recruit's Candidate document storage. We extract the file blob, filename, and MIME type, and write to Zoho's Candidate Resume field or Document module depending on the destination Zoho edition. Files exceeding 25 MB per Zoho upload limits are flagged for manual re-upload by the customer's admin.
Yello
User
Zoho Recruit
User
1:1Yello internal recruiter and admin user accounts map to Zoho Recruit User records by email address match. Zoho Recruit requires each migrating user to not have an existing separate Zoho Recruit account (per Zoho's migration documentation); users with pre-existing Zoho accounts are placed in a reconciliation queue for the customer's admin to close before import. Role and permission parity is out of scope for the data migration.
Yello
Custom Field (Candidate-level)
Zoho Recruit
Custom Field (Candidate module)
lossyYello Candidate-level custom properties are audited during the discovery phase and mapped to Zoho Recruit custom Candidate fields. We generate a field-mapping table covering Yello field name, data type, and Zoho equivalent field type (text, number, date, picklist, checkbox). Zoho Standard limits custom fields to 50 per module; Enterprise raises this to 300 per module. Custom fields that exceed the plan limit are flagged and the customer must upgrade or omit fields before migration.
Yello
Custom Field (Requisition-level)
Zoho Recruit
Custom Field (Job Opening module)
lossyYello Requisition-level custom properties map to Zoho Recruit custom Job Opening fields. Same discovery and mapping process as Candidate-level custom fields. The mapping table is reviewed with the customer's admin before schema creation to ensure field type compatibility (e.g., date fields in Yello map to Zoho date fields, not text).
Yello
Source
Zoho Recruit
Source
1:1Yello Candidate source attribution (LinkedIn, Referral, Job Board, Event, etc.) migrates to Zoho Recruit Candidate Source field. We extract the source label and write as a Zoho picklist value, creating the picklist entry if it does not already exist. Sources without a match in Zoho's existing picklist are created as new picklist values during the migration.
Yello
Engagement / Activity
Zoho Recruit
Task / Call / Event
1:manyYello engagement history (interview scheduling activities, recruiter interactions tied to Candidates) maps to Zoho Recruit Tasks, Calls, and Events. We extract the activity type, subject, date, and outcome, and write to the appropriate Zoho module. Tasks map to Zoho Task; phone-based interactions map to Zoho Call; meeting-based interactions map to Zoho Event. All activities are linked to the migrated Candidate via Zoho's Candidate lookup.
| Yello | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Candidate | Candidate1:1 | Fully supported | |
| Requisition | Job Opening1:1 | Fully supported | |
| Event | Eventlossy | Fully supported | |
| Evaluation | Interview Feedback Form1:1 | Fully supported | |
| Note | Note1:1 | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| Pipeline Stage | Hiring Pipeline Stagelossy | Fully supported | |
| Attachment | Resume / Document1:1 | Fully supported | |
| User | User1:1 | Fully supported | |
| Custom Field (Candidate-level) | Custom Field (Candidate module)lossy | Fully supported | |
| Custom Field (Requisition-level) | Custom Field (Job Opening module)lossy | Fully supported | |
| Source | Source1:1 | Fully supported | |
| Engagement / Activity | Task / Call / Event1:many | 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.
Yello gotchas
No documented public API forces export-based migration
Custom field discovery must happen before migration scoping
Event multi-day structure requires flattening during export
Zoho Recruit gotchas
Daily API rate limits are tier-gated and per-user capped
User import hard cap of 2,000 records
Attachment folder hierarchy must be preserved exactly
Resume parsing quota varies by plan and resets daily
Custom fields unavailable in Free and Standard editions
Pair-specific challenges
Migration approach
Export coordination and discovery
We coordinate with the customer's Yello admin to generate a full data export including Candidates, Requisitions, Events, Evaluations, Notes, Attachments, Tags, and Users. We request a sample export with all columns visible (including custom fields) for schema discovery. We review the export structure, identify multi-day Events requiring date-range splitting, flag any Candidates without last names, and produce a preliminary field-mapping table. This phase concludes with a written migration scope and field-mapping document signed off by the customer.
Zoho Recruit schema design and custom field provisioning
We design the Zoho Recruit destination schema before any data writes. This includes pre-creating all custom Candidate and Job Opening fields (with correct data types per Zoho field type specification), configuring Hiring Pipelines and stages to mirror Yello's pipeline structure, and setting up the Candidate Source picklist with values from Yello. Zoho's limits (50 custom fields per module on Standard; 300 on Enterprise) are validated against the discovered field count. Schema changes are deployed to the destination Zoho Recruit org via API or manual configuration before migration begins.
User reconciliation and pre-existing account resolution
We extract all distinct Yello user email addresses referenced on Candidate, Requisition, Evaluation, and Event records and match by email against the destination Zoho Recruit org's User table. Users with matching pre-existing Zoho Recruit accounts are flagged for the customer's admin to close or consolidate. Users without a match are placed in a provisioning queue. Migration cannot proceed past the User reconciliation step because Owner and Assignee lookups on records reference Zoho User IDs. We recommend the customer's admin provisions all needed Users in Zoho Recruit before record migration begins.
Record migration in dependency order
We run record migration in the following dependency order: Users (validated, no records written until User provisioning is confirmed), Job Openings (parent to Candidates), Hiring Pipelines and Stages (configuration), Candidates (with Last Name substitution applied, custom fields mapped, and Tags linked), Evaluations (linked to Candidate by Candidate ID resolved from Phase 2), Notes (linked to Candidate), Events (with multi-day splitting applied), Attachments (written after Candidate import with Candidate ID resolved), and Source picklist values (created as needed). Each phase emits a row-count reconciliation report showing records written, skipped, and errored before the next phase begins.
Sandbox validation and delta migration
If the destination Zoho Recruit org has an active sandbox environment, we run a full migration into sandbox first using production-like data volume. The customer's recruiting operations lead reconciles record counts and spot-checks 25-50 random Candidate and Job Opening records against the Yello source for field accuracy, tag completeness, and attachment presence. Any mapping corrections are applied to the migration scripts before production migration. After sandbox sign-off, we run a delta export from Yello to capture any records created or modified during the sandbox validation window.
Production cutover and Workflow rebuild handoff
We freeze Yello writes during cutover, run the final delta migration, and enable Zoho Recruit as the system of record. We deliver a written inventory of Zoho Recruit Workflow Rules, Blueprints, and Assignment Rules requiring rebuild (these are not migrated as code). We include a field-by-field reference of every migrated Yello custom field with its Zoho equivalent for the customer's admin to use during workflow configuration. We support a one-week hypercare window for reconciliation issues. We do not rebuild Workflows or automations inside the migration scope; that work is a separate engagement.
Platform deep dives
Yello
Source
Strengths
Weaknesses
Zoho Recruit
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 Yello and Zoho Recruit.
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
Yello: Not publicly documented. Yello's API is enterprise-focused and operates under customer-specific service agreements rather than a public per-minute quota..
Data volume sensitivity
Yello exposes a bulk API — large-volume migrations stream efficiently.
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 Yello to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your Yello to Zoho Recruit migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave Yello
Other ways to arrive at Zoho Recruit
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.