A BambooHR to Zoho People migration is more straightforward than most teams expect, but the gaps between the two systems are specific enough to cause real pain if you go in blind. BambooHR is a well-structured HRIS with clean data exports; Zoho People has a different mental model for leaves, performance cycles, and org hierarchies. The primary keyword to keep in mind throughout this guide is the bamboohr to zoho people migration process itself: field mapping, leave policy recreation, and cutover timing. This guide walks through every stage from initial export to the 30-day parallel run, with field-level detail so your HR team does not spend a week discovering import errors in production.

Coworkers analyzing data charts on laptops during a team meeting.

What BambooHR Stores That Needs to Migrate

Before exporting anything, map what you actually have. BambooHR organises data into four broad categories, each with different migration complexity.

Employee records

Core employee data includes personal information (name, email, date of birth, address), employment details (hire date, job title, department, location, employment type), compensation history, and emergency contacts. BambooHR exports most of this cleanly to CSV. The exception is document attachments (offer letters, signed agreements): these are not included in standard exports and must be downloaded individually or via BambooHR’s API if you have access to it.

Time-off and leave balances

BambooHR tracks time-off types (vacation, sick, PTO, personal) with accrual rules, carry-over caps, and individual balances. The leave balance as of migration date is critical: if an employee has 12.5 days of accrued vacation, that number must be correctly imported into Zoho People’s opening balance field. Carry-over rules need to be manually recreated, not imported.

Org structure

BambooHR stores department names, manager-to-employee relationships, and locations. Zoho People uses “departments,” “designations,” and “locations” as separate configuration objects. The naming does not map one-to-one, so you will need to create these in Zoho People before importing employees, or the import will fail on blank lookup fields.

Performance and training records

Performance review cycles, goals, and training completions are the hardest to migrate because BambooHR’s export format for these is not structured for direct import into another system. Most teams archive this data in a spreadsheet for historical reference and start fresh in Zoho People.

Exporting from BambooHR: What Exports Cleanly and What Does Not

BambooHR’s Reports module generates CSV exports for almost everything. Navigate to Reports > Custom Reports and build reports for each data category separately. Do not try to export everything in one large report: the resulting CSV will have merged rows for employees with multiple records in the same field (such as previous job titles), which breaks import parsers.

Data categoryExport methodExport quality
Employee personal infoCustom report, all fieldsClean CSV
Employment detailsCustom report (separate)Clean CSV
Time-off balancesTime Off > Reports > Balance SummaryClean CSV
Time-off historyTime Off > Reports > Request HistoryClean CSV, needs date format check
Emergency contactsCustom reportClean CSV
Documents / attachmentsManual download onlyNo bulk export
Performance reviewsLimited export (PDF/summary)Not import-ready

For time-off history, check the date format in your export. BambooHR may output dates as M/D/YYYY while Zoho People expects YYYY-MM-DD. Run a find-and-replace or use a simple script to standardise before import.

One issue to address before export: if you have custom fields in BambooHR (e.g., “Shirt size” or “T4 province” or a custom employment contract type), document these now. Custom fields in BambooHR have no automatic equivalent in Zoho People. You will need to create matching custom fields in Zoho People first.

Setting Up Zoho People: Org Structure, Departments, and Custom Fields

Zoho People requires several configuration objects to exist before you can import employees. Importing employees without these in place results in blank lookup fields and failed validations.

Org setup sequence

  1. Organisation details (Settings > Organisation > Basic Info): company name, fiscal year start, default time zone, default currency.
  2. Locations (Settings > Organisation > Locations): create one record for each physical office or remote work region. Employees will be assigned to locations during import.
  3. Departments (Settings > Organisation > Departments): create a department for every department name in your BambooHR export. Name them exactly as they appear in the export CSV to allow exact-match import.
  4. Designations (Settings > Organisation > Designations): these are job titles. Create one for each unique title in the export.
  5. Employment types: Zoho People has defaults (Full-time, Part-time, Contract). If BambooHR uses different labels, map them here before import.

Custom fields

Go to Settings > Customization > Employee Forms. Add custom fields matching your BambooHR custom fields. Note the field API names carefully: these are what you will use as column headers in your import CSV.

