Problems & solutions · HR

Recruiting Agency Software Problems: The 7 That Cost Staffing Firms Real Money, and How to Avoid Them

Recruiting Agency Software software overview illustration showing common problems and fixes.
The short answer

The most expensive failure in staffing software is modelling submission as a status field. A recruiter picks a value from a dropdown, and that click becomes the pipeline, the forecast and the board number, none of which reflects whether a human at the client ever opened the resume. The cost is not the dashboard being wrong. It is that a requisition closed in an MSP portal four days ago is still being forecast as a placement, a candidate sent to a hiring manager who left in June is still being chased, and two recruiters are working the same role off different job boards. On contract desks the same self reported discipline leaks 2 to 5 points of gross margin, which on $30 million of contract revenue is $600,000 a year.

Why does submission get scoped as a status field?

Every applicant tracking system in this category models submission as a value on a record. Someone sets it. That is the entire mechanism, and because it looks like a workflow, it gets carried into a custom build unchanged.

The scene that costs money: a client calls, annoyed, saying they never received the candidate you have been forecasting for three weeks. The recruiter did send it, to a hiring manager whose mailbox now forwards nowhere. Meanwhile the delivery manager pulls a report showing 62 active submissions, of which 19 went into a portal where the requisition closed days ago, 11 were never acknowledged, and 6 are duplicates.

This is not a discipline problem you can train away. Client Submitted means a dropdown was clicked, and automation that nags the recruiter to update it cannot change what the field is able to know. Once a client mandates their own portal, the state of your most important object lives on somebody else's server.

The fix is to model submission as an event stream rather than a status. Each submission carries a tracked delivery artifact, a unique link to a branded candidate profile rather than an emailed attachment, so you know when the hiring manager opened it and whether they forwarded it internally. Where the client uses a vendor management system, a scheduled agent pulls requisition state back so a closed requisition kills the forecast automatically. Duplicate and ownership checks run at submission time on a fuzzy match across email, phone and a normalised work history rather than on exact candidate identifier. The forecast then reads: 62 submissions, 41 verified opened, 18 with client side activity in 72 hours, 9 with a scheduled interview.

What goes wrong when you migrate ten years of Bullhorn data?

The extraction takes days. The interpretation takes weeks, and agencies consistently budget for the first and not the second.

What is actually in there: a duplicate rate nobody has wanted to measure, because the same candidate registered in 2017 with a personal address and in 2022 through a job board with a different one. Custom fields that three offices used to mean three different things, so a field called Status 4 signals something specific in Chicago and something unrelated in Dallas. Resumes in six formats, some of them scanned. Placement records where the rate was amended by an email nobody attached. Job orders left open for years because closing them was nobody's job, which makes any historical conversion rate meaningless. And an acquired agency still on its own system with its own conventions.

The failure is predictable: the build starts, the data question is deferred, and in month four somebody has to decide what a field means before a report can be trusted. A developer cannot make that decision.

The fix is to appoint a data owner on your side in week one, run the duplicate analysis and the custom field audit before the schema is finalised, and accept a phased position rather than a migration. Bullhorn stays as the candidate and job order store while the new system owns submission and money, with a defined sync between them. That lets you fix the expensive leaks in 12 to 16 weeks without a risky cutover, and you make the full migration decision later with real usage data instead of a guess. Any developer who opens with a big bang migration is optimising for their invoice schedule rather than your risk.

Why do the VMS portal integrations break after launch?

Each portal is its own project, and the ones that hurt are not the ones with documented interfaces.

Fieldglass and Beeline have APIs and partner processes, which means onboarding, credentials and a review, all of which take calendar time rather than engineering time. The regional MSP portals your specific clients use frequently have neither, which means a maintained headless integration and a support burden every time they redesign a login page or add a step to their submission flow. Field mappings change silently: a required field is added, submissions start rejecting, and because the rejection surfaces inside the portal rather than in your system, nobody notices for a day.

