Moore IQMoore IQRun the X-Ray

AI automation for recruiting firms and in-house TA teams

Custom builds for 1-10 recruiter shops and 10-150-person companies. Sourcing depth without burning LinkedIn Recruiter seats. Fixed fee. You own the code.

Why enterprise TA platforms like Eightfold, Paradox, and hireEZ do not fit a 5-recruiter shop

The enterprise talent-acquisition platforms -- Eightfold, Paradox, and hireEZ -- are priced for Fortune 500 TA orgs. Eightfold's published entry point typically lands in the mid six figures annually. Paradox bundles Olivia with implementation fees that assume you have a dedicated TA ops headcount. hireEZ's per-seat pricing looks reasonable until you realize the data depth that justifies the price only kicks in at the top tier. For a 5-recruiter agency closing 60-120 placements a year, or a 40-person company running two in-house recruiters, those price points are fantasy.

The feature bloat makes it worse. Eightfold's talent-intelligence model assumes you are filling 2,000 requisitions a year across a skills taxonomy that requires a data team to maintain. Paradox assumes you run high-volume hourly hiring where an AI chatbot replaces a screening team. hireEZ's deep-web search is genuinely useful, but its workflow automation sits on top of an enterprise ATS integration layer that a boutique firm does not have. Small recruiting shops running Bullhorn, Greenhouse, Lever, Workable, or Recruit CRM end up paying enterprise prices for 20% of the feature surface they actually use.

The market is roughly 25,000 boutique and mid-market recruiting agencies in the US alone, plus tens of thousands of in-house TA teams at companies between 10 and 150 headcount. The enterprise platforms do not serve them. The cheap end of the market (one-person Chrome extensions) does not solve the actual problem, which is compounding workflow, not a single feature. Custom builds sit in the gap. That gap is where one-extra-placement per quarter pays for the entire system.

The four places AI actually moves placements at a small recruiting firm

Not every AI pitch in recruiting is real. After working with several agency and in-house teams, these are the four areas where the ROI math is consistent regardless of vertical.

AI sourcing without burning LinkedIn Recruiter seats

A LinkedIn Recruiter corporate seat at roughly $10,000 per year per recruiter is the single largest line item on most small-firm tool budgets. For firms working mid-market commercial and technical roles, most of the candidates you need are reachable through a combination of sources that cost a tenth of that in aggregate. The question is not whether the candidates exist elsewhere. It is whether you have the infrastructure to pull, de-duplicate, score, and contact them at pace.

A practical free-to-cheap sourcing stack looks like this. GitHub for engineers, with search queries filtered by language, recent commit activity, and location signals. Google Scholar for research roles, data science, and any position where authorship matters. Apollo for commercial and sales roles at the $79-149 per month tier, which gives you verified email on most North American profiles. People Data Labs as an enrichment layer, bought by credit, which turns a LinkedIn slug into a structured record with work history, education, and probable email. Niche community directories (dev.to, Kaggle, AngelList for early-stage commercial, Dribbble for design) for roles where LinkedIn is not where the best candidates live.

The automation glues those sources together. An n8n workflow takes a job spec as input, translates it into source-specific queries, runs the queries in parallel, de-duplicates the results against your ATS (so you never re-pitch a candidate you already contacted), scores each candidate against the spec using Claude, and writes the top 40-80 candidates into your ATS as a new source list. That is the same outcome a LinkedIn Recruiter seat produces at about a tenth of the annual cost. It is not a replacement for LinkedIn for every role -- C-suite searches and certain specialized verticals still need Recruiter depth -- but for mid-market technical and commercial work, the custom stack competes directly. For a worked example of this approach in practice, see the recruiting sourcing engine case study.

Outreach personalization at volume without looking like spam

Generic sourcing messages die at 10-15% reply rates because candidates have seen a thousand of them. The templates are recognizable within the first sentence. The signal that a message was written for you personally is specific detail: a repo name, a paper title, a prior employer, a tool you advocated for in a conference talk. That is the signal Claude can produce at volume when given the right inputs.

