HRMS migration
Field-level mapping, validation, and rollback between Greenhouse and Zoho Recruit. We move data and schema; workflows are rebuilt natively in Zoho Recruit.
Greenhouse
Source
Zoho Recruit
Destination
Compatibility
12 of 13
objects map 1:1 between Greenhouse and Zoho Recruit.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Moving from Greenhouse to Zoho Recruit is primarily a record migration with some structural translation required. Greenhouse organizes hiring around Candidate, Application, and Job objects with structured interview scorecards tied to Interview Plans; Zoho Recruit uses a Candidate module that collapses the candidate profile and application into one record, with separate Job and Evaluation form structures. We split Greenhouse's Candidate-Application relationship into Zoho Recruit's candidate record plus an application association, preserve Greenhouse custom field values across all supported value types (single_select, multi_select, currency, date, user reference), and map Greenhouse scorecard ratings to Zoho Recruit evaluation form fields. Greenhouse Job Posts and Workflows do not migrate; we deliver a written inventory of active Greenhouse workflows for the customer's admin to rebuild in Zoho Recruit's workflow builder. We use the Greenhouse Harvest API v3 with OAuth 2.0 for extraction and Zoho Recruit's REST API for ingestion, handling bulk candidate imports with chunking and dedupe-key resolution against Zoho Recruit's Email field.
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 Greenhouse 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.
Greenhouse
Candidate
Zoho Recruit
Candidate
1:1Greenhouse Candidate records map to Zoho Recruit Candidate module. We preserve all standard fields (first_name, last_name, email, phone, social URLs, tags) and Greenhouse custom field values across value types including single_select, multi_select, currency, date, yes_no, and user reference. Email serves as the dedupe key during import. Candidates with no email are assigned a generated placeholder and flagged in the reconciliation report for manual review.
Greenhouse
Application
Zoho Recruit
Candidate (Application association)
1:manyGreenhouse Application records (which link a Candidate to a Job with stage, status, and timestamps) split into Zoho Recruit's Candidate record plus a Job Application association. Application date, rejection or hire status, current stage, and stage history timestamps map to Zoho Recruit's candidate record fields and activity log. The Candidate-Job linkage is preserved via Zoho Recruit's candidate_job_interview table. Rejection reasons migrate as a text field on the candidate record.
Greenhouse
Job
Zoho Recruit
Job
1:1Greenhouse Job records (requisition-level) map to Zoho Recruit Job module. We preserve job title, department, office location, open/closed status, opening date, and job description. Greenhouse departments map to Zoho Recruit's Department field; tiered office hierarchies (Plus/Pro feature) collapse to the top-level office unless Zoho Recruit's organizational structure supports a comparable hierarchy. Job posting URLs migrate as reference links rather than active posting records.
Greenhouse
Offer
Zoho Recruit
Offer
1:1Greenhouse Offers (compensation packages attached to an Application) map to Zoho Recruit Offer. We preserve start date, salary, equity, and custom offer fields. Offer status (pending, accepted, declined, retracted) migrates to Zoho Recruit's Offer Status field. Offer letter documents migrate as attachments linked to the Offer record.
Greenhouse
Scorecard
Zoho Recruit
Evaluation Form
1:1Greenhouse scorecards (structured evaluator feedback tied to Interview Plans) map to Zoho Recruit Evaluation Forms. Each Greenhouse Interview Plan becomes a Zoho Recruit evaluation template with rating questions migrated as criteria fields. Selected ratings and structured feedback map to Zoho Recruit's rating values; free-text comments migrate as text fields. Greenhouse scorecard ratings are numeric or structured labels; we map them to Zoho Recruit's 1-5 or custom rating scale. Scorecards tied to multiple evaluators become multiple Zoho Recruit evaluation submissions linked to the same candidate-job pairing.
Greenhouse
Pipeline Stage
Zoho Recruit
Job Pipeline Stage
1:1Greenhouse pipeline stages define the hiring workflow. We preserve stage names, order, and stage-specific questions. Custom stage names map directly to Zoho Recruit's pipeline stage field within the Job module. Stage order is preserved via the sort order property. Stage-specific scorecard questions are handled in the Evaluation Form mapping.
Greenhouse
User
Zoho Recruit
Staff
1:1Greenhouse Users (recruiters, hiring managers, site admins) map to Zoho Recruit Staff records. We map name, email, and role assignment. Greenhouse's role types (Site Admin, Recruiter, Hiring Manager) map to Zoho Recruit's permission groups. Owner assignment on Candidate, Application, and Job records is remapped to Staff IDs in the destination via email-based lookup.
Greenhouse
Custom Field
Zoho Recruit
Custom Field
1:1Greenhouse custom fields across all supported value types (short_text, long_text, yes_no, single_select, multi_select, currency, number, date, url, user_reference) map to Zoho Recruit custom fields of equivalent type. We pre-create the destination custom fields in Zoho Recruit before migration begins. Multi-select values in Greenhouse map to Zoho Recruit multi-select picklists or tag fields depending on the customer's Zoho Recruit configuration. User reference fields resolve via the Staff mapping to maintain the reference integrity.
Greenhouse
Office and Department
Zoho Recruit
Department
1:1Greenhouse offices and departments (flat on Core, hierarchical on Plus/Pro) map to Zoho Recruit Department. We preserve flat structure universally; hierarchical structures require Plus or Pro in Greenhouse and may require manual Zoho Recruit org structure configuration if the destination supports department nesting. We flag any multi-level hierarchy for the customer's admin to configure post-migration.
Greenhouse
Tag
Zoho Recruit
Tag
1:1Greenhouse tags on Candidates and Applications migrate as tags in Zoho Recruit. Greenhouse allows unlimited tags per record; we preserve them as-is and map them to Zoho Recruit's tag field on the Candidate module. Tagsets in Greenhouse map as tag categories if Zoho Recruit's tagging model supports categorization.
Greenhouse
Activity / CRM Event
Zoho Recruit
Activity
1:1Greenhouse Plus and Pro CRM events (calls, emails, meetings, notes) map to Zoho Recruit Activity records linked to the Candidate or Job. Core tier customers with single CRM event type map all activities to Zoho Recruit's general Activity log. Note content migrates as Zoho Recruit notes attached to the Candidate record. Meeting and call metadata (duration, attendee list) migrates to custom Activity fields.
Greenhouse
Candidate Document
Zoho Recruit
Attachment
1:1Resumes, cover letters, and portfolio files attached to Greenhouse Candidates or Applications migrate as Zoho Recruit attachments linked to the Candidate record. We handle file type detection and preserve the original filename. Binary blobs are uploaded via Zoho Recruit's file upload API and linked via the attachment reference ID.
Greenhouse
Source Tracking
Zoho Recruit
Source
1:1Greenhouse candidate source attribution (referral, job board, direct apply) migrates to Zoho Recruit's Source field on the Candidate. Sourcing campaign UTM data stored in Greenhouse custom fields migrates to corresponding Zoho Recruit custom fields to preserve attribution reporting.
| Greenhouse | Zoho Recruit | Compatibility | |
|---|---|---|---|
| Candidate | Candidate1:1 | Fully supported | |
| Application | Candidate (Application association)1:many | Fully supported | |
| Job | Job1:1 | Fully supported | |
| Offer | Offer1:1 | Fully supported | |
| Scorecard | Evaluation Form1:1 | Fully supported | |
| Pipeline Stage | Job Pipeline Stage1:1 | Fully supported | |
| User | Staff1:1 | Fully supported | |
| Custom Field | Custom Field1:1 | Fully supported | |
| Office and Department | Department1:1 | Fully supported | |
| Tag | Tag1:1 | Fully supported | |
| Activity / CRM Event | Activity1:1 | Fully supported | |
| Candidate Document | Attachment1:1 | Fully supported | |
| Source Tracking | Source1: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.
Greenhouse gotchas
Bulk candidate import requires Plus or Pro tier
Active candidate migration is entirely manual
Historical migration takes 4–6 weeks for Greenhouse to process
Developer sandbox and audit log are Pro-only
CRM event limits in Core tier constrain activity history
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 tier validation
We audit the source Greenhouse account across tier (Core/Plus/Pro), pipeline count, active jobs, historical applications, scorecard types, custom field definitions, user accounts, office/department hierarchy, and engagement/activity volume. We validate the customer's Greenhouse tier because it determines the bulk import strategy (Plus/Pro guided import vs Harvest API routing for Core). We also identify any Pro-tier-only features in use (audit log, developer sandbox) that would not transfer to Zoho Recruit. The discovery output is a written migration scope with object inventory, custom field manifest, and bulk import path recommendation.
Schema design and Zoho Recruit field pre-creation
We design the destination schema in Zoho Recruit before any data moves. This includes creating custom fields (matched to Greenhouse custom field types), configuring pipeline stages in the Job module to mirror Greenhouse stage names and order, setting up evaluation form templates mapped from Greenhouse Interview Plans, configuring department and office structures, and defining tag categories. Zoho Recruit's field-level customization API handles custom field creation. We deploy into a Zoho Recruit sandbox or trial org first for validation before production migration.
Sandbox migration and reconciliation
We run a full migration into a Zoho Recruit sandbox environment using production-equivalent data volume. The customer's recruiting ops lead reconciles record counts (Candidates in, Jobs in, Applications in, Offers in, evaluation forms in), spot-checks 25-50 random candidate records against the Greenhouse source, validates that Greenhouse scorecard ratings landed in the correct Zoho Recruit evaluation form fields, and signs off the schema and mapping before production migration begins. Any field mapping corrections, custom field type adjustments, or evaluation form template issues are resolved in sandbox.
Staff mapping and user provisioning
We extract every distinct Greenhouse User referenced on Candidate, Application, Job, and Offer records and match by email against Zoho Recruit's Staff table. Staff without a matching Zoho Recruit user go to a reconciliation queue. The customer's Zoho Recruit admin provisions any missing Staff records before record import resumes, since Owner and assignee fields in Zoho Recruit require a valid Staff reference. We also map Greenhouse role types (Site Admin, Recruiter, Hiring Manager) to Zoho Recruit permission groups during this step.
Production migration in dependency order
We run production migration in record-dependency order: Departments and offices (if structural hierarchy is configured), Jobs (requisition-level), Candidates (with custom fields, tags, and source tracking), Offers (linked to Candidate and Job), Applications (reconstructed as Candidate-Job associations with stage history and rejection reasons), Evaluation Forms (mapped from Greenhouse scorecards with evaluator ratings), Activities (mapped from Greenhouse CRM events for Plus/Pro customers), and Attachments (binary files linked to Candidate records). Each phase emits a row-count reconciliation report before the next phase begins. We use Greenhouse's Harvest API v3 with OAuth 2.0 for extraction and Zoho Recruit's REST API for ingestion with chunking and email-based dedupe key resolution.
Cutover, delta migration, and workflow handoff
We coordinate a freeze period where no new Greenhouse records are created or modified during final extraction. We run a delta migration of any records modified during the migration window, then enable Zoho Recruit as the system of record. We deliver the Greenhouse workflow inventory document to the customer's admin team with recommended Zoho Recruit Workflow Rule equivalents. We support a one-week hypercare window where we resolve any reconciliation issues raised by the recruiting team. We do not rebuild Greenhouse workflows as Zoho Recruit workflow rules inside the migration scope; that is a separate engagement or an internal admin task. We do not migrate Greenhouse Job Posts; the customer's team republishes from Zoho Recruit post-migration.
Platform deep dives
Greenhouse
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 Greenhouse 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
Greenhouse: Not publicly documented with specific numbers; rate limits are applied separately for custom integrations and partner integrations with separate policies for each.
Data volume sensitivity
Greenhouse 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 Greenhouse to Zoho Recruit migration scoping. Not seeing yours? Book a call.
Walk through your Greenhouse 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 Greenhouse
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.