HRMS migration
Field-level mapping, validation, and rollback between Recooty and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
Recooty
Source
Zoho Recruit
Destination
Compatibility
9 of 13
objects map 1:1 between Recooty and Zoho Recruit.
Complexity
BStandard
Timeline
2-4 weeks
Overview
Moving from Recooty to Zoho Recruit is a structured ATS migration where the primary objects map cleanly but two schema asymmetries require explicit design decisions before data moves. First, Recooty Candidates do not enforce a Last Name field at import; Zoho Recruit requires Last Name as mandatory for every Candidate record, so we run a pre-flight pass to resolve null or placeholder Last Name values before the Candidate module import begins. Second, Recooty stores Interview Schedules and pipeline stage transitions as linked records; Zoho Recruit stores Interviews and Tasks as separate modules with different attachment models, requiring a parent-record resolution pass during the import. We also flag GDPR consent records and audit trail data from Recooty and migrate them as structured Candidate fields in Zoho Recruit, noting any consent lapses that occurred during the migration window. Workflows, the AI Bot Interviewer, and the AI Salary Estimator are platform-native features that do not have destination equivalents and are not migrated; we deliver a written inventory of any active workflows for the customer's admin to rebuild in Zoho Recruit's Blueprint and Workflow Rules.
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 Recooty 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.
Recooty
Job
Zoho Recruit
Job Opening
1:1Recooty Job records map to Zoho Recruit Job Opening. We map Recooty's title, description, location, department, employment type, and publishing status to Zoho's Job Opening fields. The Recooty job ID is preserved as a custom field recooty_job_id__c for cross-reference. Job Requisition Management fields in Zoho (req_number, hiring_team, approval status) are set to defaults unless the customer has structured requisition data in Recooty.
Recooty
Candidate
Zoho Recruit
Candidate
1:1Recooty Candidate records map to Zoho Recruit Candidate. Pre-flight is required: Zoho mandates Last Name as a non-null field. Recooty does not enforce Last Name, so candidates with null or placeholder last names are flagged during scoping and resolved with a 'Not Provided' default or by splitting a full-name field. Email address becomes the primary deduplication key across the Zoho Candidate table.
Recooty
Pipeline (per Job)
Zoho Recruit
Pipeline (Customizable)
lossyRecooty visual pipelines per job (Applied, Screening, Interview, Offer, Hired or customer-configured stages) map to Zoho Recruit's customizable pipeline stages on the Job Opening. Stage names and order transfer directly. We preserve the stage transition timestamps as candidate activity history in Zoho's interview and task records.
Recooty
Interview Schedule
Zoho Recruit
Interview + Task
1:manyRecooty Interview records (date, time, type, interviewer, candidate link) split into Zoho Recruit Interview records and a linked Task record for interviewer preparation. Calendar sync links from Recooty do not transfer; Zoho's own Google Calendar and Zoho Calendar integration is configured post-migration. Self-scheduling links are not migrated and must be rebuilt in Zoho.
Recooty
Application
Zoho Recruit
Candidate-Job Opening association
1:1Recooty application records (candidate ID + job ID + application date + source) map to the Zoho Candidate's association with a Job Opening. The application source field (Indeed, LinkedIn, direct) migrates as a text field; Zoho's Source Booster integration is configured separately post-migration to replace Recooty's board-level posting history.
Recooty
Custom Field (Candidate)
Zoho Recruit
Custom Field (Candidate module)
1:1Recooty custom candidate fields on Business and Enterprise plans map to Zoho Recruit custom fields on the Candidate module. Zoho Standard allows 50 custom fields per module; Enterprise allows 300. We pre-create destination fields during schema design, match data types (text, number, date, picklist), and flag any fields that exceed Zoho's tier limit for tier upgrade or field consolidation.
Recooty
Custom Field (Job)
Zoho Recruit
Custom Field (Job Opening module)
1:1Recooty custom job fields on Business and Enterprise plans map to Zoho Recruit custom fields on the Job Opening module. Same tier limits apply (50 Standard, 300 Enterprise). Job-level custom fields used for department classification or employment type encoding are mapped before job import begins.
Recooty
User / Team Member
Zoho Recruit
User
1:1Recooty team members map to Zoho Recruit Users. Matching is by email address. Any Recooty owner not found in the Zoho destination org is placed in a reconciliation queue for the customer's admin to provision before candidate import begins, since OwnerId references on Candidate records must be valid Zoho User IDs.
Recooty
GDPR Consent Record
Zoho Recruit
Custom Field (Candidate module) + Audit Note
1:1Recooty GDPR consent records (opt-in status, consent date, retention policy) map to custom fields on the Zoho Candidate record and an accompanying note with audit detail. Any candidate whose consent record shows a lapse or expiry during the migration window is flagged in the reconciliation report so the customer's admin can re-obtain consent before the candidate is contacted from Zoho.
Recooty
Note (Candidate-level)
Zoho Recruit
Note
1:1Recooty candidate notes migrate to Zoho Recruit Note records linked to the Candidate. Rich text formatting is preserved where possible; embedded file attachments migrate as separate Zoho Document Library entries linked to the Candidate.
Recooty
Task (Candidate-level)
Zoho Recruit
Task
1:1Recooty tasks linked to candidate records map to Zoho Recruit Task records with Status, Priority, and due date preserved. Task assignment migrates by resolving the Recooty owner email to the corresponding Zoho User ID. Completed status and timestamp transfer directly.
Recooty
Career Page (Branded)
Zoho Recruit
Career Site (Zoho)
lossyRecooty's drag-and-drop branded career page builder (Growth and above) generates hosted pages with builder state that cannot be exported as structured data. We preserve the job content and branding metadata but treat the career site URL, page layout, and builder state as non-migratable. The customer rebuilds the career page in Zoho Recruit's native Career Site builder post-migration.
Recooty
Job Board Posting History
Zoho Recruit
Source Booster + Job Board Integrations
lossyRecooty's board-level posting history (which job was published to which board at what time) is stored in Recooty's internal logs and is not exportable as structured data. We preserve the job content and the list of boards the customer reported using, but board publishing history is treated as non-migratable. The customer re-publishes jobs through Zoho Recruit's own job board integrations and Source Booster post-migration.
| Recooty | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Job | Job Opening1:1 | Fully supported | |
| Candidate | Candidate1:1 | Fully supported | |
| Pipeline (per Job) | Pipeline (Customizable)lossy | Fully supported | |
| Interview Schedule | Interview + Task1:many | Fully supported | |
| Application | Candidate-Job Opening association1:1 | Fully supported | |
| Custom Field (Candidate) | Custom Field (Candidate module)1:1 | Fully supported | |
| Custom Field (Job) | Custom Field (Job Opening module)1:1 | Fully supported | |
| User / Team Member | User1:1 | Fully supported | |
| GDPR Consent Record | Custom Field (Candidate module) + Audit Note1:1 | Fully supported | |
| Note (Candidate-level) | Note1:1 | Fully supported | |
| Task (Candidate-level) | Task1:1 | Fully supported | |
| Career Page (Branded) | Career Site (Zoho)lossy | Fully supported | |
| Job Board Posting History | Source Booster + Job Board Integrationslossy | 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.
Recooty gotchas
Tier-gated bulk import blocks high-volume migrations
GDPR audit trails require explicit cross-platform mapping
Job board posting history does not transfer between platforms
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
Discovery and API access audit
We audit the Recooty account across plan tier, active Jobs, Candidate records, pipeline configurations, Interview Schedules, custom field definitions, and GDPR compliance settings. We request API access or CSV export capability from both the Recooty Dashboard and the AI Dashboard (if used). We verify the Recooty plan tier because Starter-plan accounts cannot perform bulk exports, which affects the extraction method. The discovery output is a written migration scope document listing all objects, record counts, custom field inventories, and the extraction method chosen per module.
Pre-flight data quality and Last Name resolution
We run a Last Name validation pass against all Recooty Candidate records before any Zoho import begins. Records with null or placeholder Last Name values are flagged and resolved using the customer's preferred strategy (defaulting to 'Not Provided', parsing from a full-name field, or manual correction). We also deduplicate Recooty candidates by email address and flag any duplicate records for the customer to resolve. This pre-flight step is required before the Candidate import because Zoho Recruit silently rejects records without a Last Name.
Schema design and custom field provisioning in Zoho Recruit
We design the destination Zoho Recruit schema: custom fields are created on the Candidate and Job Opening modules (50 on Standard, 300 on Enterprise per module), pipeline stages are configured to match Recooty's pipeline structure, and custom picklist values are populated for any fields that use controlled vocabularies. If the customer is on Zoho Recruit Staffing Agency edition, we also configure the Clients and Contacts modules to align with any agency-specific data from Recooty. Schema is deployed into a Zoho sandbox or staging account first for validation.
Sandbox migration and reconciliation
We run a full migration into the Zoho Recruit staging environment with production-like data volume. The customer's HR or recruiting lead reviews record counts (Jobs in, Candidates in, Interviews in, Notes in), spot-checks 20-30 random candidate records against the Recooty source, and validates that pipeline stage assignments and custom field values are correctly populated. Any mapping corrections, custom field additions, or pipeline stage adjustments happen in this phase. Sign-off from the customer's lead is required before production migration begins.
Production migration in dependency order
We run production migration in record-dependency order: Users (reconciliation queue resolved first), Job Openings (parent records for candidates), Candidates (with Last Name pre-flight complete and custom fields provisioned), Interviews and Tasks (linked to Candidates by Zoho Candidate ID resolved at import time), Notes and attachments (linked to Candidates), and GDPR consent data (custom fields and audit notes). Each phase emits a row-count reconciliation report before the next phase begins. Zoho API rate limits (documented at up to 20,000 webhook calls/day on Enterprise) are handled with exponential backoff and batch chunking.
Cutover, delta migration, and workflow rebuild handoff
We freeze Recooty writes during cutover, run a final delta migration of any records modified during the migration window, then enable Zoho Recruit as the system of record. We deliver a written inventory of any Recooty workflows (triggers, conditions, and actions) and the AI feature usage summary for the customer's admin to rebuild using Zoho Recruit's Blueprint, Workflow Rules, and Assignment Rules. We do not rebuild workflows or automations as part of the migration scope. We provide a one-week hypercare window to resolve any data discrepancies reported by the recruiting team.
Platform deep dives
Recooty
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 Recooty 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
Recooty: Not publicly documented.
Data volume sensitivity
Recooty 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 Recooty to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your Recooty 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 Recooty
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.