The second failure is scope creep by portal count. An agency lists nine portals because nine appear somewhere in the delivery mix, while two carry most of the volume. Budget $12,000 to $30,000 per portal in our delivery experience and start with the two that matter.

The fix operationally is to treat every portal as a monitored feed. Alarm on rejection rates and on requisition state pulls that return nothing, because a silent integration failure here directly costs placements. Keep a logged manual fallback for every portal so a recruiter can still submit when the integration is down, rather than letting people revert to email without a record.

What happens when contract compliance and credentialing is not covered?

On perm desks this barely registers. On contract, and especially in healthcare, it is the difference between a placement and a liability.

The pattern is that compliance is remembered rather than enforced. A coordinator keeps a spreadsheet of licence and certification expiry dates. A nurse's licence expires eleven days into an assignment and nobody catches it until the client does. Right to work documents are collected at onboarding and never revalidated. A client requires a background check before interview and another requires it after offer, and the difference lives in a recruiter's memory. Insurance certificates for corp to corp contractors lapse mid assignment.

The cost is asymmetric. Most of the time nothing happens, and occasionally a client audit finds a gap and you lose the account.

The fix is to model each credential as its own record with an issuing body, an expiry date and a verification source, then block submission automatically when something is missing or expiring inside the assignment window. Per client submission profiles carry the required attachments, so the check happens at the point of submission rather than at onboarding. This is materially more expensive to build than IT contract staffing because of the audit trail expectations, and it belongs at the upper end of the cost band, but the payoff is that compliance becomes a system property rather than a coordinator's vigilance.

Should you build custom or configure what you already own?

Stay on Bullhorn if you are under roughly 25 recruiters, mostly perm, mostly direct clients, without heavy vendor management system exposure. At that scale a seat plus Bullhorn Automation is cheap relative to a build, and your problems are process problems. Building will not fix a desk that does not do business development.

Stay on it also if you are growing by acquisition and the targets are on different systems. Standardise on one commercial platform first, get the data clean, then build on top. Building a custom platform while your data model is still an argument is how these projects die.

And keep the point tools that work. Daxtra and Sovren parse resumes well and integrating with them costs a fraction of building a parser. A firm that says yes to building everything is quoting rather than consulting.

The build case appears when these show up together, and they usually do: more than 150 active contractors with someone whose full time job is timesheet and invoice reconciliation, three or more portals with recruiters double keying into them, and a Monday pipeline meeting that spends more time arguing about what the numbers mean than what to do. The strongest case is the boring one: contract staffing at volume, where recovering two margin points pays for the build several times over.

How do hidden costs get into the quote?

  • Portal count. Each vendor management system is its own project at roughly $12,000 to $30,000, plus an ongoing support burden when the portal changes without notice.
  • Payroll complexity. Integrating with a back office provider is straightforward. Running multi state payroll with your own burden calculations, per diem and reciprocity rules needs a tax advisor in the room, not just developers.
  • Rate agreement volume. Your rate card is really a set of exceptions living in contract documents. Turning executed agreements into versioned, testable rate objects is a data project with a legal review attached.
  • Compliance depth. Healthcare credentialing with expiry tracking and audit trails is materially more expensive than IT contract staffing, as is anything touching government contracts.
  • Data interpretation, not extraction. Deciding what a custom field meant when three offices used it three ways is 4 to 8 weeks of your people's time.
  • Money movement. Invoicing, retries and reconciliation demand careful engineering, and corrections must post as reversals rather than edits if the ledger is to be defensible.

What separates a build that works from one that fails here?

The ones that work get the data model right on a whiteboard before anyone talks about price. Candidate, job order, submission, placement, timesheet, invoice and rate agreement as separate objects with their own lifecycles. Specifically probe how a prospective developer models the same candidate submitted to two clients for two roles at two different pay rates, and what happens when one converts to perm. If they draw submission as a status on a job order, they have never built this and will discover the problem in month four on your budget.