Diverse team standing with 'New Hire' sign, symbolizing collaboration and teamwork.

Importing Employee Records: Required Fields, Date Formats, and Common Errors

Zoho People’s employee import tool (Settings > Data Management > Import) accepts CSV with specific required columns. The minimum required fields are: First Name, Last Name, Employee ID, Email, Date of Joining, Department, Designation, and Location.

Date format

All dates must be in the format configured under Settings > Organisation > Date Format. The default is MM/dd/yyyy. If your BambooHR export uses YYYY-MM-DD, convert the dates before import. Mismatched date formats are the most common cause of import failures and produce the error “Invalid date value.”

Employee ID

Zoho People requires a unique Employee ID for each record. BambooHR auto-generates numeric IDs (e.g., 1001, 1002). You can reuse these in Zoho People or generate new ones. If reusing, ensure there are no duplicates in the export before importing.

Manager assignment

Manager-employee relationships are imported using the manager’s Employee ID or email. Import employees in order: managers first, then their direct reports. If you import in a single batch, ensure the manager row appears before subordinate rows in the CSV, or the lookup will fail.

Common import errors and fixes

Error messageCauseFix
“Department not found”Department name in CSV doesn’t match Zoho People exactlyCheck for trailing spaces or case differences
“Invalid date value”Date format mismatchConvert all dates to match org date format setting
“Email already exists”Duplicate import or existing test userDeactivate or delete existing test records first
“Designation not found”Designation not pre-createdAdd the designation under Settings before re-importing
“Manager not found”Manager row not yet importedReorder CSV or import managers in a separate first pass

Recreating Leave Policies: BambooHR Time-Off to Zoho People Leave Types

Leave management is where the two systems diverge most. BambooHR uses “time-off types” with simple accrual rules. Zoho People uses “leave types” with more granular configuration: accrual frequency, carry-forward limits, encashment, pro-rata for mid-year joiners, and approval workflows as separate settings.

Mapping BambooHR time-off types to Zoho People leave types

For each BambooHR time-off type, create a matching leave type in Zoho People (Leave > Leave Type > Add). Configure:

Opening balances

After creating leave types, import opening balances from your BambooHR balance summary export. Go to Leave > Leave Balance > Import. The import CSV needs three columns: Employee ID, Leave Type, Balance (as a decimal, e.g., 12.5). This step is non-negotiable: without it, every employee starts at zero and your HR team will spend days correcting individual records.

Leave approval workflows

Zoho People separates leave approval workflows from leave types. After recreating leave types, set up approval chains under Settings > Leave > Leave Approval. The default is a single-level approval by the direct manager, which matches BambooHR’s standard behavior.

Performance Review and Appraisal Cycle Setup in Zoho People

Zoho People’s performance module (called “Performance Management” or PMS) uses a different structure than BambooHR’s Performance feature. BambooHR uses a single review cycle with self-assessments and manager assessments. Zoho People supports multi-rater reviews, goal cascading, competency frameworks, and separate appraisal and performance review cycles.

Setting up your first appraisal cycle

Go to Performance > Appraisal Cycles > Add Cycle. Configure the review period (e.g., Jan 1 to Dec 31), the appraisal window (when managers and employees fill in forms), the rating scale, and the review form template. Zoho People ships with default form templates; you can customise or clone them.

One important distinction: BambooHR reviews are often informal check-in style forms. If you have been using BambooHR’s lighter review features, do not try to replicate every field in Zoho People. Start with a simplified cycle and add complexity in subsequent periods once HR is familiar with the system.

Historical performance data

As noted earlier, BambooHR performance exports are not structured for direct import. Export past reviews as PDFs and store them in a shared drive linked from Zoho People’s document storage for each employee profile. This gives HR access to history without cluttering the new system’s data.

Onboarding Your HR Team to Zoho People: What Feels Different

HR administrators coming from BambooHR will notice several structural differences immediately.

Navigation

BambooHR uses a people-centric navigation (you click on an employee and see all their data). Zoho People uses a module-centric navigation (you go to Leave, then search for an employee). This is disorienting at first. The employee profile page does aggregate most data, but the path to get there is different.

