HRMS migration

Migrate from Jobylon to Bullhorn ATS & CRM

Field-level mapping, validation, and rollback between Jobylon and Bullhorn ATS & CRM. We move data and schema; workflows are rebuilt natively in Bullhorn ATS & CRM.

Jobylon logo

Jobylon

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

75%

9 of 12

objects map 1:1 between Jobylon and Bullhorn ATS & CRM.

Complexity

BStandard

Timeline

3-5 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Jobylon to Bullhorn crosses from a Stockholm-based mid-market ATS built for European enterprise hiring into a US-centric ATS and CRM platform designed for staffing and recruitment agencies. The structural gap is significant: Jobylon organises hiring around Jobs, Applications, Candidates, and Pipeline Stages with per-company custom field schemas and a webhook-driven alpha-status Partner API; Bullhorn uses a Lead, Candidate, Contact, Client Corporation, Job Order, and Placement model with a REST API, per-edition custom object limits, and a documented stage-pipeline architecture. We build a custom export pipeline to work around Jobylon's lack of a bulk endpoint, resolve owner and candidate deduplication by email, and map free-text pipeline stage names to Bullhorn's configurable Sales Processes and Record Types. We do not migrate Jobylon automations, sequence cadences, or dynamic forms; we deliver a written inventory of these for the customer's Bullhorn admin to rebuild post-migration.

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

Jobylon logo

Jobylon

What's pushing teams away

  • Some customers find the analytics and reporting dashboard less deep than competitors such as Lever, limiting their ability to generate custom hiring reports without third-party tools.
  • The Partner API is explicitly described as alpha-status with a limited feature set, making it harder for technical teams to build bespoke integrations or validate migration completeness independently.
  • Customers seeking advanced AI features like predictive candidate scoring or automated ranking may find Jobylon's AI tooling insufficient compared to platforms with mature ML-driven sourcing.

Choosing

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

What's pulling them in

  • Agencies choose Bullhorn because it combines ATS and CRM in one platform, eliminating the need to switch between separate tools for candidate management and client relationship tracking.
  • The resume parser extracts contact details, work history, and skills into structured, searchable candidate profiles automatically without manual data entry, reportedly driving 24% more placements per recruiter.
  • Bullhorn's placement and split-billing model natively supports contract staffing workflows, handling start/end dates, overtime rules, and multi-party pay/charge rates in a single record.
  • The platform offers extensive third-party integrations through its Recruitment Cloud Marketplace, connecting with back-office, onboarding, and payroll systems used by staffing agencies.
  • 72% of Bullhorn customers are teams with fewer than 10 users, and Bullhorn's implementation team handles setup and data migration for small agencies going live within weeks.

Object mapping

How Jobylon objects map to Bullhorn ATS & CRM

Each row shows how a Jobylon object lands in Bullhorn ATS & CRM, including any object-level transformations, lookup resolution, or schema-design dependencies.

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

Jobylon

Job

maps to

Bullhorn ATS & CRM

Job Order

1:1
Fully supported

Jobylon Job records map to Bullhorn JobOrder. Standard fields (title, department, location, description, employment type) migrate directly. Per-company custom fields defined in /config/companies/{companyId}/job map to Bullhorn custom fields on JobOrder. Bullhorn enforces field character limits (some capped at 100 characters, others unlimited) — we analyse source field lengths during discovery and flag any that require truncation or multi-field splitting. Job status (active, paused, closed) maps to Bullhorn JobOrder status with the original status preserved in a custom field for audit.

Jobylon

Candidate

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

Jobylon Candidate records map to Bullhorn Candidate with deduplication by email address. A Candidate with multiple Applications across Jobs retains a single Bullhorn Candidate record with all Application histories linked. GDPR fields (consent granted date, erasure request date) migrate as custom fields on the Bullhorn Candidate because Bullhorn's standard Candidate does not include a native GDPR consent timeline. Phone, email, address, LinkedIn URL, and skills migrate to their Bullhorn equivalents. Resume files migrate as ContentDocument records attached to the Candidate.

Jobylon

Application

maps to

Bullhorn ATS & CRM

JobSubmission

1:1
Fully supported

Jobylon Application records (linking a Candidate to a Job with a Pipeline Stage assignment) map to Bullhorn JobSubmission. The source Application ID is preserved in a custom field on JobSubmission for traceability. Application date, rejection date, and withdrawal date migrate as submissionTimestamp and statusChangeDate. Lost Reasons (free-text classification labels assigned when an Application moves to an inactive stage) migrate as a tagged custom field on JobSubmission rather than a native Bullhorn object.

Jobylon

Pipeline Stage

maps to

Bullhorn ATS & CRM

Sales Process + Record Type (JobOrder)

lossy
Fully supported