The workflow is straightforward. For every candidate in the sourced list, the automation pulls enrichment data: their GitHub profile, their most-starred repo, their most-recent public writing, their prior two roles, their stated location, and any public signal about recent job changes. Claude takes that enrichment and the job spec and drafts a first-touch message that references one specific, verifiable detail about the candidate. The draft lands in a review queue (Slack, email, or a simple web interface). The recruiter scans, edits if needed, and approves. Approved drafts send through the recruiter's own email so every reply comes back to them directly.

Reply rates on this workflow, measured across the engagements we have shipped, land between 22% and 38% depending on the tightness of the job spec and the seniority of the candidate pool. The followup cadence is equally important. The default sequence is four touches over 14 days: day 0 first-touch, day 3 soft bump with a new angle, day 7 value share (an article, a thought, a relevant data point), day 14 final close. Any positive signal before day 14 cancels the remaining cadence. Any explicit no cancels permanently and updates the ATS. The goal is not maximum touches. It is a respectful cadence that pays attention to candidate signal. For a deeper look, see AI recruiting outreach personalization.

ATS integration without the $20k Bullhorn Marketplace fee

Every small-firm ATS has an API. The friction is not technical access. It is the partner-program and marketplace fee structure that most vendors layer on top. Bullhorn Marketplace partners pay a certification fee plus a revenue share to publish integrations, which is why the apps in the marketplace are priced like enterprise add-ons. None of that applies if you are building a single-tenant integration for your own firm. Bullhorn's REST API, available at the standard tier, gives you read and write access to candidates, companies, job orders, placements, and notes. That is everything a custom automation needs.

Greenhouse's Harvest API is one of the cleanest in the industry. Full read access on candidates, applications, scorecards, and users at the Core plan tier and above. Lever exposes a REST API plus webhooks for stage transitions, which is how we fire the silver-medal reactivation workflow off a candidate moving to rejected status. Workable's API is adequate but requires the Pro plan to get webhook access. Recruit CRM has a REST API included at all paid tiers.

The pattern across all of them: n8n runs on your own VPS for under $20 per month in hosting. It holds the ATS credentials, handles OAuth refresh, schedules pulls, and receives webhooks. Every automation in your stack -- sourcing, outreach, scheduling, reactivation -- reads from and writes to the ATS through that single middleware layer. The ATS stays your system of record. The automation layer is replaceable. If you ever switch ATS vendors, you rewrite the credentials and the field mappings in n8n; the rest of your automation is unchanged. For a technical walkthrough, see Bullhorn, Greenhouse, and Lever integration with n8n middleware.

Reactivating your silver-medal list: the fastest placements you already own

Every ATS contains a gold mine that most firms do not mine: the candidates who reached final round or offer stage and were not hired. In a typical mid-market agency ATS with 3-5 years of history, that list runs 400-1,200 candidates. They interviewed. They finished the loop. They liked your firm enough to go the distance. And in 12-18 months, almost every one of them has had a life change -- a role that went sideways, a manager they no longer respect, a comp band that stopped making sense, a relocation. A well-timed re-engagement to that list closes 30-50% faster than cold sourcing because the hardest parts of the sale (trust, familiarity, knowing how you work) are already done.

The automation pulls every candidate at final-round or offer stage from the last 18-36 months who was not hired. It segments by role family, location, reason for non-hire, and time since interview. It cross-references the list against your current open reqs to flag direct fits and against your ideal-customer job specs to flag near-fits. For each candidate, Claude drafts a personalized re-engagement that references the specific role they interviewed for, acknowledges the outcome honestly, and proposes a specific reason the current moment is different. The recruiter reviews the top 20 per week in a queue, approves what fits, and sends.

The numbers that make this worth doing: silver-medal candidates convert to placements at roughly 3-5x the rate of cold-sourced candidates on the same role, and they close 30-50% faster on average. At a typical mid-market agency fee of 20-25% of first-year salary, with first-year salaries for the roles these firms work in the $90,000-180,000 range, one extra placement per quarter from silver-medal reactivation is $18,000-45,000 in recovered fee. That is build-cost-level revenue from a list you already own. For the full breakdown, see silver-medal reactivation with recruiting AI.

