Skip to content
Back to Blog
AI ATS and Semantic Search

How to Migrate from Greenhouse ATS Without Losing Candidate History

Learn how to migrate from Greenhouse ATS without losing candidate history, scorecards, or key data. Follow this step-by-step guide!

Tenia Novalia
September 10, 2026
7 min read
How to Migrate from Greenhouse ATS Without Losing Candidate History

To migrate from Greenhouse without losing candidate history, export your candidates applications and notes before you cancel or downgrade, map each Greenhouse field to your new system's import format, and run a test import with a small batch before moving your full pipeline. The biggest risk isn't the migration itself. It's Greenhouse's export limits and field mismatches silently dropping notes, scorecards and interview feedback that never make it into the new system.

Switching applicant tracking systems is rarely about the software. It's about not wanting to lose the record of who you talked to, what your team thought of them, and where they are in your pipeline.

That record, candidate history, is the part most migration guides skip, because most guides are written for the vendor doing the selling, not the team doing the moving.

This guide walks through what to export, what commonly gets lost, and a step-by-step process for a clean migration, whether you're moving to another full ATS or keeping Greenhouse-adjacent data in an AI screening layer alongside your existing workflow.

What "Candidate History" Actually Includes

Before exporting anything, it helps to know what you're trying to preserve. Candidate history isn't just names and resumes. It’s usually:

  • Application records (which roles a candidate applied to, and when).
  • Resume and portfolio files.
  • Interview scorecards and structured feedback.
  • Free-text recruiter and hiring manager notes.
  • Candidate stage/status history (e.g., moved from Phone Screen to Onsite on a given date).
  • Source/attribution data (where the candidate came from).
  • Tags and custom fields your team added manually.

Not all of this comes out of Greenhouse in one file, and some of it doesn’t come out in the candidate export at all. That’s where data usually gets lost.

Step-by-Step: Migrating out of Greenhouse

Step 1: Export Before you Cancel, Not After

Greenhouse retains data differently depending on plan and account status. If you're downgrading or canceling, export everything first. Don't assume you can go back to a forgotten field later.

Know what the export actually is before you rely on it. Greenhouse’s candidate export is not a “download CSV” button:

  • It’s a fixed report of roughly 40 columns, delivered as XLS by email, not a CSV you build yourself. Go to Candidates, apply your filters, then Generate Report and choose Email as XLS.
  • Custom candidate fields are only included in the emailed version, not in the report you view in the app. If your team added custom fields, the in-app view will make it look like they’re missing.
  • Each report is capped at 1,000 applications. A pipeline trigger then means several filtered exports (by job, by date range, by status), not one.
  • Resumes are files, not columns. They don’t travel in the XLS. plan a separate download of attachments.

At minimum, pull:

  • Candidates report (as above): names, contact info, source, tags, custom fields.
  • Job/requisition list: role titles and open/closed status, so historical applications can be matched back to the right role.
  • Attachments: resumes, cover letters, portfolios, downloaded separately.
  • Scorecards and notes: they are not part of the ~40-column candidate report, so check what your plan’s Reports expose for structured interview feedback. If it isn’t exportable in a structured form, capture it now (report, screenshot, or a Harvest API pull) rather than discovering the gap after cancellation.

For the equivalent steps in Lever, Workable and Ashby, see what to export from Greenhouse, Lever, Workable or Ashby.

Step 2: Map Fields Before you Import Anything

Every ATS names things differently. "Stage" in Greenhouse might be "Pipeline Status" elsewhere.

Before importing, build a simple mapping table. Greenhouse column, destination field, and a note on any column that doesn't have a clean match.

Fields with no destination equivalent (custom fields are the usual culprit) need a decision: drop them, or store them in a generic notes field so the information isn't lost outright, even if it's no longer structured data.

Most importers, ours included, ignore unknown columns rather than rejecting the file, so you don’t need to strip the export back to a minimum. You do need to make sure the required columns are present and named correctly. The applicants CSV reference lists what we read.

Step 3: Run a Test Batch First

Import 10 to 20 candidates before you import thousands. Check specifically for:

  • Resumes attached to the correct candidate (file-matching errors are the most common silent failure).
  • Interview notes landing in the right place, not merged or truncated.
  • Dates preserved correctly (timezone shifts during export/import are a frequent cause of stage-history dates looking wrong).

Step 4: Migrate in Batches, Not All at Once

Once the test batch looks clean, migrate by role or by date range rather than the entire database in one pass.

This makes it dramatically easier to spot and fix an error in 200 records instead of discovering it in 20,000.

