Phase 0
Decide & Plan
Lock scope, ownership, and constraints before any export job runs.
-
Risk if skipped: Mid-project scope additions force re-running mapping, sandbox tests, and access-level design from the start.
-
Risk if skipped: Without an explicit cut-off, the export expands into a multi-year dump that no one budgeted for transforming.
-
Risk if skipped: Discovering the US-only payroll constraint after employees are loaded forces a parallel payroll project under time pressure.
-
Risk if skipped: Mapping work targeted at a module that is later cut wastes weeks of transform engineering.
-
Risk if skipped: Legal blocks the import on go-live day when residency or DPA review was not completed earlier.
-
Risk if skipped: A cutover during payroll close forces a partial cutover and a hand-reconciled pay run.
Phase 1
Pre-Migration Prep
Source-system cleansing and destination-tenant configuration before any export.
1a. Source-system audit and cleansing
-
Risk if skipped: Duplicate source rows merge into a single employee record and historical compensation rows attach to the wrong person.
-
Risk if skipped: Country-field rejections halt the import row-by-row instead of failing the file once at the top.
-
Risk if skipped: Without a count baseline you cannot prove later whether a number mismatch is a migration loss or a source-side change.
1b. Destination-tenant setup
-
Risk if skipped: Skipping a sandbox means production becomes the test environment, and the Import Tool has no undo.
-
Risk if skipped: A wrong company time zone shifts every imported datetime by hours and corrupts PTO accrual day boundaries.
-
Risk if skipped: Importing a value that is not in the BambooHR list silently drops the field, leaving employees with blank departments and bad reports.
-
Risk if skipped: Importing into a field that does not exist yet drops the data on the row with no error indication.
-
Risk if skipped: Loading balance adjustments before a policy exists strands the balance with nowhere to attach.
-
Risk if skipped: Active notification workflows fire during bulk import and spam employees with onboarding notifications for back-dated hires.
1c. People prep
-
Risk if skipped: Source-system changes after the freeze produce a delta the cutover plan cannot reconcile cleanly.
Phase 2
Source Export
Pull every object you will need out of the source system in a transformable shape.
-
Risk if skipped: Collapsing history into a current snapshot loses the audit trail that the BambooHR Job Info table is designed to preserve.
-
Risk if skipped: Loading only a current pay rate loses the comp ladder used by retention analysis and pay-equity reviews.
-
Risk if skipped: Without a ledger you can only restore today's balance, not the audit trail needed for legal and payroll disputes.
-
Risk if skipped: A manager who is missing from the file or whose email is misspelled breaks the entire branch below them in the org chart.
-
Risk if skipped: Without metadata you have a folder of files no one can re-attach to the right employee.
Phase 3
Transform & Map
Turn raw source files into BambooHR-shaped imports.
3a. Master mapping spreadsheet
-
Risk if skipped: Without one source of truth, two engineers map the same field two different ways and the discrepancy surfaces only at validation.
-
Risk if skipped: A picklist value that does not exist in BambooHR drops the field on that row with no error marker.
3b. Data transformation
-
Risk if skipped: MM/DD vs DD/MM ambiguity silently swaps day and month on every row.
-
Risk if skipped: Mis-encoded files corrupt accented characters on import and force a name fix per employee after the fact.
3c. Audit-trail and ownership strategy
-
Risk if skipped: Field history starts on cutover day with no way to back-fill, surprising auditors and tenure reports.
3d. HRMS-specific transforms
-
Risk if skipped: An EEO Job Category that does not match the destination list leaves the field blank and breaks EEO-1 reporting at year-end.
-
Risk if skipped: A wrong opening balance shows up the first day employees log in and erodes confidence in the system within 24 hours.
-
Risk if skipped: Out-of-order effective dates load the history backwards and the most-recent row no longer reflects today's role.
-
Risk if skipped: Loading compensation as a single current row erases the comp ladder used for retention and pay-equity analysis.
-
Risk if skipped: Re-stamping performance data to cutover day collapses years of review history into a single date.
-
Risk if skipped: Loading employees and supervisors in one pass fails wherever a supervisor has not been created yet, leaving employees with broken reporting lines.
-
Risk if skipped: Files over the per-file or per-employee cap silently fail to upload and the metadata-linkage check fails at validation.
Phase 4
Sandbox Test Migration
Catch every problem in the sandbox before the Import Tool runs in production.
-
Risk if skipped: A sample of only US active employees hides the bugs that hit the harder cases in production.
-
Risk if skipped: An accidental destructive import in production requires a manual revert that takes longer than the original load.
-
Risk if skipped: Effective-date sort issues only show up in the UI, which masks the problem until UAT.
-
Risk if skipped: A cutover window that turns out to be too short forces a partial go-live with employees split between systems.
-
Risk if skipped: Skipping sign-off lets the cutover proceed with known sandbox defects still unresolved.
Phase 5
Production Cutover
The tightly-sequenced execution window where the migration actually happens.
-
Risk if skipped: Late source-side edits create a delta that the cutover plan has no time to reconcile.
-
Risk if skipped: Active integrations fire during the bulk load, sending hundreds of welcome emails for back-dated hires.
-
Risk if skipped: A typo in the supervisor email field on first pass leaves the org chart broken and routes manager-only reports to the wrong people.
-
Risk if skipped: Without per-step evidence a partial failure has no recovery point and the team starts the load over from row one.
Phase 6
Validate
Prove the migration was correct before any user logs in.
-
Risk if skipped: An unexplained delta of even a handful of employees signals a silent drop somewhere in the transform.
-
Risk if skipped: A wrong pay-rate type (hourly vs. salary) on a batch of employees inflates or deflates the total by a factor of 2,000.
-
Risk if skipped: Off-by-one balance errors generate dozens of HR tickets in the first week and erode trust in the new system.
-
Risk if skipped: Workflow gaps surface only at this layer and are cheaper to fix before go-live than after.
Phase 7
Post-Migration Cleanup
Wrap up so the team can treat BambooHR as the system of record.
-
Risk if skipped: Without rebuilt reports the HR team falls back to the source system within a week, undermining cutover.
-
Risk if skipped: A first real payroll run on uncorroborated data is the most expensive way to find an import defect.
Watch list
Risks to track throughout
These risks live across multiple phases — keep an eye on them from kickoff through cutover.
-
The Import Tool has no undo
Any file run through Customize → Import is permanent. A misaligned column header, a country value that does not match the BambooHR list, or a bad upsert key cannot be reversed with one click. Track this across Phase 1 (test plan), Phase 4 (sandbox dry run), and Phase 5 (cutover sequencing): every production import must be preceded by an identical sandbox run, and every Phase 5 load must capture the job id so a manual revert remains an option.
-
Effective-dated history is easy to flatten and hard to rebuild
Job Info, Compensation, and Employment Status all use row-per-change tables that drive tenure reports, pay-equity analyses, and ACA Status Category. A single-row 'current snapshot' import silently erases years of history. Track this across Phase 2 (export each table separately), Phase 3 (shape rows sorted by effective date), Phase 4 (validate ordering in the UI), and Phase 6 (sample 20 rows per table for ordering and date accuracy).
-
Supervisor chains are fragile until every employee exists
BambooHR's org chart is computed from the Reports To field on each employee. A missing supervisor or an email typo orphans the entire reporting branch below. Track this across Phase 1 (verbatim email-list audit), Phase 3 (two-pass plan), Phase 5 (load without Reports To, then back-fill), and Phase 6 (org-chart render check).
-
US-only payroll plus a hard 20 MB / 1 GB file ceiling
BambooHR Payroll is US-only, and Employee Files cap at 20 MB per file and 1 GB per employee. Both constraints surface late in the project when international payroll or document archives suddenly need a separate home. Track this in Phase 0 (geographic and document-scope decisions), Phase 3 (per-file and per-employee size pre-check), and Phase 5 (capture upload failures and route oversize content out of BambooHR).
Pair this with the long-form guide
The complete BambooHR migration guide
Same research, written as prose: data model, import mechanisms, mapping strategy, pitfalls, and partner landscape.