The comparison: enterprise TA SaaS versus a custom build

Here is how the two options stack up for a 1-10 recruiter firm or a 10-150-person in-house TA team.

Enterprise TA SaaS (Eightfold / Paradox / hireEZ)Custom build with Moore IQ
Annual cost$60k-500k+ depending on tier and seatsFixed build fee + low three figures/mo in stack costs
One-time costImplementation fee, typically $15k-50kFixed fee, scoped during the X-Ray
Data ownershipVendor, with export restrictionsYou, in your ATS and your n8n instance
CustomizationLocked to their feature roadmapFull control, edit the prompts and workflows
Works with your ATS?Enterprise ATS integrations onlyAny ATS with a REST API or webhooks
LinkedIn Recruiter dependencyOften required for full functionalityNone, sourcing stack runs independently
Lock-inYes, cancel and it stopsNone, you own the code
Fit for 1-10 recruiter shopsPoorStrong

The SaaS deal compounds annually and you own nothing at the end of it. A custom build is a one-time investment against ongoing savings. For a firm closing 60-150 placements a year at 20-25% fees, the build pays for itself in one-to-two incremental placements. See also: why enterprise TA platforms do not fit boutique recruiting firms.

What a typical six-week engagement looks like

We do not start building until we know exactly what we are building. The first two weeks are the AI Operations X-Ray: a structured audit of your sourcing process, your outreach reply-rate baseline, your ATS configuration, your silver-medal list depth, and your scheduling friction. We map where recruiter hours are being spent on work the tools should be doing, where candidates are falling out of the funnel, and which automations have the clearest placement-level ROI for your actual role mix. At the end of week two, you get a scoping document with a fixed price and a deliverable list. You decide whether to proceed. If the scope does not make sense for your situation, we say so and you owe us nothing.

Weeks three through five are the build. We run on a shared workspace so every recruiter on your team can see each workflow as it is built, test it against real candidates from a sandbox copy of the ATS, and flag anything that does not match how your desk actually works. Week six is handoff and training. We walk your team through every workflow, document what each one does in plain English, and transfer all credentials, API keys, and VPS access to you. From that point on, you run it. We are available for support if you want it, but you are not dependent on us.

Pricing, payback, and the one-extra-placement math

A typical full-stack engagement covers sourcing automation, personalized outreach, scheduling, and silver-medal reactivation, with ATS integration as the connective tissue. The build is fixed fee, scoped during the AI Operations X-Ray. Ongoing run cost in API and infrastructure stays in the low three figures per month for most firms, scaling with sourcing volume.

The payback math is simple. Contingent recruiting fees in mid-market commercial and technical work run 15-25% of first-year salary. At a first-year salary of $120,000 and a 20% fee, one placement is $24,000. Retained work is higher. In-house TA teams do not pay placement fees, but they do pay the cost of a vacant role, which independent research from SHRM and others routinely pegs at $500-1,500 per day for commercial and engineering roles. Either way, the math is dominated by one number: how many more placements (or how many fewer vacant days) the build produces in the first year. For an agency, the breakeven is typically one-to-two extra placements. For an in-house team, it is typically 20-30 days of recovered time-to-fill across the requisition load. Neither number requires a radical transformation. They require removing the bottleneck that is already costing you placements you are not tracking as losses.

What you own at the end of the engagement

Everything. The n8n workflows live in your n8n instance on your infrastructure, or on a VPS you control. The Claude prompts are documented in plain English and yours to edit. Your Apollo credentials, People Data Labs API keys, ATS OAuth tokens, VPS access -- all of it stays in your accounts. If you decide tomorrow that you never want to talk to us again, the automation keeps running. Nothing goes dark because we are not involved.

This is the core difference between a custom build and a SaaS subscription. SaaS tools survive because you need them to keep running. A custom build survives because it actually works. The only reason to keep working with us after handoff is if you want to build something new. There is no maintenance retainer unless you specifically want one. We built this same ownership model into the recruiting sourcing engine case study, where the goal from day one was to hand over a system the in-house team could operate and extend without us in the room.

