HRMS migration

Migrate from Teamtailor to Crelate

Field-level mapping, validation, and rollback between Teamtailor and Crelate. We move data and schema; workflows are rebuilt natively in Crelate.

Teamtailor logo

Teamtailor

Source

Crelate

Destination

Crelate logo

Compatibility

92%

11 of 12

objects map 1:1 between Teamtailor and Crelate.

Complexity

BStandard

Timeline

1-3 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Teamtailor to Crelate is a data model migration with a few structural headwinds that require deliberate handling. Teamtailor uses a relational JSON:API model where Candidate, Job, Application, and Custom Field are separate objects linked by IDs; Crelate consolidates candidate and client records into a unified Contact and Company model with activity records attached. We extract from Teamtailor respecting the 50 req/10s rolling bucket and the HTTP 500 risk on unbounded answers and actions endpoints, then transform the Application timeline into Crelate Activity records. Custom fields on both candidates and job postings have no metadata API in Teamtailor, so we run a discovery pass on a sample of records to build the field map before the full export. Automation rules and trigger-based email sequences exist in Teamtailor UI but are not accessible via API and do not migrate; we deliver a written inventory of every active automation for your admin to reconstruct in Crelate's workflow builder. Multi-brand Teamtailor accounts require entity scoping before extraction so that job and candidate data is assigned to the correct Crelate organization.

Field-level fidelity

Every standard and custom field arrives verified.

Schema-aware mapping

AI proposes the map; you confirm before any record moves.

Relationships preserved

Parent–child, lookups, and ownership stay linked.

Full activity history

Calls, emails, meetings — with original timestamps.

Attachments & notes

Documents, uploads, and inline notes move with the record.

Why teams make this switch

Two sides of the same decision

Leaving

Teamtailor logo

Teamtailor

What's pushing teams away

  • Custom field and workflow customization becomes restrictive as hiring volume grows, with reviews noting rigid templates that cannot be bent to team-specific processes.
  • Basic analytics and reporting lack depth — users report that meaningful recruitment reporting requires exporting data to external BI tools.
  • Glitches and login issues surface intermittently, with users citing platform stability problems affecting day-to-day usability.
  • Automation for candidate entry is limited, forcing recruiters to perform manual data entry for incoming applications that should be auto-populated.

Choosing

Crelate logo

Crelate

What's pulling them in

  • Affordable per-seat pricing with transparent tiers makes Crelate accessible for small-to-mid staffing firms evaluating ATS platforms for the first time.
  • Fast implementation reported by customers—some describe getting live in a matter of minutes with support team assistance.
  • Unified ATS + CRM in a single product eliminates the need to buy and synchronize separate recruiting and sales tools.
  • Flexible custom fields across Contacts, Companies, and Opportunities allow recruiting teams to capture firm-specific data without developer involvement.
  • Positive reviews highlight the product's intuitive interface and functional breadth for teams that need recruiting workflows without enterprise overhead.

Object mapping

How Teamtailor objects map to Crelate

Each row shows how a Teamtailor object lands in Crelate, including any object-level transformations, lookup resolution, or schema-design dependencies.

Typical mapping — final map is confirmed during the sample migration step.

Teamtailor

Candidate

maps to

Crelate

Contact

1:1
Fully supported

Teamtailor Candidates map directly to Crelate Contacts. Standard fields (name, email, phone, LinkedIn URL) migrate as typed Contact fields. Any custom fields discovered during schema discovery map to Crelate custom fields on the Contact object. Candidate creation date and last activity date migrate as Crelate CreatedDate and Last Activity. We resolve any duplicate candidates by email during import.

Teamtailor

Job

maps to

Crelate

Job (Crelate native)

1:1
Fully supported

Teamtailor Jobs map to Crelate Job records with title, description, status (active/paused/closed), and public URL preserved. Job posting body content migrates as the Crelate job description. Department and location from Teamtailor map to Crelate's Department and Location fields on the Job record. Status mappings preserve Teamtailor's active/paused/closed semantics in Crelate's job status field.

Teamtailor

Job Application

maps to

Crelate

Activity (Application-related)

1:1
Fully supported

Teamtailor Job Applications map to Crelate Activity records linked to the Contact (candidate) and Job. The application status (new, in-progress, rejected, hired) migrates as an Activity status or a custom field. Application source, rejection reason, and timeline timestamps preserve. The application record is the primary audit trail for candidate progression through the hiring process.