Jobylon pipeline stages are free-text and configurable per-company, with no standardisation across organisations. We map each distinct source stage name to a Bullhorn Sales Process stage value and create a corresponding Record Type on JobOrder. Inactive stages with assigned Lost Reasons are flagged as termination states and mapped to Bullhorn's Lost or Withdrawn stage values. The original stage name is preserved in a custom field for customer review before cutover. Bullhorn limits stage probability to integer percentages — we round source probability values to the nearest integer.

Jobylon

Scorecard

maps to

Bullhorn ATS & CRM

Custom Object (customObject1) or Note

1:1
Fully supported

Jobylon Scorecards are tied to Pipeline Stages and record evaluations by specific Users with rating values and evaluator comments. We export the scorecard schema, rating values, and evaluator name. Bullhorn does not have a native scorecard object in standard editions, so we create a Bullhorn Custom Object (customObject1 through customObject10 depending on edition tier) with typed fields for rating category, score value, evaluator name, and timestamp. Bullhorn ATS Growth has no custom object support — in that case we map scorecards to Note records attached to the JobSubmission.

Jobylon

User

maps to

Bullhorn ATS & CRM

User

1:1
Fully supported

Jobylon Users (recruiters, hiring managers, admins with configurable permission levels) map to Bullhorn User records. We resolve by email match. Any Jobylon User without a matching Bullhorn User goes to a reconciliation queue for the customer's admin to provision before record import resumes. Permission levels map from Jobylon role definitions to Bullhorn permission sets or profiles, with the customer admin making the final assignment during Bullhorn setup.

Jobylon

Custom Field (Job)

maps to

Bullhorn ATS & CRM

Custom Field (JobOrder)

lossy
Fully supported

Jobylon custom fields for Jobs are defined per-company via the Partner API, not globally. We query /config/companies/{companyId}/job for each company during discovery to build a complete field map. Bullhorn custom fields on JobOrder are limited per entity — we use standard Bullhorn custom fields first and escalate to custom objects for overflow. Dynamic custom fields (which build secondary forms based on prior submissions) must be confirmed as activated by Jobylon support before schema discovery; if not confirmed, those fields are flagged as a data gap in the discovery report.

Jobylon

Custom Field (Application)

maps to

Bullhorn ATS & CRM

Custom Field (JobSubmission)

lossy
Fully supported

Jobylon Application custom fields follow the same per-company schema pattern as Job custom fields. We map them to Bullhorn JobSubmission custom fields where the Bullhorn edition supports them. Bullhorn ATS Growth limits custom fields per entity — we scope the mapping to the customer's edition during discovery and flag any fields that exceed the per-entity limit, recommending a custom object or a consolidation strategy.

Jobylon

Assessor Feedback

maps to

Bullhorn ATS & CRM

Note or Activity

1:1
Mapping required

Free-text evaluator notes and assessor feedback export as structured comment records from Jobylon. We preserve the author name, timestamp, and content body and map them to Bullhorn Note records attached to the JobSubmission, with the original author name and date in custom note fields. Bullhorn's native Notes object supports rich text, so formatted feedback content transfers without loss.

Jobylon

Offer Letter

maps to

Bullhorn ATS & CRM

ContentDocument (attachment)

1:1
Fully supported

Jobylon stores offer letter documents as Application attachments with only filenames and URLs accessible via API — document content is not exported. We migrate the attachment URLs and filenames as Bullhorn ContentDocument records linked to the Placement or JobSubmission. The customer's admin should verify whether the original offer letter files are accessible from the Jobylon hosted environment before the account is closed. We document this gap in the handoff report and recommend a backup step during the pre-migration freeze window.

Jobylon

Client Corporation (Bullhorn native)

maps to

Bullhorn ATS & CRM

Client Corporation

1:1
Fully supported

Jobylon does not have a native Client Corporation concept — its equivalent is the Employer entity or company record embedded in the Job configuration. Bullhorn uses Client Corporation as a separate entity linked to JobOrder and Candidate. If the migration scope includes moving employer-client data (for staffing agencies that also manage client relationships in Jobylon), we create Client Corporation records from the employer names associated with Job postings, with the original Jobylon employer identifier preserved as a custom field.

Jobylon

Lead

maps to

Bullhorn ATS & CRM

Lead

1:1
Fully supported

For staffing agencies that use Jobylon's employer-facing pipeline for client outreach (rather than candidate-facing applications), we treat inbound employer inquiries as Bullhorn Leads. The source employer name, contact email, and any associated job requirements map to Bullhorn Lead fields. Conversion rules are defined with the customer admin during scoping so that employer Leads convert to Client Corporation and Contact records post-migration.

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.

Jobylon logo

Jobylon gotchas

High

Partner API is alpha with no bulk export endpoint

High

Rate limit of 100 req/min restricts migration speed

Medium