If you want to see whether this fits your firm before committing to a conversation, the fastest path is the AI Operations X-Ray. It takes 90 seconds, it is free, and it maps the specific automation opportunities in your desk based on your actual workflow, not a generic recruiting template. You can also read the supporting deep-dives:

These posts are published as part of Phase 5 of the SEO build. If a link returns a 404 today, it will resolve when that phase ships. The content is real; the timing is staggered.

Industry data from SHRM and the US Bureau of Labor Statistics consistently shows mid-market and boutique recruiting firms losing share to in-house teams that have better tooling and to larger agencies that can amortize enterprise platforms across hundreds of seats. The difference is not talent. It is the operational leverage that enterprise software provides the large players. A custom AI build gives a 5-recruiter shop or a 2-person in-house team the same operational leverage at a fraction of the cost, without forcing you onto a platform that was never designed for your scale. That is the bet we are making, and it is the bet the underlying AI infrastructure now makes economically viable at any firm size.

Frequently asked questions

Do I need to replace my ATS for this to work?
No. We build on top of whatever you use. Bullhorn, Greenhouse, Lever, Workable, Recruit CRM -- all of them have REST APIs or webhook access at the standard tier. We use n8n as middleware so the ATS stays your system of record and the automations read from and write to it like any other integration.
What about GDPR, CCPA, and candidate consent?
The automations honor whatever consent model your ATS already enforces. If a candidate is flagged do-not-contact in Bullhorn, the outreach workflow checks that field before drafting. For EU candidates, we add a consent-age check so anyone sourced more than 12 months ago gets re-consented before a new sequence fires. This is plumbing, not policy. You tell us your retention rules and we enforce them.
Does the AI actually interview candidates or just schedule them?
It does not interview. It schedules, confirms, reschedules, and reminds. For initial screens, it can run a structured intake form (location, salary expectation, work authorization, notice period) and push the answers into the ATS so your recruiter walks into the first call already briefed. Anything that requires judgment -- culture fit, role suitability, comp negotiation -- stays with a human. That is both the right legal posture and the right reason candidates still take your calls.
Will this get me banned from LinkedIn?
The sourcing stack we build does not automate LinkedIn actions. No auto-connect, no auto-message, no scraping of Recruiter. LinkedIn stays a manual channel for the candidates who matter most. The automation work happens on GitHub, scholar.google.com, Apollo, People Data Labs, niche community forums, and your ATS silver-medal list. That is a deliberate choice to keep your LinkedIn account alive.
What if my recruiters do not trust AI-drafted outreach?
They should not trust it blindly. The default workflow drafts the first-touch message, surfaces it to the recruiter in a Slack or email review queue, and sends only after a human approves. Once reply rates are measured for 30 days and the recruiter trusts the quality, you can move specific sequences to auto-send. We do not force full automation on day one. The point is to give the recruiter leverage, not replace their judgment.
How does the silver-medal reactivation actually work?
We pull every candidate from your ATS who reached final-round or offer stage in the last 18-36 months and was not hired. We segment by role family, location, and reason for non-hire. Claude drafts a re-engagement message that references the specific role they interviewed for and the time that has passed. The recruiter reviews the top 20 per week. Placements from this list close 30-50% faster than cold sourcing because the candidate already knows you.
What's the ballpark cost?
Builds are fixed fee, scoped during the AI Operations X-Ray. Ongoing run cost stays low -- typically in the low three figures per month in API and infrastructure depending on sourcing volume. You own the code. There is no per-seat fee, no per-placement fee, and no monthly retainer unless you want ongoing support.
How long does the build take?
Six weeks is the standard timeline: two weeks for the AI Operations X-Ray and scoping, three weeks for the build, one week for handoff and training. We do not start building until both sides have agreed on scope in writing.
What happens if you stop working with us?
The system keeps running. You own the n8n workflows, the Claude prompts, the sourcing scripts, and every credential. Nothing is locked in our infrastructure. We hand you the keys at the end of week six and walk away if that's what you want.

Next step

Want this mapped for your business?

Run the 90-second AI Operations X-Ray. Free, no credit card.