Teamtailor

Custom Fields (Candidate)

maps to

Crelate

Custom Fields (Contact)

1:1
Fully supported

Teamtailor custom fields on candidate cards have no metadata API, so we run a discovery pass on a sample of 50-100 candidate records to enumerate field names, types, and value patterns. Each discovered custom field maps to a Crelate Contact custom field of equivalent type (text, number, select, multi-select, date). Text fields with long values migrate as long-text. Multi-select values migrate as Crelate multi-select or as comma-separated text depending on Crelate field configuration.

Teamtailor

Custom Fields (Job Posting)

maps to

Crelate

Custom Fields (Job)

1:1
Fully supported

Teamtailor job posting custom fields are scoped to the job object and differ from candidate custom fields. We discover these during the same schema pass and map them to Crelate Job custom fields. Job-level custom fields are optional and their presence depends on the customer's job template configuration; we only map fields that are actively populated in the source data.

Teamtailor

Department

maps to

Crelate

Department

1:1
Fully supported

Teamtailor Departments are a lightweight taxonomy object that categorizes jobs and sometimes candidates. We export them as a flat list and map each to a Crelate Department record. Department assignments on Job and Candidate records migrate as lookup references to the resolved Department records.

Teamtailor

Location

maps to

Crelate

Location

1:1
Fully supported

Teamtailor Locations tag jobs and candidates with a geographic dimension. We export locations as a list and map each to a Crelate Location or Office record, preserving the location name and any associated address details. Location assignments on Job records migrate as resolved references.

Teamtailor

User (Hiring Team)

maps to

Crelate

User

1:1
Fully supported

Teamtailor Users (recruiters and hiring managers) export as a list with name, email, and role. We match by email against Crelate User accounts. Any User without a matching Crelate account goes to a reconciliation queue for the customer's admin to provision before record import continues, since OwnerId references must resolve on both sides.

Teamtailor

Interview Kit and Questions

maps to

Crelate

Activity Template or Note

1:1
Fully supported

Teamtailor Interview Kits group structured questions for candidate evaluation. The questions endpoint is queryable via API, and kit-to-job assignments are retrievable. We migrate kit names and question text as Crelate Activity Template records or as Notes attached to the Job or Contact. The structured scorecard mapping depends on Crelate's form builder support for the customer's tier.

Teamtailor

Uploads and Attachments (Resumes)

maps to

Crelate

Resume on Contact

1:1
Fully supported

Candidate resumes, cover letters, and files are stored as upload objects in Teamtailor with URLs returned via API. The file itself must be fetched separately from the upload URL. We download each file and attach it to the corresponding Crelate Contact record as a resume document. Files are ingested in batches to avoid overwhelming the Teamtailor file server under the rate limit.

Teamtailor

Automations and Triggers

maps to

Crelate

Not Migrated (Inventory Document)

1:1
Not supported

Teamtailor automation rules and trigger-based email sequences (e.g., send email when candidate moves to stage 2) are configuration objects stored in Teamtailor and are not exposed via the public API in a structured way. We do not migrate them as code. We document every active automation visible in the Teamtailor UI during scoping, including trigger conditions, actions, and delays, and deliver a written inventory for the customer's admin to rebuild in Crelate's workflow engine.

Teamtailor

Multi-Brand / Entity Configurations

maps to

Crelate

Organization or Sub-Account Scoping

lossy
Mapping required

Teamtailor Multi-Brand accounts host multiple employer brands with separate career sites and sometimes separate candidate pools. We scope the export to the primary brand or each sub-entity separately, flagging which candidates and jobs belong to which brand during extraction. Crelate's multi-organization settings handle brand separation at the account level. We coordinate with the customer to determine whether a single Crelate account with tagging or separate Crelate organizations per brand best fits their setup.

Gotchas + challenges

What specifically takes care here

Platform-specific issues from each side, plus the pair-specific challenges that don't show up on either platform's page on its own.

Teamtailor logo

Teamtailor gotchas

High

API rate limit of 50 requests per 10 seconds can stall bulk exports

High

Unbounded answers and actions endpoints return HTTP 500 on large datasets

Medium

Custom fields are not surfaced in a unified schema endpoint