Custom fields are per-company and require pre-migration schema discovery

Medium

Dynamic custom fields must be activated by Jobylon support

Low

Pipeline stage names are free-text and not standardised

Bullhorn ATS & CRM logo

Bullhorn ATS & CRM gotchas

High

ATS Growth edition has no API access

High

Attachments excluded from CSV bulk exports

Medium

Custom Object limits vary sharply by edition

Medium

Opportunity pipeline stages are recruitment-specific

Low

Resume parse quality varies by document format

Pair-specific challenges

  • Jobylon's alpha Partner API has no bulk export endpoint

    Jobylon's Partner API is explicitly alpha-status with a limited feature set and no documented bulk export capability. The API operates as a webhook push model, sending Application and Job data to partner systems rather than serving pull requests. We build a custom export pipeline using the documented OpenAPI schema to validate field coverage and request a staging schema export where available. This adds discovery and pipeline-building time that a documented bulk endpoint would eliminate, and customers migrating away should expect an extended preparation phase compared to platforms with mature export tooling.

  • 100 req/min rate limit constrains migration throughput

    Jobylon enforces a hard limit of 100 requests per minute on its API. For organisations with thousands of Applications and nested Candidate records, a linear request approach will take hours per batch. We handle this by implementing request throttling with exponential backoff, batching reads where the schema allows, and scoping the migration to exclude closed inactive pipeline stages early to reduce total request count. This constraint extends the migration timeline compared to platforms with higher rate limits and is factored into our timeline estimates.

  • Per-company custom field schemas require extended discovery

    Jobylon custom fields for Jobs and Applications are not globally defined — they are configured per company via the /config/companies/{companyId}/job endpoint. There is no single global schema, and dynamic custom fields require manual activation by Jobylon support before they appear in the API. We address this by querying the configuration endpoint for each company during discovery, generating a field map before any data moves, and confirming activation status for dynamic fields with the customer before scoping. Customers with complex multi-company, multi-field schemas should expect an extended discovery phase of one to two additional weeks.

  • Bullhorn edition limits affect custom object availability

    Bullhorn ATS Growth edition does not support custom objects. Bullhorn ATS supports two custom objects and Bullhorn Enterprise and Front Office Growth support ten custom objects, each with 55 fields. If Jobylon's custom field count exceeds the destination edition's limits, we map the excess fields to Bullhorn standard fields where possible, consolidate multiple small fields into multi-select picklists, or defer to a higher Bullhorn edition. We flag this during scoping and include an edition recommendation in the migration scope document.

  • Free-text pipeline stage names need explicit mapping before cutover

    Jobylon organisations configure pipeline stage names freely, so a stage called 'Phone Screen' in one company may not exist in another. Bullhorn uses Sales Processes with whitelisted stage values, requiring an explicit mapping from each source stage name to a Bullhorn stage. We map source stage names to Bullhorn equivalents, preserve the original name as a custom field, and flag inactive stages with Lost Reasons as termination records. The customer must review and approve the stage map before cutover to avoid process mismatches in Bullhorn's pipeline views.

Migration approach

Six steps for a successful Jobylon to Bullhorn ATS & CRM data migration

  1. Discovery and schema audit

    We audit the source Jobylon environment via the Partner API, iterating through /config/companies/{companyId}/job to build a complete per-company custom field schema. We catalogue all Jobs, Applications, Candidates, Pipeline Stages, Scorecards, Lost Reasons, and Assessor Feedback records, and query for dynamic field activation status. We identify the Bullhorn edition (ATS Growth, ATS, Enterprise, or Front Office Growth) required to accommodate the migration schema and deliver a written scope document listing every object, field, and stage mapping with a count of records affected.

  2. Export pipeline construction

    Because Jobylon has no bulk export endpoint, we build a paginated API client that respects the 100 req/min rate limit using request throttling and exponential backoff. We extract Jobs first (as the parent container), then Candidates (with deduplication by email), then Applications linked to their parent Job and Candidate. For each record type we validate field presence against the OpenAPI schema and flag any dynamic fields that were not confirmed as activated. We output the extracted data as typed JSON batches for downstream transformation.

  3. Bullhorn schema provisioning and sandbox migration

    We configure the destination Bullhorn environment: custom fields on JobOrder and JobSubmission, custom objects (customObject1 through customObject10 as required by edition tier), Record Types and Sales Processes for each Jobylon pipeline variant, and stage probability values. Bullhorn ATS Growth migrations are scoped to standard custom fields only. We deploy the schema to a Bullhorn Sandbox first, run a full sandbox migration, and deliver a reconciliation report for the customer's admin to validate record counts and spot-check field mappings before production migration begins.

  4. Owner and user reconciliation

    We extract every distinct Jobylon User referenced as an Owner or Assignee on Jobs and Applications and match by email against the Bullhorn User table. Users without a matching Bullhorn User go to a reconciliation queue. The customer's Bullhorn admin provisions any missing Users and assigns permission sets before the production migration run. Migration cannot safely proceed past this step because OwnerId references are required on JobOrder, JobSubmission, and Candidate records.

  5. Production migration in dependency order

    We run production migration in record-dependency order: Users (validated by admin), Client Corporations (if in scope), JobOrders (with per-company custom fields applied), Candidates (with email deduplication and GDPR custom fields), JobSubmissions (with parent JobOrder and Candidate lookups resolved, stage mapping applied, Lost Reasons preserved), Scorecards (mapped to custom objects or Notes per edition), Assessor Feedback (mapped to Notes), and Offer Letter attachment filenames (mapped to ContentDocument references). Each phase emits a row-count reconciliation report before the next phase begins.

  6. Cutover, validation, and automation inventory handoff

    We freeze Jobylon writes during cutover, run a final delta migration of any records modified during the migration window, then enable Bullhorn as the system of record. We deliver a written inventory of every Jobylon automation, dynamic form, and pipeline trigger that cannot migrate as code, with a Bullhorn Automation equivalent recommended for each item. We support a five-business-day hypercare window to resolve reconciliation issues raised by the customer's recruiting team. We do not rebuild Jobylon automations as Bullhorn Automation inside the migration scope.