Leave management interface

In BambooHR, time-off requests appear in a shared calendar and the HR team manages them from a unified inbox. In Zoho People, leave requests go through a formal approval workflow. The HR team will need to configure their notification preferences and approval roles before go-live.

Reporting

Zoho People’s reporting module is more configurable than BambooHR’s but requires more setup. The default reports cover headcount, leave balances, and attendance. Custom reports are built in a query builder interface. Plan to spend time in the first two weeks recreating the five to ten reports your HR team uses most often.

If your organisation is considering broader consolidation, check the Zoho One savings calculator to see whether bundling Zoho People with other Zoho apps under Zoho One reduces your total software cost compared to keeping BambooHR and separate point solutions.

Running Parallel for 30 Days: What to Track and When to Cut Over

Running both systems in parallel for 30 days is the safest cutover approach. The goal is not to use both systems for real work: it is to run Zoho People in shadow mode, comparing outputs to BambooHR to catch configuration errors before they affect payroll or leave balances.

What to track during the parallel period

Cutover checklist

Before switching fully to Zoho People, confirm the following:

  1. All employees are imported and have logged in at least once
  2. Leave balances match BambooHR as of cutover date
  3. All managers are correctly assigned in Zoho People’s org chart
  4. Leave approval workflows have been tested end-to-end
  5. Payroll integration (if applicable) has been validated with one pay period
  6. HR team has completed at least one full workflow in Zoho People without BambooHR as a reference

Once all six items are confirmed, set BambooHR to read-only access for 30 additional days. This gives HR a reference without any risk of duplicate changes. Cancel the BambooHR subscription after that window closes.

Frequently Asked Questions

How long does a BambooHR to Zoho People migration typically take?

For an organisation with 50 to 200 employees, the active migration work takes 2 to 4 weeks: 1 week for data export and cleanup, 1 week for Zoho People configuration, and 1 to 2 weeks for import, validation, and testing. The 30-day parallel run follows this. Larger organisations or those with complex leave policies, custom fields, or payroll integrations should budget 6 to 8 weeks for the full process.

Can BambooHR time-off history be imported into Zoho People?

Leave request history from BambooHR can be imported into Zoho People using the Leave History import feature under Leave > Leave Balance > Import History. The import requires Employee ID, Leave Type, From Date, To Date, and Status columns. You cannot import leave history that predates Zoho People’s configured leave types, so create all leave types first before running this import.

Does Zoho People integrate with BambooHR for a gradual migration?

There is no native integration between BambooHR and Zoho People. The migration is a one-time data transfer, not a sync. Some teams use Zoho Flow or Zapier to temporarily sync new employee records during the parallel period, but this adds complexity and is rarely necessary for organisations under 500 employees.

What happens to BambooHR electronic signatures and documents during migration?

BambooHR electronic signature documents cannot be bulk-exported in a format that transfers directly to Zoho People. You will need to download signed documents individually (or via BambooHR API) and upload them to the corresponding employee profile in Zoho People’s document storage. Future documents can be handled through Zoho Sign, which integrates natively with Zoho People.

Is Zoho People cheaper than BambooHR?

Zoho People pricing starts at lower per-employee rates than BambooHR for comparable feature tiers, and the gap widens significantly if you include Zoho People as part of a Zoho One licence, which covers over 40 Zoho applications. Organisations already using Zoho CRM, Zoho Books, or other Zoho apps typically see meaningful cost reduction by consolidating on Zoho One versus paying BambooHR separately.

Aaxonix helps HR and operations teams migrate from BambooHR to Zoho People, handling data mapping, leave policy configuration, and go-live validation so your HR team is not troubleshooting import errors alone. Book a free consultation and get a scoped migration plan based on your current employee count and system setup.

Book a free consultation

A BambooHR to Zoho People migration succeeds when the data work is done before the switch, not after. Export your BambooHR data now, clean the date formats and department names, and set up Zoho People’s org structure before importing a single employee record. The 30-day parallel run is not optional: it is the safety net that catches configuration errors before they affect your team’s leave balances or access. Follow the sequence in this guide and your HR team will be fully independent in Zoho People within 60 days.