Medium

Automation and trigger rules are not accessible via the public API

Low

API versioning header is required on every request

Crelate logo

Crelate gotchas

High

120 req/min API rate limit throttles bulk migrations

High

20 custom field per-entity cap forces data model decisions

Medium

15,000-record export ceiling on single operations

Medium

Sequences and automation workflows do not migrate

Low

API key is a querystring parameter, not a header

Pair-specific challenges

  • Teamtailor API rate limit stalls bulk exports without pacing

    Teamtailor's API enforces a rolling bucket of 50 requests every 10 seconds. For customers with large candidate pools or extensive application history, naive bulk export scripts will trigger HTTP 429 errors and stall. We pace our extraction workers to stay within this limit and queue retries with exponential backoff when throttled. We also paginate large collections using cursor-based pagination to minimize request count per object type. This pacing is especially critical when fetching answers and actions, where unbounded requests can also return HTTP 500 errors.

  • Automations and triggers are not accessible via Teamtailor's public API

    Automation workflows (e.g., stage-based email triggers) and trigger rules configured in Teamtailor are configuration objects that exist in the UI but are not exposed via the public API. Customers migrating to Crelate must manually rebuild their automation logic in Crelate's workflow engine. During scoping we document all active automations visible in the UI so the customer has a checklist for recreation. This is not a Crelate limitation; it is a Teamtailor API constraint that affects any migration away from the platform.

  • Custom field schema requires discovery pass before export

    Teamtailor does not expose a metadata API that enumerates all active custom fields for a given account. Custom field names and types must be discovered by querying candidate or job records and inspecting the returned attributes. We run a discovery pass on a sample of records to build the field map before running the full export, ensuring no custom field data is silently dropped. If the customer's Teamtailor instance uses many custom fields or fields with non-obvious naming conventions, this discovery pass adds a small amount of time to the scoping phase.

  • Unbounded answers and actions endpoints return HTTP 500 on large datasets

    The /v1/answers and /v1/actions endpoints can return massive datasets that cause the Teamtailor API to respond with HTTP 500 if requested in a single call. Teamtailor's own documentation instructs users to use filtering, pagination, or batch requests to avoid this. We split these endpoints into date-bounded slices during export, iterating by month or by application batch to keep payload sizes manageable. This is especially important for long-running recruiting programs with high application volume.

  • Resume and file attachments require separate file fetch after upload URL retrieval

    Candidate resumes, cover letters, and other files are stored as upload objects referenced on the application, with the API returning a URL to the uploaded file rather than the file content itself. The file must be fetched in a separate HTTP request from that URL. We batch these file downloads after the main record extraction, respecting both the Teamtailor API rate limit and any rate limits on the file hosting infrastructure. Large resume files may take longer to transfer and extend the overall extraction timeline.

Migration approach

Six steps for a successful Teamtailor to Crelate data migration

  1. Discovery and scoping

    We audit the Teamtailor account across object count (candidates, jobs, applications), custom field configurations, active automations visible in the UI, multi-brand or multi-entity setup, and engagement history volume (answers, actions). For multi-brand accounts we agree with the customer on brand scoping — whether to migrate to a single Crelate account with brand tagging or to separate Crelate organizations per brand. The discovery output is a written migration scope, an initial custom field inventory from the discovery pass, and a decision on Crelate organization structure.

  2. Custom field schema discovery

    We query a statistically representative sample of candidate and job records to enumerate all active custom field names, types, and value patterns. We compare candidate custom fields (which live on the candidate card) against job posting custom fields (which live on the job object) since these are separate schemas in Teamtailor. The discovered schema becomes the basis for Crelate custom field creation before the full data export begins.

  3. Crelate schema setup and automation inventory

    We create Crelate custom fields on Contact and Job objects matching the discovered Teamtailor schema, using equivalent field types. We create Department and Location records that map to the exported Teamtailor taxonomy. We document every active Teamtailor automation (trigger conditions, actions, delays, and target audiences) in a written inventory for the customer's admin to reference when rebuilding in Crelate's workflow engine. This document is delivered before cutover so rebuild planning can proceed in parallel.

  4. Sandbox migration and reconciliation

    We run a full migration into a Crelate test environment using production-like data volume. The customer's recruiting lead spot-checks 25-50 random candidate and job records against the Teamtailor source, verifies custom field values, confirms activity timeline completeness, and reviews the automation inventory document. Any mapping corrections happen in the test environment before production migration begins.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Departments and Locations (first, as taxonomy lookups), Jobs (with department and location references resolved), Contacts (with custom field values mapped), Activities (application records and engagement history linked to Contact and Job), User mapping (owner assignments by email match), file attachments (resumes and cover letters batched after record import), and interview kit documentation (as Activity Templates or Notes). Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and automation handoff

    We freeze Teamtailor writes during cutover, run a final delta migration of any records modified during the migration window, then mark Crelate as the system of record. We deliver the completed automation inventory document and support a one-week hypercare window for reconciliation issues. We do not rebuild Teamtailor automations in Crelate's workflow engine inside the migration scope; that work is handled by the customer's admin using the automation inventory as a rebuild guide, or as a separate engagement.