As a rough ceiling, Greenhouse's own migration guidance recommends importing no more than 8,000 candidates at a time. A useful number to mirror on the way out, even though you're moving data in the opposite direction.

Step 5: Verify Against the Source Before you Decommission Greenhouse

Spot-check a sample of migrated candidates against the original Greenhouse records. Not just that data arrived, but that it arrived correctly. Only decommission the old account once verification is done.

If you're Exporting via API Instead of a Report

Larger teams sometimes pull data out through Greenhouse's Harvest API rather than a manual export, especially if a custom integration already exists.

If that's your setup, check which API version it's built on now, not later: Harvest API v1 and v2 became unavailable after August 31, 2026. An export integration still on v1 or v2 is very likely already broken rather than just at risk.

The fix isn't "plan a migration", it's confirming right now whether anything pulling data out of Greenhouse (including a script nobody's touched in a while) has quietly stopped working, and moving it to v3 before you rely on it.

Where Candidate History Usually Gets Lost

What Where it lives in Greenhouse Does the candidate export carry it?
Custom fields Candidate profile, custom fields Only in the emailed XLS, not the in-app report. Silently dropped on import unless mapped.
Scorecards Interview kit, per interviewer Not part of the ~40-column candidate report. Check what your plan’s Reports expose separately. Structured ratings often flatten to plain text on import.
Stage history Application timeline Current stage only in most reports, not the full timeline of moves.
Attachments beyond the resume Candidate profile, attachments No. Portfolio links, cover letters and take-homes are files, downloaded separately.
Resumes that never parsed Candidate profile The file may be there but the record is thin: Greenhouse won’t parse a file larger than 2.5MB, while the upload itself allows much bigger files.
Pipelines over 1,000 applications Reports Truncated unless you split the export by job or date.

After Migration: Don’t Let the Data Just Sit There

Once candidate history is safely moved, it’s worth using it, not just archiving it. HyreTech’s AI candidate matching can re-score your migrated pipeline against open roles, immediately, instead of starting evaluation from zero.

Also worth checking before you migrate anything: candidate records are personal data, and moving them between systems isn’t just a technical step. It’s a compliance one.

If you’re hiring into or from Singapore, see how PDPA applies to AI-assisted hiring before your migration is final.

If you Don't Want to Fully Switch ATS

Not every team migrating away from friction with Greenhouse wants to replace it outright. Some prefer to keep sourcing and posting where they already are, and only bring candidates into a new system for AI-assisted screening and evaluation.

That's a narrower, lower-risk version of the same process: export applicants plus resumes, and import them into an analysis layer rather than a full replacement ATS. No re-platforming your entire hiring workflow just to get better screening.

See how ATS import works if you want to compare that path against a full migration.

If you do want your new system to run the whole pipeline going forward (postings, applications, and scoring in one place), explore running hiring end-to-end.

Ready to Migrate?

If your pipeline is small and you just want to move it yourself: Start free and import your Greenhouse export directly. No sales call needed.

If you're migrating a larger pipeline, multiple roles, or want help mapping fields before you commit: Book a demo and we'll walk through your specific export with you.

FAQs

1.Which ATS supports bulk data import from Greenhouse and preserves all history?

No importer can preserve what Greenhouse doesn’t export. The candidate report carries contact details, tags and (in the emailed XLS) custom fields, but not scorecards, attachments or the full stage timeline. Any ATS or screening layer with a CSV import plus a resume ZIP upload can take the candidate data in bulk. Preserving the rest means capturing scorecards and notes separately before you cancel.

2.How do you migrate data out of Greenhouse?

Generate the candidates report (Email as XLS, so custom fields are included), export the job list, download attachments separately, capture scorecards and notes in whatever form your plan exposes, map each column to your destination system, run a small test import, then migrate the rest in batches. Verify against the original records before decommissioning your Greenhouse account.

3.Will I lose interview notes and scorecards when I migrate from Greenhouse?

You can and it’s the single most common way candidate history goes missing. Scorecards are not part of the ~40-column candidate report, and the destination system needs a structured field to hold them. Capture them separately, and confirm the new system can hold structured feedback before you migrate the rest of your pipeline.

4.Do I have to fully replace my ATS to fix this?

No. If the goal is better screening rather than a full system replacement, you can export applicants from Greenhouse and import them into an AI analysis layer that works alongside your existing ATS, without migrating your whole pipeline.

Ready to get started?

Hire smarter with AI-powered candidate screening — start free today.

Start free