Platform deep dives

Context on both ends of the pair

Jobylon logo

Jobylon

Source

Strengths

  • Fully customisable career pages with video, testimonials, and per-job branding control.
  • Configurable recruiting pipelines with per-stage automation triggers and lost-reason classification.
  • Multi-language support across five European languages with local job board integrations.
  • GDPR module developed in-house with built-in candidate consent and data handling workflows.
  • Webhook-based Partner API with OpenAPI schema documentation for integration partners.

Weaknesses

  • Partner API is in alpha with a limited feature set and no bulk export capability.
  • Rate limit of 100 requests per minute constrains migration throughput significantly.
  • Dynamic custom fields require manual activation by Jobylon support before they appear in the schema.
  • Reporting and analytics dashboard is less feature-rich than competitors like Lever or SmartRecruiters.
  • Offer letter document content is not accessible via API — only attachment filenames are exported.
Bullhorn ATS & CRM logo

Bullhorn ATS & CRM

Destination

Strengths

  • Unified ATS and CRM on one platform purpose-built for staffing agencies, eliminating separate tools for candidates and clients.
  • Automated resume parsing extracts structured candidate data—contact details, work history, skills—into searchable profiles instantly.
  • Native placement and split-billing model handles contract staffing workflows including start/end dates and overtime rules.
  • Bullhorn Recruitment Cloud Marketplace offers 100+ pre-validated third-party integrations spanning the full recruiting lifecycle.
  • 24/7 global support coverage from 350+ support staff with dedicated account management included at all tiers.

Weaknesses

  • Widely regarded as old and bloated with an unintuitive interface and steep learning curve for new recruiters.
  • Slow page loads and performance lag cited in over 200 verified G2 reviews during high-volume recruiting periods.
  • Pricing is opaque—custom-negotiated per organization with significant upfront implementation fees that vary by deal.
  • ATS Growth edition excludes API access entirely, preventing automated data export without upgrading first.

Complexity grading

How hard is this migration?

Standard HRMS migration. All 7 core objects map 1:1 between Jobylon and Bullhorn ATS & CRM.

B

Overall complexity

Standard migration

Derived from compatibility, mapping clarity, API constraints, and data volume across Jobylon and Bullhorn ATS & CRM.

  • Object compatibility

    A

    All 7 core objects map 1:1 between Jobylon and Bullhorn ATS & CRM.

  • 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

    Jobylon: 100 requests per minute per organisation.

  • Data volume sensitivity

    B

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

Estimator

Estimate your Jobylon to Bullhorn ATS & CRM 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 Jobylon to Bullhorn ATS & CRM data migrations

Answers to the questions buyers ask most during Jobylon to Bullhorn ATS & CRM migration scoping. Not seeing yours? Book a call.

Can't find your answer?

Walk through your Jobylon to Bullhorn ATS & CRM migration with a real engineer — 30 minutes, free, written quote within 24 hours.

Book a free 30 minute consultation

Most migrations land between three and five weeks for accounts under 5,000 Applications, 500 Jobs, and a single company schema. Migrations with multiple per-company field schemas, dynamic custom fields requiring support activation confirmation, large candidate databases (over 10,000 records), or complex pipeline stage sets requiring explicit stage-by-stage mapping move to seven to ten weeks because of Jobylon API rate-limit handling, extended schema discovery, and Bullhorn Record Type configuration per pipeline variant.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Jobylon.
Land in Bullhorn ATS & CRM, 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