HRMS migration
Field-level mapping, validation, and rollback between SumTotal and Recruit CRM & ATS. We move data and schema; workflows are rebuilt natively in Recruit CRM & ATS.
SumTotal
Source
Recruit CRM & ATS
Destination
Compatibility
2 of 12
objects map 1:1 between SumTotal and Recruit CRM & ATS.
Complexity
BStandard
Timeline
3-5 weeks
Overview
Migrating from SumTotal to Recruit CRM is a cross-category move: SumTotal is an enterprise HRMS covering learning, talent, performance, and workforce management, while Recruit CRM is a recruitment ATS and CRM built for staffing and executive search agencies. The primary migration path is SumTotal Learners to Recruit CRM Candidates, with SumTotal Companies (if the HRMS holds client or organizational data) mapping to Recruit CRM Clients. Courses, Curricula, Training Records, Compliance Certifications, Performance Goals, and ILT Sessions have no direct Recruit CRM equivalent because Recruit CRM does not function as an LMS. We export these objects and deliver them as a structured data package for the customer's records, but they cannot be imported as working records in Recruit CRM. SumTotal's API rate limit of 50,000 requests per hour affects export pacing for large learner bases, and enterprise-tier gating on talent management objects must be confirmed during scoping because some modules are not accessible at lower licensing tiers. Workflow automation rules, deadline escalation configurations, and assignment logic are configuration objects that do not export via the SumTotal data API; we document them and hand off a rebuild guide for Recruit CRM's automation tooling.
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 SumTotal object lands in Recruit CRM & ATS, including any object-level transformations, lookup resolution, or schema-design dependencies.
Typical mapping — final map is confirmed during the sample migration step.
SumTotal
Learner (User)
Recruit CRM & ATS
Candidate
1:1SumTotal Learner records are the primary migration object into Recruit CRM Candidate records. The mapping uses email as the dedupe key. First name, last name, and email map directly. Custom fields on the Learner profile (such as department, location, manager, or custom hire-date fields) map to Recruit CRM custom fields on Candidate where the field type is compatible. SumTotal user status (active, inactive, suspended) maps to Candidate active/inactive flags, with suspended users flagged separately for customer review before activation. This is a 1:1 field-level mapping with custom field extension support.
SumTotal
Company
Recruit CRM & ATS
Client
1:1SumTotal Companies (organisational units or client structures stored within the HRMS) map to Recruit CRM Client records if present in the source tenant. Not all SumTotal deployments use the Company object. We confirm Company object presence during scoping. Company name, domain, and primary contact fields map to Client name, website, and primary contact respectively. If SumTotal Companies reference the Learner object via manager relationships, those references cannot map to Recruit CRM's candidate model and are flagged as non-migratable relationships.
SumTotal
Course
Recruit CRM & ATS
Not migratable to Recruit CRM
lossySumTotal Courses are LMS objects with no equivalent in Recruit CRM's ATS and recruitment CRM model. Recruit CRM does not maintain a course catalog, training catalog, or learning content repository. We export Course records as a structured CSV and JSON package for the customer's records but do not import them into Recruit CRM. This is disclosed upfront during scoping and reflected in the migration contract scope.
SumTotal
Curriculum
Recruit CRM & ATS
Not migratable to Recruit CRM
lossySumTotal Curricula bundle courses into structured learning paths with ordering and deadline configurations. Recruit CRM has no learning path or curriculum object. We export Curriculum-to-Course associations as a relationship table in the deliverables package. If the customer needs to preserve which learners were assigned which curricula, we can export that assignment history as a Candidate note or custom field attachment in Recruit CRM as a workaround.
SumTotal
Training Record (Transcript)
Recruit CRM & ATS
Candidate custom field or note attachment
lossySumTotal Training Records (transcripts) carry completion dates, scores, and credit flags tied to Learner and Course IDs. Since Recruit CRM has no course object, training completion records cannot be stored as structured records. We export the full transcript history and attach it as a structured document (CSV) to the Candidate record, or we extract the last completion date and key certification fields into Candidate custom fields if the customer wants at-a-glance visibility without opening an attachment.
SumTotal
Compliance Certification
Recruit CRM & ATS
Not migratable to Recruit CRM
lossyCompliance Certifications in SumTotal carry expiry dates, renewal rules, and audit-trail metadata tied to regulatory contexts (OSHA, GDPR, FINRA, industry-specific mandates). Recruit CRM does not have a compliance certification object or expiry tracking for candidate credentials. We export certification records as a structured data package. If the customer's recruiting workflow requires visibility into candidate certifications, we can store certification name, expiry date, and status as custom fields on the Candidate record as a partial workaround.
SumTotal
Performance Goal
Recruit CRM & ATS
Not migratable to Recruit CRM
lossyPerformance Goals are part of SumTotal's talent management module and are gated behind enterprise-tier licensing. Recruit CRM is a recruitment ATS and does not include goal management or performance review functionality. We confirm module availability during scoping (tenants on base LMS tier cannot export Goals). Goals that exist are exported as a structured data package for the customer's HR or operations team to retain outside of Recruit CRM.
SumTotal
Performance Review
Recruit CRM & ATS
Not migratable to Recruit CRM
lossyPerformance Review records include 360-degree feedback, ratings, and reviewer assignments stored as complex nested structures varying by organisation-specific templates. Recruit CRM has no performance review object. We extract raw review data and deliver it as a structured export. Review metadata (reviewer name, review period, overall rating) can be attached as a note to the Candidate record if the customer wants historical performance context preserved within the ATS.
SumTotal
ILT Session (Instructor-Led Training)
Recruit CRM & ATS
Not migratable to Recruit CRM
lossyILT Sessions in SumTotal include session metadata, registrations, attendance records, and venue associations. Recruit CRM does not have a training session or scheduling object beyond its candidate interview and meeting scheduling features. Attendance records and room/venue data do not migrate. We export session and registration data as a structured package for the customer's records.
SumTotal
Custom Field Definitions
Recruit CRM & ATS
Custom Fields
lossySumTotal allows custom fields on standard objects (Learner, Course, Curriculum). We capture custom field definitions alongside data exports, including field types, validation rules, and picklist values. These definitions map to Recruit CRM custom fields on Candidate where the destination field type supports equivalent data. Custom field types that have no Recruit CRM equivalent (such as SumTotal-specific complex validation) are documented in the deliverables with a non-migratable flag.
SumTotal
Workflow Assignments and Automation Rules
Recruit CRM & ATS
Not migratable to Recruit CRM
lossySumTotal's automation engine drives learner assignment rules, deadline escalation, and notification triggers stored as configuration rather than data records. The REST API exports learner data but does not export automation rules. We document which workflows exist with a written inventory describing trigger conditions, actions, and destinations. Recruit CRM's workflow automation must be rebuilt manually by the customer's admin using Recruit CRM's workflow builder. We provide the documented inventory and recommended mapping as part of the deliverables package.
SumTotal
Content Library Metadata
Recruit CRM & ATS
Not migratable to Recruit CRM
lossySumTotal's Content Library holds course metadata with folder and category taxonomy. Recruit CRM does not have a content library or taxonomy navigation feature. Folder and category hierarchy cannot be replicated. We export course-level metadata records only; the browsing and categorisation structure is not portable to Recruit CRM's flat candidate and job record model.
| SumTotal | Recruit CRM & ATS | Compatibility | |
|---|---|---|---|
| Learner (User) | Candidate1:1 | Fully supported | |
| Company | Client1:1 | Fully supported | |
| Course | Not migratable to Recruit CRMlossy | Fully supported | |
| Curriculum | Not migratable to Recruit CRMlossy | Fully supported | |
| Training Record (Transcript) | Candidate custom field or note attachmentlossy | Fully supported | |
| Compliance Certification | Not migratable to Recruit CRMlossy | Fully supported | |
| Performance Goal | Not migratable to Recruit CRMlossy | Fully supported | |
| Performance Review | Not migratable to Recruit CRMlossy | Fully supported | |
| ILT Session (Instructor-Led Training) | Not migratable to Recruit CRMlossy | Fully supported | |
| Custom Field Definitions | Custom Fieldslossy | Mapping required | |
| Workflow Assignments and Automation Rules | Not migratable to Recruit CRMlossy | Mapping required | |
| Content Library Metadata | Not migratable to Recruit CRMlossy | Mapping required |
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.
SumTotal gotchas
50,000 req/hour API rate limit can throttle large exports
Enterprise-tier gating on talent management objects
Mobile app completion credits not reliably propagated to backend
Cornerstone OnDemand acquisition introduces v1/v2 API duality
Workflow automation rules are configuration objects not exported via data API
Recruit CRM & ATS gotchas
API rate limits are license-scaled and can throttle bulk migration
Custom field schemas vary per organization and require field-level mapping
Files and email attachments require separate extraction and re-upload
Email sequences and automation logic do not transfer between platforms
Pair-specific challenges
Migration approach
Discovery and scope confirmation
We audit the SumTotal tenant across licensing tier, active modules, learner record count, custom field definitions, and any historical training or certification data the customer wants preserved. We confirm which SumTotal modules are accessible at the current tier (talent management gating is a common blocker). We pair this with a Recruit CRM account audit to confirm custom field availability and any existing Client, Job, or Candidate structures. The discovery output is a written migration scope that explicitly lists which objects migrate to Recruit CRM as working records, which migrate as export packages, and which have no migration path, signed by both parties before migration begins.
Data filtering and migration scope lock
SumTotal record counts determine migration cost at Recruit CRM. We work with the customer to define filters: active only or all records, date-range cutoffs, specific organisational units, and any records to be archived rather than migrated. We apply these filters to SumTotal API queries during export rather than exporting everything and filtering after, which avoids unnecessary API calls against the 50,000 req/hour ceiling. The filtered scope is locked before export begins to prevent scope creep mid-migration.
Schema design and custom field provisioning
We design the Recruit CRM destination schema before any data moves. This includes provisioning custom fields on the Candidate record to receive SumTotal custom fields (department, location, manager, hire date, etc.) and any custom fields created to hold training completion dates or certification status as a partial workaround for non-migratable objects. We also map the Candidate field schema so that Recruit CRM's import tool can receive the CSV structure we generate from SumTotal exports. If SumTotal Companies exist, we provision Client records and map the relationship to Candidate.
Export with API rate-limit pacing
We export SumTotal Learner records in batches paced below the 50,000 req/hour ceiling, with row-count reconciliation after each batch. Training Records and Compliance Certifications are exported separately and attached as structured packages. Custom field definitions are extracted alongside data records so that field types and validation rules are preserved in the mapping documentation. We normalise v1 endpoints to v2 during export so that field names match the current SumTotal API schema. Any records that return as inactive or suspended in SumTotal are flagged for customer review before being set as inactive in Recruit CRM.
Test import and reconciliation
We run a test import with a subset of exported records into a Recruit CRM staging environment. The customer reconciles record counts, spot-checks 25-50 candidate records against the SumTotal source for field accuracy, and validates that custom fields populated correctly. Mapping corrections (field name mismatches, data type issues, missing required fields in Recruit CRM) are resolved here before the full production import. Any objects flagged as non-migratable are confirmed as export-only in the deliverables package at this stage.
Production migration and cutover
We run the full production migration in record-dependency order: Recruit CRM custom fields and Client records first (if applicable), then Candidate records with the dedupe key resolved from SumTotal Learner email. Training and certification export packages are delivered as CSV and JSON attachments to the relevant Candidate records. We freeze SumTotal write access during the cutover window, run a final delta export of any records modified during migration, then enable Recruit CRM as the system of record. We deliver the automation inventory document to the customer's admin team for Recruit CRM workflow rebuild. We do not rebuild SumTotal automation rules as Recruit CRM workflows inside the migration scope; that is a separate engagement or an internal admin task.
Non-migratable object deliverables and handoff
We deliver a structured export package for all objects that cannot be imported into Recruit CRM (Courses, Curricula, Training Records, Compliance Certifications, Performance Goals, Reviews, ILT Sessions, Content Library metadata). This package includes raw data exports, relationship tables, and field definitions. We also deliver the workflow automation inventory with triggers, conditions, and recommended Recruit CRM equivalents documented. The customer's HR, LMS, or operations team retains these packages outside of Recruit CRM. We do not provide ongoing access to these records post-migration unless a separate data-retention engagement is contracted.
Platform deep dives
SumTotal
Source
Strengths
Weaknesses
Recruit CRM & ATS
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 SumTotal and Recruit CRM & ATS.
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
SumTotal: 50,000 requests per hour per tenant across all REST APIs, with some individual endpoints carrying lower per-endpoint limits documented in the Swagger.
Data volume sensitivity
SumTotal doesn't expose a bulk API — REST + parallelization used for high-volume runs.
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 SumTotal to Recruit CRM & ATS migration scoping. Not seeing yours? Book a call.
Walk through your SumTotal to Recruit CRM & ATS migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationAdjacent paths
Other ways to leave SumTotal
Other ways to arrive at Recruit CRM & ATS
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.