Platform deep dives

Context on both ends of the pair

Teamtailor logo

Teamtailor

Source

Strengths

  • Polished employer branding and career site tools that require no developer involvement to publish.
  • Structured Interview Kits ship out of the box, supporting consistent candidate evaluation workflows.
  • 24/7 support chat is consistently highlighted as responsive and helpful in user reviews.
  • 500+ native integrations cover the majority of HRIS, calendar, and communication tooling.
  • Template-driven setup reduces time-to-first-hire for small HR teams without technical depth.

Weaknesses

  • Customization constraints emerge as hiring processes mature, with rigid templates limiting team-specific workflows.
  • Analytics and reporting are basic, pushing teams toward manual export and external BI tooling.
  • Automation coverage is shallow for candidate entry, leaving recruiters to handle manual data entry.
  • Platform glitches and intermittent login issues surface in reviews, affecting day-to-day reliability.
Crelate logo

Crelate

Destination

Strengths

  • Unified ATS and CRM in a single platform reduces data synchronization overhead for recruiting teams.
  • Fast setup with guided implementation reported as a significant time saver for small teams.
  • Transparent per-seat pricing without surprise fees at the base tier.
  • Flexible custom field configuration across core objects without developer dependency.
  • Export capability supports up to 15,000 records per operation for Contacts, Companies, and Opportunities.

Weaknesses

  • API rate limit of 120 requests per minute restricts bulk migration throughput.
  • Custom field cap of 20 per entity requires field consolidation for complex recruiting schemas.
  • All advanced features (Activities, Activity Forms, Core Record Field customization) are tier-gated add-ons.
  • Customer service responsiveness receives consistent negative feedback in reviews.
  • Resume parsing quality trails competitors and generates support requests.

Complexity grading

How hard is this migration?

Standard HRMS migration. 1 of 7 objects need a mapping; the rest are 1:1.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Teamtailor and Crelate.

  • Object compatibility

    B

    1 of 7 objects need a mapping; the rest are 1:1.

  • Field mapping clarity

    C

    Field mapping is derived from defaults — final spec confirmed during the sample migration.

  • Timeline complexity

    B

    7-object category — typical timelines run 2–7 days end-to-end.

  • API constraints

    B

    Teamtailor: 50 requests per 10 seconds per organization.

  • Data volume sensitivity

    B

    Teamtailor doesn't expose a bulk API — REST + parallelization used for high-volume runs.

Estimator

Estimate your Teamtailor to Crelate migration cost

Rule-based pricing — no per-record fees, no manual quotes. Migrations over 2M records are scoped individually.

Step 1

What are you migrating?

Pick a category, then your source and destination platforms.

Category

FAQ

Frequently asked questions about Teamtailor to Crelate data migrations

Answers to the questions buyers ask most during Teamtailor to Crelate migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Teamtailor to Crelate migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between one and three weeks for accounts under 5,000 candidates and 500 jobs with no multi-brand setup and moderate application history. Migrations with extensive answer and action records (over 50,000), multi-brand or multi-entity scoping, or large resume attachment libraries move to three to six weeks because of the API pacing required on extraction, the custom field discovery pass, and the file attachment batch download process.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Teamtailor.
Land in Crelate, intact.

Tell us record counts and timeline. We'll come back with a written quote inside 1 business day — no commitment, no sales pitch.

Accuracy guarantee Rollback included Quote in 1 business day