Author: akhilk@epinc.ca

  • What AI agents actually do in a staffing agency (no slideware)

    The staffing industry is drowning in AI slideware: glowing-brain graphics, “agentic transformation” decks, and vendor demos that never quite make it to production. This post is the opposite. It’s an inventory of what verifiably exists in the Zoho stack today, what’s still rolling out, and four agents we describe to clients as implementable patterns, because we implement them.

    One definition first. An agent, stripped of keynote language, is software that watches for an event, decides something within limits you set, and executes a multi-step response without a human driving each step. The value in staffing isn’t intelligence, it’s vigilance. Agencies lose money to things nobody was watching: an expiring credential, a req that sat for four hours, a contractor rolling off quietly, a no-show discovered at 6:15am. Agents don’t get bored watching.

    What’s shipping today (verified)

    Inside Zoho Recruit, generally available now: resume parsing and extraction (Standard plan up), Zia candidate matching with contextual scoring (semantic matching beyond keyword overlap) on the Enterprise tier, AI-drafted job descriptions, profile summaries and outreach emails, screening assistance, and a candidate-facing chatbot that answers questions, collects resumes, matches jobs, and pre-screens on your careers site. Elsewhere in the suite: Zia lead scoring and anomaly detection in CRM, Ask Zia natural-language queries in Analytics, reply assistance in Desk, and Zobot in SalesIQ.

    That’s the unglamorous foundation, and it matters more than the shiny layer: an agent that ranks candidates is only as good as the parsing and matching underneath it.

    What’s real but still settling (also verified, so read the flags)

    Zia LLM. Zoho recently announced its own in-house language models, hosted in Zoho’s own data centers. The privacy pitch is that no third-party model sees your candidate data, which lands well with healthcare and financial-services clients. It’s going live across the suite, but rollout status genuinely varies app by app. We verify per feature before we commit a client to it, and you should too.

    Zia Agents and Agent Studio. The Agent Store now lists 100+ prebuilt agents across 60+ Zoho apps (verified on zoho.com/zia/agents). Agent Studio, the no-code builder with 700+ built-in actions, is where custom staffing agents get made. Building and deploying is currently free; model usage is metered, via prepaid credits or your own API key, and the pricing model is still fluid. We do not quote firm AI run-costs to clients, and we’d be wary of anyone who does.

    Zoho MCP. Zoho ships an official MCP server (zoho.com/mcp) exposing actions from 15+ apps (CRM, Mail, Cliq, Desk, Projects and others) to any MCP-compliant client, including Claude. Auth is OAuth and user-scoped: an agent can only do what the connected user can do, which is the right default. The honest flag: Recruit and Workerly are not yet in the documented MCP app list, so agentic recruiting flows via MCP today route through CRM, Mail, and Cliq, with Flow bridging into Recruit. That gap is real; plan around it.

    The general rule we give clients: treat the automation layer (Flow, Blueprint, workflows) as concrete you can build on today, and the agent layer as rapidly-hardening: pilot it, measure it, and don’t put it on the critical path until it’s proven on your data.

    Four agents we build, as patterns

    Each of these is a pattern assembled from shipping components: Flow, Recruit, Workerly, Campaigns, Zia matching, and Agent Studio where it earns its place. None requires waiting for a roadmap.

    Credential Guardian. Watches every live credential file (licenses, certs, visas, clearances) against expiry dates. At 60/30/7 days out it messages the worker a re-upload link, escalates unanswered chases to a human, and blocks scheduling or submittal on red files via Blueprint stage gates. For a healthcare desk, where one expired ACLS card means a clinician pulled off the floor, this agent is the difference between an audit finding and a green binder. Built on: Recruit custom credentials module + Flow scheduled workflows + candidate portal + Blueprint validation.

    First-to-Submit. In IT and VMS-fed staffing, the first two or three quality submittals get the interviews, and the race is measured in hours. This agent parses an inbound req, runs Zia matching against your database, filters to compliance-complete candidates, and drafts submittal summaries so a recruiter reviews and sends inside the hour instead of inside the day. The human still approves every submittal; the agent just deletes the assembly time. Built on: Flow intake parsing + Zia matching + Recruit submittal templates, with Agent Studio drafting the summaries.

    Redeployment Radar. The industry redeploys about 3% of finishing contractors; best-in-class firms exceed 70%. This agent watches assignment end dates, fires a T-30 task with a Zia-matched shortlist of open roles attached, opens the extension conversation with the account manager, and drops unplaced roll-offs into a Campaigns nurture segment so nobody goes cold. We wrote a full post on this loop. It’s the highest-ROI automation in contract staffing.

    No-Show Shield. For shift-based desks, where the gap between fill rate and show rate is the most-cursed number in the vertical. The agent runs a confirmation cadence (booking, night-before, morning-of) through Workerly and SMS; anyone unconfirmed by the evening deadline triggers automatic standby activation, and a missed geofenced clock-in at shift start dispatches a replacement before the client calls. Built on: Workerly scheduling + Flow cadences + mobile clock-in, with the standby logic in Creator.

    Notice what all four have in common: the agent handles vigilance and assembly, and a human keeps every judgment call: who gets submitted, whether a lapsed credential gets an exception, which contractor gets which offer. That division of labor is what production AI in staffing actually looks like.

    The caveats, in one place

    Because this is the no-slideware post: Zia LLM rollout status varies per app, so verify per feature. Agent Studio’s usage pricing is unannounced, so budget for metering and don’t contract against it. MCP doesn’t yet cover Recruit or Workerly. Zia matching’s best tier requires Recruit Enterprise. And no agent fixes a badly-structured database. If your end dates, credentials, and skill tags aren’t captured as structured fields, that’s phase one, and it’s not optional.

    We’d rather ship you two agents that run every night than demo you ten that don’t. If you want to see which of these four patterns your current data could support, the systems audit is free and takes 30 minutes.

    Book a free systems audit →

  • Redeployment: the 3% problem hiding in your P&L

    Here are two numbers that should not be able to coexist.

    The average staffing firm redeploys roughly 3% of contractors coming off assignment. Best-in-class firms exceed 70% (CS Recruiters HR guide). Same industry, same candidate pool, same economics, and a 23x gap on the cheapest revenue any agency will ever earn.

    Because redeployment revenue is different in kind, not just degree. A redeployed contractor needs no job-board spend, no sourcing hours, no screening calls, no reference checks, and no client education if they stay in your ecosystem. You already know they show up, you already hold their compliance file, and they already trust your payroll. Compare that to the industry’s re-fill treadmill: temp worker turnover recently ran about 376% annually (American Staffing Association), so agencies refill the same seats constantly, mostly with strangers.

    Every contractor who rolls off and signs with a competitor is a placement you paid full acquisition cost for, walking out with the asset.

    Why almost everyone is at 3%

    Not laziness. Structure. Redeployment fails for the same reason at nearly every agency we’ve audited:

    • Nobody owns the end date. The recruiter who made the placement moved on to live reqs months ago. The account manager watches the client, not the contractor.
    • End dates live in a field nobody reports on. They’re in the ATS somewhere, but no dashboard surfaces “who finishes in the next 30 days,” so the trigger never fires.
    • The competitor calls first. In IT, contractors start fielding calls 4 to 6 weeks before a known project end. In travel nursing, if the next assignment isn’t lined up 2 to 4 weeks before contract end, the traveler signs elsewhere. Silence from you is a signal to them.
    • Redeployment pays like new business but is measured like nothing. Most agencies can’t tell you their redeployment rate. What isn’t measured isn’t managed.

    The fix is not a motivational meeting about hotlists. It’s a loop that runs whether or not anyone remembers.

    The T-30 loop, in Zoho

    Here’s the pattern we build, using three pieces most of our clients already own: Zoho Flow (the automation layer), Zoho Recruit (where assignments and candidates live), and Zoho Campaigns (the nurture channel). Note: for a working machine you need assignment end dates captured as structured fields in Recruit. That’s a day-one configuration rule, not an afterthought.

    T-45: the radar sweep. A scheduled Flow runs daily against Recruit, scanning every active placement’s end date. Anything crossing the 45-day line gets flagged into a “Rolling off” pipeline view, the one report leadership actually looks at.

    T-30: the trigger fires. Flow creates a redeployment task assigned to a named owner, with an SLA. Simultaneously, Zia candidate matching runs the contractor’s profile against open job orders and attaches the shortlist to the task, so the recruiter opens it and finds the matches already ranked. If nothing matches, the task says so, which is itself intelligence: sales now knows what req to go hunting for.

    T-30 to T-14: the human conversation. Automation earns the recruiter time for the one thing it can’t do: the call. “Your contract wraps on the 28th. Extension talks are happening / here are three roles we’ve matched you to. What do you want next?” The contractor hears it from you before they hear from a competitor.

    T-14: the client side. Flow pings the account manager about the same end date, because half of “redeployment” is actually extension, and extensions fall through cracks exactly the same way. A renewal opportunity opens in CRM automatically.

    T-0 and beyond: nobody goes cold. Contractors who roll off without a next assignment drop automatically into a Campaigns segment: a monthly hot-jobs email keyed to their skill tags, with opens and clicks written back to Recruit so recruiters call the warm ones first. The bench stays a bench, not a graveyard.

    None of this requires a heroic recruiter. It requires end dates in a field, one Flow, one Campaigns segment, and an owner for the task queue. We typically build the loop in the first two weeks of an Accelerate-tier engagement.

    What it looks like per vertical

    IT and professional staffing. The purest case: long assignments, known end dates, and contractors worth $15 to $30/hour in spread. The T-45/T-30 renewal-or-redeploy motion protects run-rate revenue on both sides: extensions that would have lapsed, and consultants who would have taken the first outside call.

    Healthcare travel. The window is tighter and the stakes are compliance-shaped. A traveler needs the next 13-week assignment locked 2 to 4 weeks before contract end, and re-credentialing a returning clinician from scratch wastes a sunk cost of 90 to 120 days (TalentPathway). The T-30 loop here matches against credential-complete facilities first, so the offer that goes out is one they can actually start.

    Light industrial. Assignments end weekly and the average industrial temp cycles out in about 10 weeks, so redeployment isn’t a monthly loop, it’s a same-day one. The pattern compresses: assignment ends in Workerly, matched shift offers go out by SMS that day, first yes gets booked. Keeping the pool warm is the whole game when annual turnover runs 70 to 100% or more.

    Skilled trades. Project-based and seasonal. The loop keys on project end dates and turnaround calendars: eight weeks before plant shutdown season, Flow re-runs availability checks against last year’s crews. Rebuilding a proven crew beats sourcing a new one on every metric a GC cares about.

    The math that makes it a P&L line

    Take a modest 10-person contract desk with 60 contractors on billing and average assignment length of six months. Call it 120 roll-offs a year. At a 3% redeployment rate, 4 of those stay with you. At even 40%, nowhere near best-in-class, it’s 48. If your average contract placement carries $25,000 in annual gross profit, that’s a seven-figure GP swing from candidates you already own, already screened, and already paid to acquire.

    The caveat, honestly stated: you won’t hit 70% in a quarter, and neither did the firms who are there now. Redeployment rates compound. Every cycle of the loop enlarges the warm pool and sharpens the match data. The firms at 70% have been running the motion for years. The only wrong move is staying at 3% because the end dates are sitting in a field nobody watches.

    See your own number

    Most owners can’t quote their redeployment rate, and the fastest way to find it is unpleasant: count last quarter’s roll-offs, count how many are still on your payroll. That number is the audit.

    If you’d like the loop built, with end-date capture, the T-30 Flow, Zia matching, the Campaigns bench nurture, and the dashboard that keeps everyone honest, that’s a standard part of how we wire agencies on Zoho. The systems audit is free and takes 30 minutes.

    Book a free systems audit →

  • The real cost of a staffing Franken-stack

    Nobody decides to build a Franken-stack. It assembles itself.

    You start with an ATS. Then sales wants a proper CRM, so Salesforce or HubSpot arrives. Marketing needs email, so Mailchimp. Finance runs QuickBooks. Someone adds DocuSign for offer letters, Calendly for interviews, Tableau because the owner wants dashboards, and Zapier to make any of it talk to the rest. Each purchase was reasonable. The total is not.

    By the time an agency calls us, the typical picture is seven to nine tools, $500 to $1,000 per producer per month blended, and a recruiting team that re-keys the same candidate into three systems. 53% of staffing firms say technology costs are a barrier to growth (PayrollFunding.com industry trends survey). In an industry running 20 to 35% gross margins, the stack is quietly one of your larger line items.

    Let’s do the math properly, at three agency sizes. All figures are current list prices in USD. Where a vendor is quote-only, we use market-reported ranges and say so.

    First, what the Zoho path actually is

    Being precise here matters, because most write-ups get it wrong:

    • Zoho One runs $37/employee/month on annual billing ($45 monthly), licensing every employee. That covers 45+ apps: CRM, Books, Campaigns, Sign, Flow, Analytics, SalesIQ, Desk, Creator, Bookings, Forms, and the rest of the back office.
    • Zoho Recruit, Staffing Agency edition is the actual agency ATS with client/contact modules, client portal, submission workflows, and formatted resumes. This is not included in Zoho One. Zoho One ships only the Corporate HR flavor of Recruit. The Staffing edition is a separate purchase: $25 to $75 per recruiter/month depending on tier.
    • Zoho Workerly is the temp/shift layer with e-timesheets, client approval, and invoice generation. Also not included in Zoho One. Priced per temp, roughly $59/month for the first 25 temps and about $1.50/temp beyond that (directory-sourced figures, so confirm with Zoho before you sign anything).

    Any comparison that quotes “$37 all-in for everything” is selling you something. The honest number for a full staffing build is closer to $100 to $112 per seat all-in. That still compares well against $165 to $315 per seat for the ATS alone elsewhere.

    Scenario A: the one-person agency

    StackWhat’s in it$/mo$/yr
    Zoho, leanRecruit Staffing Professional only$50$600
    Zoho, fullZoho One $37 + Recruit Staffing Enterprise $75$112$1,344
    Crelate + toolsCrelate $99 + QuickBooks Online Plus $140 + DocuSign $30 + Calendly $10$279$3,348
    BullhornAnnual contracts typically start around $20k~$1,667~$20,000

    For a solo desk, Bullhorn is effectively unavailable. The contract minimum is 16x a full Zoho setup. Even the cleanest point-tool combination costs 2.5x more than Zoho One plus Recruit Staffing Enterprise, and none of those four tools shares a database.

    Scenario B: the 10-person agency

    Seven recruiters and salespeople, three ops staff, around 100 active temps.

    StackMath$/mo$/yr
    ZohoZoho One 10 × $37 = $370; Recruit Staffing Enterprise 7 × $75 = $525; Workerly $59 + 75 × $1.50 ≈ $172$1,066$12,798
    Bullhorn10 × $165 = $1,650 + add-ons est. $500 to $1,000 + middle office $500+$2,650 to $3,150$32k to $38k, plus implementation
    JobDiva10 × $140 to $185, implementation $5k to $50k amortized$1,800 to $2,900$22k to $35k
    Franken-stackSalesforce Enterprise $1,750 + HubSpot Marketing $890 + QBO $140 + DocuSign $300 + Zapier $69 + Calendly $160 + Tableau $270 + Crelate $990$4,569$54,828

    The Zoho build lands around a third of Bullhorn all-in and roughly a quarter of the Franken-stack. And the Zoho column already includes accounting, e-sign, BI, live chat, a helpdesk, and marketing automation, which the Bullhorn column doesn’t.

    Scenario C: the 40-person agency

    Twenty-five recruiters, eight sales, seven ops, around 400 temps.

    StackMath$/mo$/yr
    ZohoZoho One 40 × $37 = $1,480; Recruit Staffing Enterprise 25 × $75 = $1,875; Workerly $59 + 375 × $1.50 ≈ $622$3,977$47,718
    Bullhorn40 × $199 = $7,960 + add-ons $1,500 to $3,000 + middle office$9,500 to $12,000$114k to $144k
    JobDiva40 × $140 to $185 + year-one implementation $25k to $50k$6,300 to $8,600$76k to $103k
    Franken-stackSalesforce $7,000 + HubSpot $890 + QBO $275 + DocuSign $1,200 + Zapier $103 + Calendly $640 + Tableau $840 + Crelate $3,960$14,908$178,896

    At this size the annual delta against the Franken-stack is over $130,000, enough to fund two additional recruiter salaries. The per-seat picture: roughly $100 all-in on Zoho versus $165 to $315 per seat for the ATS alone on the staffing platforms.

    The costs that aren’t on any invoice

    Subscription totals understate the problem, because the Franken-stack’s real tax is operational:

    • Re-keying. A candidate gets entered in the ATS, again in the CRM when they become a contact, again in the accounting tool when they’re placed. Every copy is a data-quality decay point.
    • The glue bill. Zapier tasks, custom API work, and the consultant who maintains the integrations. Teams routinely spend $100 to $300/month on glue alone, and it breaks when any vendor ships an update.
    • Reporting that doesn’t reconcile. When placements live in one system and invoices in another, “what’s our gross margin by client” becomes a spreadsheet project. Owners of multi-tool agencies tell us they run the firm on Friday-night exports.
    • Seat sprawl. Nobody audits nine tools. Ex-employees keep licenses; departments buy overlapping products.

    An integrated system doesn’t eliminate work, but it eliminates the copies. One candidate record, one client record, one invoice trail, one reporting layer over all of it.

    The honest caveats

    We implement Zoho for a living, so discount accordingly. But these caveats are real, and we state them to every client:

    1. These are list prices. Bullhorn, JobDiva, Vincere, and Loxo are quote-only and discount at volume. Treat their columns as market-reported ranges, not line-item quotes.
    2. Zoho add-ons add 10 to 30%. Vendor portal licenses, video-interview credits, extra storage, SMS credits, and Campaigns contact tiers push real bills above sticker. Ours did too.
    3. Nobody deploys every tool at every seat. A real Franken-stack bill is usually lower than the maximal table above, and a real Zoho bill is higher than the $37 headline.
    4. Some tools keep their place, and they plug straight in. B2B contact data (Apollo/ZoomInfo), LinkedIn Recruiter, background checks, payroll funding or factoring, and probably Canva stay on the bill, and high-volume temp payroll often stays with a bureau. The good news: the tools you love plug straight into Zoho through native integrations, Zoho Flow and open APIs, so budget for the keepers and connect them to the one database.
    5. Sometimes the incumbent wins. If you’re a 200-seat firm living inside Fieldglass and Beeline VMS feeds, Bullhorn’s VMS integrations are a genuine advantage. We’d tell you that on a call, and we build Creator/Flow connections only where they genuinely hold up.

    What to do with this

    Run your own numbers before you believe ours. Pull your last three months of software invoices, count seats per tool, and divide by producers. Most owners have never seen their blended per-producer figure, and it’s usually a surprise.

    Then, if you want a second pair of eyes: our free systems audit is 30 minutes, on a call with the two of us. One of us ran staffing companies for 25+ years, and the other has built the Zoho back office for 10+ agencies. You leave with your version of the tables above, whatever you decide to do next.

    Book a free systems audit →