HRMS migration

Migrate from Vacancy Filler to Bullhorn ATS & CRM

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

Vacancy Filler logo

Vacancy Filler

Source

Bullhorn ATS & CRM

Destination

Bullhorn ATS & CRM logo

Compatibility

83%

10 of 12

objects map 1:1 between Vacancy Filler and Bullhorn ATS & CRM.

Complexity

BStandard

Timeline

4-6 weeks

Rollback included Accuracy guarantee Field-level validation

Overview

What this migration involves

Moving from Vacancy Filler to Bullhorn is a structural migration from a UK-school-and-public-sector ATS into a globally-deployed staffing agency CRM and ATS. The most significant technical constraint is that Vacancy Filler has no publicly documented API or bulk export endpoint, meaning migrations must proceed via database export where the customer has direct access or via negotiated export mechanisms with Acendre (the platform's parent since 2021). Bullhorn receives migrated data through its standard import tools with field mapping configured per record type, and the included data import covers up to 15,000 records. We map Vacancy Filler Vacancies to Bullhorn Job Orders, Candidates to Candidates, and Applications to the appropriate placement or application record, preserving pipeline stage labels as a custom field for reporting continuity. Custom application questions per vacancy require schema-level mapping rather than simple field renaming. Talent Pools, Agency PSL records, and incomplete onboarding records migrate as separate passes with explicit customer decisions on backfill scope. Bullhorn workflows, automation rules, and reporting configurations do not migrate as code; we deliver a written inventory for the customer's admin to rebuild.

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

Vacancy Filler logo

Vacancy Filler

What's pushing teams away

  • Pricing is opaque and requires a sales conversation, making it difficult for smaller organisations or those with rapid headcount growth to budget predictably.
  • The platform's UI and feature set have not kept pace with modern ATS competitors, particularly around candidate relationship management and engagement tracking.
  • Acendre acquisition in 2021 raised questions about product roadmap direction, support continuity, and whether Vacancy Filler will be merged into a broader talent management suite.
  • Integration ecosystem is limited to Microsoft Outlook, Twitter, LinkedIn, and job boards, with no native HRIS or onboarding payroll integration available out of the box.
  • Limited API documentation and developer access means organisations with custom integration requirements struggle to build on top of the platform.

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 Vacancy Filler objects map to Bullhorn ATS & CRM

Each row shows how a Vacancy Filler 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.

Vacancy Filler

Vacancy

maps to

Bullhorn ATS & CRM

Job Order

1:1
Fully supported

Vacancy Filler Vacancies map directly to Bullhorn Job Orders. The Vacancy title, department, location, salary range, and status migrate to Bullhorn JobOrder title, Department, Address, Salary, and Status. Posting dates migrate to Bullhorn dateStart. Bullhorn JobOrder has a jobBoardList field that we populate with the extracted job board posting records from Vacancy Filler. Vacancy status of open, closed, filled, or on-hold maps to Bullhorn JobOrder status values, with the customer deciding whether archived vacancies migrate at all or only active postings.

Vacancy Filler

Candidate

maps to

Bullhorn ATS & CRM

Candidate

1:1
Fully supported

Vacancy Filler Candidate profiles map to Bullhorn Candidate records. Name, email, phone, address, and work history fields migrate directly. CV and resume attachments migrate as Bullhorn Resume files linked to the Candidate via ContentDocumentLink. Where a Candidate in Vacancy Filler has been added to multiple Vacancies or a Talent Pool, the Bullhorn Candidate record is created once and referenced by multiple JobOrders through the CandidateJobOrder join.

Vacancy Filler

Application

maps to

Bullhorn ATS & CRM

CandidateJobOrder

1:1
Fully supported

Vacancy Filler Applications (the join record between a Candidate and a Vacancy) map to Bullhorn CandidateJobOrder records. Application status (applied, shortlisted, interview, offer, rejected, withdrawn) maps to the CandidateJobOrder status field. Screening scores and notes from Vacancy Filler migrate as custom fields on CandidateJobOrder. The Candidate and JobOrder references are resolved at migration time using the name and title dedupe keys.

Vacancy Filler

Hiring Manager / User

maps to

Bullhorn ATS & CRM

User

1:1
Fully supported

Vacancy Filler user accounts (name, email, role, team assignment) map to Bullhorn User records. We match by email as the dedupe key. Permissions and role structures are not portable between systems; we export the full user-role matrix as a separate mapping table and recommend the customer manually rebuild Bullhorn role configurations after migration. Users without an email match in the destination Bullhorn org go to a reconciliation queue for admin provisioning.

Vacancy Filler

Job Board Posting Record

maps to

Bullhorn ATS & CRM

JobBoardList (on JobOrder)

1:1
Fully supported

Vacancy Filler tracks which job boards each Vacancy was posted to as linked posting records. We extract board name, posting URL, posting date, and status and load them as entries in the Bullhorn JobOrder jobBoardList field. This preserves the posting history for audit purposes even though Bullhorn distributes postings through its own Bullhorn Distribution network post-migration.

Vacancy Filler

Talent Pool

maps to

Bullhorn ATS & CRM

List (custom)

lossy
Fully supported

Vacancy Filler Talent Pools are distinct from active applications; they hold longlisted candidates for future roles. Bullhorn has no native Talent Pool object. We migrate talent pool membership as Bullhorn Candidate List records (named per the original Vacancy Filler pool) with the candidates linked via CandidateListItem records. The customer chooses whether to migrate all talent pools or only active ones, and whether to set an expiry on pool membership in Bullhorn.

Vacancy Filler

Custom Application Questions

maps to

Bullhorn ATS & CRM

Candidate Custom Fields (JobOrder-scoped)

lossy
Mapping required

Vacancy Filler supports bespoke screening questions per Vacancy. Each question schema is stored at vacancy level and answers at application level. We extract the question schema for each Vacancy, group vacancies by common question sets, and map answers to Bullhorn CandidateJobOrder custom fields or Candidate custom fields depending on whether the question is vacancy-specific or candidate-general. Vacancies with unique one-off question sets receive individual mapping treatment with explicit customer sign-off before migration.

Vacancy Filler

Pre-Hire Test / Score

maps to

Bullhorn ATS & CRM

Custom Fields on CandidateJobOrder

1:1
Fully supported

Test results and scores attached to Vacancy Filler Applications migrate as custom fields on the Bullhorn CandidateJobOrder record. Raw scores and pass/fail labels transfer directly. Where Vacancy Filler uses a specific assessment provider, we preserve the assessment name as a field label and the score value; the destination Bullhorn org's admin configures any new assessment integration post-migration.

Vacancy Filler

Interview Schedule

maps to

Bullhorn ATS & CRM

Event (Calendar Entry)

1:1
Fully supported

Vacancy Filler interview records (date, time, interviewer(s), format, outcome notes) map to Bullhorn Event records linked to the relevant CandidateJobOrder. Interview format (in-person, video) migrates to Event location or a custom Event field. Interviewer names resolve to Bullhorn User references where users exist in the destination; otherwise they store as text. Outcome notes migrate to Event description. Bullhorn's native calendar integration (Google Calendar, Outlook) is configured separately post-migration.

Vacancy Filler

Onboarding Record

maps to

Bullhorn ATS & CRM

Placement (custom fields)

1:1
Fully supported

Vacancy Filler Onboarding Records include new-hire document completion status, induction checklist progress, and start-date details. Bullhorn does not have a native onboarding record object; we map onboarding fields to custom fields on the Placement record (or a custom Onboarding object if the customer licenses Bullhorn Onboarding). Onboarding records in Vacancy Filler are frequently incomplete for mid-year migrations or active hiring pipelines. We flag each incomplete record with a completion-percentage custom field rather than silently dropping them and defer to the customer on backfill scope.

Vacancy Filler

Agency PSL (Preferred Supplier List)

maps to

Bullhorn ATS & CRM

Corporate (with type = Agency)

1:1
Mapping required

Vacancy Filler's Agency Module stores preferred recruitment agencies with name, contact, specialism, and tier. We export these as Bullhorn Corporate records with a type field set to Agency and load them into the destination as a separate agency list. Bullhorn's corporate record supports address, primary contact, and custom fields for specialism and tier, enabling the agency's preferred agency list to be maintained in Bullhorn post-migration.

Vacancy Filler

Vacancy Notes

maps to

Bullhorn ATS & CRM

Note (on JobOrder)

1:1
Fully supported

Vacancy-level notes and internal comments in Vacancy Filler migrate as Bullhorn Note records linked to the corresponding JobOrder via ContentDocumentLink. Note body migrates as rich text. The note author and creation date are preserved as metadata on the Note. This is a lower-priority pass executed after the primary record 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.

Vacancy Filler logo

Vacancy Filler gotchas

High

Acendre acquisition creates platform continuity uncertainty

High

No publicly documented API for bulk data export

Medium

Pricing is opaque with no public tiers

Medium

Onboarding records are often incomplete at migration time

Low

Custom application questions vary per vacancy

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

  • Vacancy Filler has no documented API or bulk export endpoint

    The technical research did not surface any publicly accessible API documentation, developer portal, or bulk export endpoint for Vacancy Filler. This means migrations must proceed via database export where the customer has direct database access, or via a negotiated export mechanism with Acendre (the parent company since October 2021). We scope this upfront in discovery: if the customer cannot provide a database export or Acendre cannot provide a supported export mechanism, we negotiate a manual export format and extended timeline. This constraint is the single largest driver of migration timeline and cost variance for this pair.

  • Acendre acquisition requires direct verification of export eligibility

    Vacancy Filler was acquired by Acendre in October 2021, and account data, support tier, and SLA terms are now governed by Acendre's policies rather than Vacancy Filler's original terms. Before beginning any migration scope, we verify the customer's current support contract with Acendre and confirm data export eligibility. Some Vacancy Filler customers may be on legacy contracts with different data portability provisions. We require written confirmation from Acendre or the customer's account manager that a full data export is permitted before we begin extraction.

  • Custom application questions require per-vacancy schema mapping

    Vacancy Filler supports bespoke screening questions per vacancy, stored as question schemas at vacancy level with answers stored at application level. These cannot be mapped as simple field renames. We extract the question schema for each vacancy, group vacancies by common question sets, and map answers to Bullhorn custom fields on CandidateJobOrder. Vacancies with unique one-off question sets (not shared with other vacancies) receive individual mapping treatment. The customer must sign off on each unique schema mapping before migration. This is a manual review step that can extend timeline if many vacancies have bespoke question sets.

  • Incomplete onboarding records require explicit customer decision

    Vacancy Filler onboarding data is entered progressively as new hires complete induction steps. Organisations migrating mid-year or with active hiring in progress will have onboarding records at varying completion percentages. We do not silently drop incomplete records. We flag each record in the pre-migration data audit with a completion-percentage field and a status note, and the customer decides whether to backfill the remaining data manually in Bullhorn after migration or accept the partial state. This decision is documented before migration begins to avoid scope creep at cutover.

  • Bullhorn State field uses US terminology not UK-friendly by default

    Bullhorn's career portal and address handling defaults to US-style State/County fields, which do not map cleanly to UK locations. Vacancy Filler is primarily used by UK schools and public-sector organisations where the equivalent geographic field is County or Region. We address this by mapping Vacancy Filler location data to Bullhorn's Address object with County treated as State, or to a custom Region field, depending on the customer's Bullhorn configuration. This is a cosmetic mapping issue but one that affects candidate-facing job postings post-migration.

Migration approach

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

  1. Discovery and export method confirmation

    We audit the customer's Vacancy Filler instance for record volumes (Vacancies, Candidates, Applications, Talent Pool members, Agency PSL records, onboarding records), custom question schema count per vacancy, active vs archived vacancy ratio, and onboarding completion status. In parallel, we confirm the export method: direct database export if the customer has access, or Acendre-supported export if not. We require written confirmation from Acendre or the account manager that export is permitted before beginning extraction. The discovery output is a written migration scope with record counts per object, export method confirmed, and timeline estimate.

  2. Schema design and custom field provisioning in Bullhorn

    We design the Bullhorn destination schema before any data import. This includes creating custom fields on JobOrder (for job board posting history), CandidateJobOrder (for application-stage custom questions and scores), Candidate (for talent pool membership flags), and any custom objects or fields for onboarding data. We deploy schema changes to the customer's Bullhorn Sandbox or staging environment first for validation. Custom question schemas are grouped by common sets; each unique schema receives a mapping document that the customer reviews and signs off.

  3. Data extraction from Vacancy Filler

    We execute data extraction using the confirmed method (database export or negotiated Acendre export). Vacancies and their linked job board posting records extract first as the parent record set. Candidates extract second with CV and resume attachments. Applications extract third as the join records with status, stage, and custom question answers. Talent Pool membership, Agency PSL records, and Interview Schedules extract as separate passes. Onboarding records extract last with completion status flagged. Each extract emits a row-count report that we reconcile against the discovery audit counts before proceeding to transform.

  4. Transform, deduplicate, and mapping application

    We apply the mapping transforms to the extracted data: Vacancy fields to JobOrder fields, Candidate fields to Candidate fields, Application fields and answers to CandidateJobOrder fields. We resolve Vacancy Filler user references to Bullhorn User records by email match; unresolved users go to a reconciliation queue for the customer's Bullhorn admin to provision. Custom question answers are written to Bullhorn custom fields per the per-vacancy schema mapping documents signed off in step 2. Incomplete onboarding records receive a completion-percentage field rather than being dropped. Deduplication runs on Candidate (by email) and JobOrder (by title and dateStart) to prevent duplicate records.

  5. Sandbox or staging migration and customer reconciliation

    We run a full migration into the customer's Bullhorn Sandbox environment using production-like data volumes. The customer reconciles a random sample of migrated records against the Vacancy Filler source data: checks Candidate profiles against source CVs, verifies application stage labels on JobOrders, confirms interview schedule dates and interviewers, and reviews onboarding completion flags. The customer signs off the Sandbox migration before production migration begins. Any mapping corrections are made during this phase.

  6. Production migration in dependency order

    We run production migration in record-dependency order: JobOrders first (the parent Vacancy records), then Candidates, then CandidateJobOrder applications linking them, then Talent Pool Lists with CandidateListItem membership, then Agency PSL records as Corporate entities, then Interview Events, then Onboarding custom fields on Placements, and finally Notes on each record type. Each phase emits a row-count reconciliation report before the next phase begins. Vacancy writes in Vacancy Filler are frozen during cutover. A final delta migration captures any records created or modified during the migration window.

  7. Cutover, validation, and automation rebuild handoff

    We enable Bullhorn as the system of record after the delta migration confirms zero new writes in Vacancy Filler during the cutover window. We deliver a written inventory of Bullhorn workflows, automation rules, and reporting configurations that require rebuilding, with notes on recommended equivalents in Bullhorn. We support a one-week hypercare window where we resolve any data quality issues raised by the recruiting team. Bullhorn Onboarding configuration, Bullhorn Automation rules, and reporting dashboards are rebuilt by the customer's Bullhorn admin or a Bullhorn partner as a separate engagement from the data migration.

Platform deep dives

Context on both ends of the pair

Vacancy Filler logo

Vacancy Filler

Source

Strengths

  • Single system covering vacancy creation, candidate tracking, interview scheduling, and onboarding.
  • Multi-job-board posting from one vacancy entry across major UK job boards.
  • Designed for both high-volume and specialist recruitment with a fixed-price positioning.
  • Strong user reviews for ease of use among non-technical HR staff in education and public sector.

Weaknesses

  • No publicly documented API for programmatic access, limiting automation and integration options.
  • Pricing is opaque and requires direct sales engagement with no self-serve trial or tiered public pricing.
  • Acendre acquisition introduces uncertainty about long-term product independence and roadmap.
  • Limited third-party integrations beyond Outlook, LinkedIn, and major job boards.
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 Vacancy Filler and Bullhorn ATS & CRM.

B

Overall complexity

Standard migration

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

  • Object compatibility

    A

    All 7 core objects map 1:1 between Vacancy Filler 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

    Vacancy Filler: Not publicly documented — typical SaaS limits assumed and confirmed during scoping..

  • Data volume sensitivity

    B

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

Estimator

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

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

Can't find your answer?

Walk through your Vacancy Filler 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 four and six weeks for accounts under 10,000 Candidates and 1,000 Vacancies with a confirmed database export from Vacancy Filler. Migrations requiring Acendre-negotiated export, more than 50 unique custom question schemas across vacancies, incomplete onboarding record handling, or Agency PSL migration extend to eight to twelve weeks. The export method is the primary timeline driver; the no-API constraint means extraction timelines depend on database access or Acendre coordination rather than a self-service API call.

Adjacent paths

Related migrations to explore

Ready when you are

Move from Vacancy Filler.
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