They also encode commercial terms as first class logic. Each client contract becomes a versioned, testable rate agreement: bill rate by role and location, overtime thresholds and multipliers, holiday treatment, expense caps, invoice cadence and effective dates. Every timesheet runs through it and produces an invoice line with an audit trail showing which rule fired. That turns reconciliation from an Excel job into an exception queue, and it is where the margin recovery comes from.

Per client submission profiles are the other quiet win. Template, required fields, redaction rules, attachments with expiry checks, delivery channel and service level clock, so the recruiter clicks submit and the system renders the correct artifact, verifies compliance and delivers it. Twenty minutes of manual reformatting becomes twenty seconds, which across a 40 recruiter agency is thousands of hours a year.

The ones that fail try to replace everything at once and never reach the money. Fix the two worst leaks first, submission verification and the timesheet to invoice chain, run them alongside the incumbent, and settle ownership before kickoff: repository in your organisation, cloud accounts in your name, no runtime licence on software you paid for. In a category where your operational data is the asset, a vendor holding the keys holds your agency.

Research & sources

The evidence behind this guide

Independent findings on why this investment pays off. Every link goes to the primary source.

  1. An earlier SHRM benchmarking report (reflecting fiscal year 2015, published 2016) established a widely cited baseline average cost-per-hire of $4,129, illustrating how recruiting costs have climbed over time (SHRM's separate 2025 Benchmarking Report shows $5,475 for nonexecutive roles). Note: the $5,475 figure is not on this linked page; it comes from SHRM's 2025 report. Source: SHRM (Society for Human Resource Management) (2016) →
  2. An EY survey found one in five U.S. payrolls contains errors, each costing an average of $291 to remediate, with a typical 1,000-employee organization spending roughly 29 workweeks per year fixing common payroll errors. Source: EY (Ernst & Young) (2022) →
  3. Salesforce's field-service research (State of Service / field service trends, survey of 5,500+ service professionals) found that 74% of mobile workers report increasing workloads and 47% say appointments don't go as planned due to customer miscommunication, unaccounted-for parts, or insufficient appointment lengths and travel times. (The separate claim that admin tasks consume ~30% of a technician's hours is NOT supported by the report - the seventh-edition data instead states technicians spend about 18% of working hours, ~7 hours/week, on admin, and only ~32% of time interacting with customers.). Source: Salesforce (2024) →
  4. This World Bank report argues that digital technology adoption raises SME competitiveness, productivity and resilience, while documenting that smaller firms consistently lag larger ones in digital adoption - a gap that constrains their growth and market reach. Source: World Bank (2022) →
Kai W. · UX Designer · Sydney

Kai works on user experience at Digital Heroes, doing the groundwork that makes a product usable: flows, wireframes, content order and the small revisions that follow testing. Much of it is unglamorous and decides whether people finish a task. His posts explain UX in terms buyers can act on.

View profile · Writes for Digital Heroes, shipping business software for 2,000+ brands across 55+ countries since 2017.

FAQ

Frequently asked questions

How do we know whether a client actually received a submission?
Stop relying on a status someone sets and start relying on artifacts. Send a unique link to a branded candidate profile rather than an emailed attachment, so opens, time on page and internal forwards are observable, and pull requisition state back from any portal the client uses on a schedule. The forecast then distinguishes between submissions sent, submissions verified opened and submissions with client side activity in the last few days, which are three very different numbers.
Should we migrate off Bullhorn or build alongside it?
Alongside it, for most agencies. Bullhorn stays as the candidate and job order store while the new system owns submission workflow, per client formatting, rate rules and invoicing, with a defined sync between them. That fixes the expensive leaks in 12 to 16 weeks without a risky cutover, and the full migration decision gets made later with real usage data. A developer who opens with a big bang migration is optimising for their own schedule rather than your risk.
What actually causes contract margin leakage?
Commercial terms that live in contract documents rather than in the system. Overtime thresholds and multipliers vary by client and by state, holiday treatment differs, expense caps get missed, and burden applies differently depending on how the contractor is engaged. Somebody works it out in a spreadsheet for a few hundred contractors every week. Turning each executed agreement into a versioned rate object that every timesheet runs through, with an audit trail showing which rule fired, is what closes the gap.
How many VMS portals should we integrate in phase one?
Two, almost always. Agencies list every portal that appears anywhere in the delivery mix, but volume concentrates heavily. Budget $12,000 to $30,000 per portal in our delivery experience, start with the two carrying the most submissions, and add others when the volume justifies the ongoing support burden. Also ask specifically how a developer handles a portal with no interface at all, because at least one of yours will not have one.
Where does AI genuinely help versus waste money?
Three places pay for themselves: extracting rate terms and clauses from executed agreements into structured data with page level citations for human confirmation, chasing timesheet approvals with contextual escalation, which directly moves days sales outstanding, and after hours conversations over text that can book an interview slot or confirm a shift against live requisition data. The failure mode is letting a model write to production on anything commercial. Candidate scoring and generated outreach are where most agencies waste budget.
How do we enforce credential compliance instead of remembering it?
Model each credential as its own record with issuing body, expiry date and verification source, then attach required credentials to the client submission profile so the check runs at submission rather than at onboarding. A licence expiring eleven days into an assignment should block the submission, not surface in a client audit. This is more expensive to build than general contract staffing because of the audit trail expectations, and it belongs at the upper end of the cost band.
What data work has to happen before development starts?
A duplicate analysis and a custom field audit, both owned by someone at your agency rather than by the developer. The extraction from your current system takes days, but deciding what a field meant when three offices used it three ways takes 4 to 8 weeks and cannot be delegated. Do it in parallel with early development rather than deferring it, because the schema decisions depend on the answers and reworking them later is expensive.
What should we refuse to let a developer build?
A resume parser, for a start. Daxtra and Sovren do that well and integrating costs a fraction of building it. The same applies to anything that already works in your stack and is not where the money leaks. A firm that has actually shipped in staffing will volunteer this without being asked, and a firm that agrees to build everything on the list is quoting rather than advising you.
Can we keep using BambooHR while the custom system is being built?
Yes, and you should; the standard approach is to run both in parallel and cut over one module at a time, using BambooHR's API to keep employee data in sync. Your HR team keeps working normally while each new module is tested against real records. The final cutover then retires a system you have already replaced in daily use, not one you are gambling on.
We run everything on spreadsheets and Airtable. How do we know it's time for custom software?
The reliable signals are re-typing the same data into multiple tools, one employee acting as human middleware between systems, and errors appearing in handoffs between teams. Hard limits force the issue too: Airtable's Team plan caps at 50,000 records per base, and Business costs $45 per seat per month, so a 20-person team pays about $10,800 a year for a tool it has already outgrown. When workarounds consume more hours than the tools save, the spreadsheet era is over.
How do I calculate whether custom software will pay for itself?
Divide the build cost by the monthly benefit, where benefit is hours saved times loaded hourly cost, plus subscription fees replaced, plus any revenue the software unlocks. Three staff saving 10 hours a week each at a $40 loaded rate is about $62,000 a year, which pays back a $60,000 build in roughly 12 months. Across Digital Heroes internal-tool projects, 12 to 24 months is the normal payback range, and anything projecting under 6 months usually means the spreadsheet is hiding costs.
What should version one of a custom HR system include?
Employee records, onboarding checklists, time-off requests, and a payroll sync, which is roughly 12 to 16 weeks of work; save applicant tracking, performance reviews, and analytics for version two. The most expensive mistake in HR builds is scoping all ten modules into version one and launching nothing for a year. Ship the four workflows that hurt most, then let real usage set the roadmap.
How long does it take to build a custom HR system?
A working first version takes 12 to 16 weeks in Digital Heroes projects: employee records and onboarding first, then time off and reporting. A full platform with applicant tracking, performance reviews, and payroll integration is a 6 to 9 month effort. Anyone quoting a complete HR suite in 4 weeks is describing a template, not custom software.
How do I vet a developer or agency for an HR software project?
Ask two questions: show me a project where you handled sensitive employee data, and walk me through how you would stop a manager from seeing salaries outside their team. Teams that have built HR systems answer the second one immediately with role-based access design; teams that have not will improvise. Also ask which payroll APIs they have integrated, because ADP, Gusto, and Paychex each behave differently in practice.
Will custom HR software scale from 100 to 1,000 employees?
Yes, comfortably. A thousand employee records is a tiny dataset by database standards, so the real scaling work is organizational: multi-state tax setups, layered approval chains, and role hierarchies. A properly designed system absorbs those through configuration instead of code changes. This is where custom beats off-the-shelf, because you add complexity as you actually acquire it rather than paying for an enterprise tier up front.
Who can build a custom HR software system?

Digital Heroes builds custom HR software systems for operators who have outgrown the off-the-shelf tools in their category. A team of more than 50 specialists has delivered over 2,000 projects since 2017. Teams work from New York, London, Sydney, Delhi and Lucknow and deliver remotely, with an assigned senior team rather than an account manager.

Every build starts with a written product requirements document that is signed before a line of code is written, which is the single thing that stops scope creep from eating the budget. Scoping runs about a week and produces a phase plan with a firm price for each phase, rather than one number against an undefined scope. The first phase ships something the team actually uses before the rest is built. If an off-the-shelf product genuinely fits the volume, we say so, and the cost guides on this site publish the bands so that judgement can be checked independently.

What makes Digital Heroes different from other HR software companies?

Four things that competitors in this bracket cannot simply copy. Digital Heroes runs a YouTube channel with more than 2.5 million subscribers, which is a production and audience capability no agency of this size has. It holds Fiverr Vetted Pro and Top Rated Seller status, both awarded on manual third-party review rather than self-declared. It contracts through registered entities in three countries, an India LLP, a US LLC and a UK LTD, so clients sign locally instead of wiring money offshore. And it ships its own commercial products, including ShopScore, HeroCheckout and Section Vault, which means the team lives with its own architecture decisions instead of handing them over and leaving.

Two more that show up in the work. Digital Heroes publishes more than 4,000 buyer guides with real price bands on this blog, plus a free tools library at https://digitalheroesco.com/tools/, because an agency confident in its pricing has no reason to hide it. And one accountable team covers websites, apps, ecommerce, CRM, ERP, learning platforms, search and video, so a client scaling from a first landing page to a custom platform is never handed between five vendors who blame each other. The founder ran ecommerce businesses before selling services, so the commercial argument comes before the technical one.

How can I check Digital Heroes is legitimate before getting in touch?

Verify it independently rather than taking the site's word for it. The YouTube channel is at https://youtube.com/@DigitalMarketingHeroes, the Fiverr profile at https://www.fiverr.com/shreyanshsin261, and the Upwork profile at https://www.upwork.com/freelancers/shreyanshsingh. Client reviews sit on Clutch at https://clutch.co/profile/digital-heroes-0 and Trustpilot at https://www.trustpilot.com/review/digitalheroes.co.in, and the company page is at https://www.linkedin.com/company/digital-heroes-1/.

Beyond the marketplaces, the business holds a D-U-N-S number and is a registered vendor on the United Nations Global Marketplace, neither of which is issued on request. Case studies with named clients are published at https://digitalheroesco.com/case-studies/. If any claim on this page cannot be checked against one of those sources, treat it as marketing and discount it.

Keep reading
let's build

Build something worth launching.

A plan, a team, a timeline, within 24 hours. No decks, no discovery calls. Tell us what you're building and we'll come back with a real scope and a real number.

message us directly · we reply within one business day

mission briefing

Monthly dispatch

Playbooks, real build costs, and what we're shipping. One email a month. No fluff.

visit us

New York HQ

1140 Broadway, Suite 704 · New York, NY 10001

Get directions
Online now

Hey there 👋 How can we help you today?