Back to Blog
prospectinglead-genats-scrapingai-scoringgo-to-market

Job Postings as Sales Signals: My AI Lead Engine

I built an engine that treats stale job postings as sales signals, scores how replaceable each role is, and drafts owner-facing outreach. Here's how.

By Mike Hodgen

Short on time? Read the simplified version

A 60-Day-Old Job Posting Is a Company in Pain

A job posting that's been live for two months is one of the cleanest distress signals a business gives off, and almost nobody mines it. Think about what it actually means. The company either can't fill the role, is paying recruiters to fill it, or is limping along understaffed while the work piles up. That's intent. Real, time-stamped, public intent that says "we have a problem we're already trying to spend money on."

Vertical flowchart showing the five stages of the AI lead engine: scrape job postings, compute true age, score replaceability, draft outreach, and human review. The Job Posting Lead Engine Pipeline

Most prospecting ignores this completely. People buy a list of companies that fit a profile and spray a generic message at all of them. They never ask the one question that matters: who's hurting right now?

I built a prospecting engine for my own consultancy that treats job postings as sales signals. It pulls open roles, figures out how old they really are, scores how cleanly an AI agent could absorb the work, and drafts outreach to the owner. The whole thing runs inside a CRM I built for my own client acquisition. I wrote more about turning stale job postings into a lead engine if you want the wider context.

The offer angle is simple, and it lands because it's honest. A role advertised at $75K isn't a $75K problem. Add payroll taxes, benefits, software seats, and the management overhead of supervising another human, and that number is closer to $95K to $110K fully loaded. So I pitch the hiring budget back to the owner: keep the budget, lose the headache.

You're already willing to spend six figures on this problem. Here's a system that solves a big chunk of it for a fraction of that, with no recruiter fees and no onboarding. That message only works because the posting told me exactly what they're trying to fix and roughly what they'll pay to fix it.

Why Cold Lists Fail and Intent Signals Win

The problem with buying a list

The hardest part of selling services isn't writing a good message. It's finding the companies that need help today, not in six months. A purchased list solves the wrong half of that problem.

A list gives you fit. Right industry, right headcount, right revenue band. Fit tells you who could buy. It tells you nothing about who's bleeding right now. So you send 500 emails to companies that match your ideal profile, and 490 of them are perfectly happy and have no reason to reply.

That's why cold outreach has the open and reply rates it does. You're interrupting people who weren't thinking about your problem at all.

Intent beats fit every time

Intent flips the math. A job posting is one of the rare signals that is public, free, and time-stamped. It's a company raising its hand and saying "we have a gap, and here's a budget number to prove we mean it."

Comparison table contrasting fit-based bought lists against intent-based job posting signals across four dimensions. Fit vs Intent: Why Cold Lists Fail

When I reach out about a specific 60-day-old role, I'm not interrupting. I'm landing on a problem they're actively trying to solve with a checkbook. The message references the exact role, the exact pain, and the exact dollar figure they've already committed to spending.

That changes everything downstream. Open rates climb because the subject line names something they're living with daily. Reply quality climbs because the message isn't "let me tell you about AI." It's "you've been trying to fill this for two months, here's another way."

Intent-based prospecting wins because it reaches people at the moment of pain, not at the moment a list happened to surface their name. Fit gets you a name. Intent gets you a conversation.

Harvesting the Signal: Public Job-Board Data, Zero Credits

Where the data lives

The raw material is sitting in plain sight. Open roles are published on public job boards, and the data is free if you know how to collect and structure it. I don't buy enrichment credits or pay for a list. The engine pulls open postings, captures the role title, the stated salary range where it exists, the company, and the dates attached to the listing.

That last part, the dates, is where most people get fooled.

The republish trap and the date fix

Here's a detail that took me a while to catch and that breaks the whole engine if you miss it. Job boards republish old listings to make them look fresh. A role that's been open for two months gets bumped, and suddenly the "posted date" says three days ago.

Timeline diagram showing how a job posting's true age of 64 days is hidden by a republished posted date of yesterday, with the formula using the earlier date. The Republish Trap and True Age Fix

That's a lie, and it's a lie that destroys your signal. If you trust the posted date, a 60-day-old role disguised as fresh looks identical to a genuinely new one. You'd skip the exact prospect you most want to reach.

So I don't trust the posted date alone. The engine computes true age using the earlier of the created date and the posted date. If a listing was first created 64 days ago but shows a posted date of yesterday, the true age is 64 days. That's the number that matters.

This is the entire ballgame. A 5-day-old role carries almost no signal. Hiring is normal. Companies post jobs all the time. A 60-day-old role carries an enormous signal, because something is broken. They can't find the person, they can't afford the person, or the role is a revolving door.

True age separates "they're just hiring" from "they're stuck." Get the date wrong and you're back to spraying a fit-based list. Get it right and you have a ranked queue of companies in measurable pain, sorted by how long they've been suffering.

Scoring How Cleanly an AI Agent Could Absorb the Role

The fixed capability catalog

Knowing a company is hurting isn't enough. I need to know whether I can actually help, and that requires being honest about what an AI agent can and can't do.

Every scraped role gets scored against a fixed capability catalog. It's a defined list of what an AI agent genuinely handles today: email triage, content drafting, data entry, scheduling, lead routing, reporting, basic research, first-pass customer responses. Not a vague "AI can do anything" hand-wave. A concrete inventory.

The role gets mapped onto that catalog. The engine reads the job description and asks, line by line, how much of this work falls inside the catalog and how much falls outside it.

Ranking replaceability

The output is a replaceability score. A role that's 80% repeatable knowledge work, like a coordinator who triages inboxes, drafts content, and updates spreadsheets all day, scores high. A role that needs physical presence, a license, or human judgment under liability scores low. A field technician, a nurse, a CFO signing off on filings. The math doesn't work there, and pretending it does is how you become a spammer.

A 2x2 scatter matrix plotting true age against AI replaceability score, highlighting the sweet spot of old postings for highly replaceable roles like coordinators and receptionists. Replaceability Scoring Matrix

I'm honest about the limits because the limits are the point. Not every role is replaceable, and the engine deliberately ranks them so I only reach out where the numbers actually hold up. A high score plus a high true age is the sweet spot: a company in pain, hiring for work an AI agent can genuinely absorb.

I went deeper on which payroll lines this actually applies to in what AI can actually absorb from a payroll line. The short version: the receptionist, bookkeeper, and marketer roles are full of catalog work, which is exactly why they score high and why they make honest pitches.

The scoring is what keeps this engine credible instead of obnoxious. I'm not telling a manufacturing company I'll replace their welder. I'm telling a company drowning in a coordinator search that there's a system that does most of that job.

Drafting Outreach Anchored to the Fully-Loaded Cost

Why salary is the anchor

The pitch is never "I do AI." Nobody wakes up wanting to buy AI. They wake up wanting their problem gone.

Stacked bar infographic showing how a $75K base salary becomes a $95K to $110K fully-loaded annual cost including taxes, benefits, software, recruiter fees, and ramp time. Fully-Loaded Cost Breakdown

So the outreach is anchored to the dollar cost of the open role. Not the base salary on the posting, the fully loaded cost: base plus payroll taxes, benefits, software seats, recruiter fees, and the ramp time before a new hire is even productive. That $75K posting is a $95K to $110K annual commitment, and the owner already knows it in their gut.

That number is the anchor because it reframes the entire conversation. I'm not asking them to find new budget. I'm pointing at budget they've already decided to spend. Keep the budget, lose the headache. You were going to pay six figures for this problem anyway. Here's a system that handles a large chunk of it for a fraction, with no recruiting, no onboarding, no turnover.

Owner-facing, not HR-facing

The draft goes to the owner. CEO, founder, whoever signs off on headcount. Not HR.

HR's job is to fill the role as posted. They're not incentivized to question whether the role should exist as a human seat at all. The owner is. The budget decision and the operational pain both live with the owner, so that's who the message is built for.

A good draft names four things. The specific role. The true age, so they know I actually looked. The fully loaded cost, so the anchor is explicit. And the proposed system, concretely, so it's not vapor. I won't print a real one here, but that's the skeleton.

The AI drafts these in my voice, not a generic template. It pulls the role-specific details into a structure I've tuned, so every message reads like I wrote it to that one company, because in every way that matters, I did.

The Whole Loop Is Human-Reviewed and Never Auto-Sends

Here's the part I won't compromise on. The engine scrapes, scores, and drafts autonomously. Nothing leaves the building without me reading it first.

That's a design choice, not a missing feature. In services, reputation is the entire business. A wrong score or a tone-deaf draft doesn't just get ignored. It burns that prospect permanently and makes me look like every spammer they've already learned to delete. One bad send can cost a relationship I'll never get back.

So every draft stops for a human pass. I read the role, I sanity-check the score, I read the message in my own voice, and I decide whether it goes. This is the same principle behind every system I ship, which I wrote about in every system I ship stops for a human.

I'll be honest about where it falls short, because that honesty is exactly why the human pass exists. The scoring has false positives. Some roles read as 80% catalog work on paper but carry hidden context, a regulatory wrinkle, a client-facing relationship, a judgment call that the job description never mentioned. The engine can't see that. I can.

So the human review isn't there because the AI is weak. It's there because the cost of a single bad message is high enough that a 95% accurate engine still needs a person on the last step. The machine does the volume. I do the judgment. That split is what makes the whole thing trustworthy enough to actually use.

What This Proves About AI Doing Real Go-To-Market Work

There's a common assumption I run into constantly: AI can write copy, sure, but it can't do real go-to-market work. The creative, intent-rich part of selling is supposedly off-limits.

This engine is my counterargument. It mines a free public signal almost nobody uses. It corrects for a deliberate trick the boards play with dates. It scores roles against a real capability catalog instead of hand-waving. And it produces outreach anchored to a budget the prospect has already committed. That's not autocomplete. That's go-to-market work that requires judgment about who's in pain and whether you can actually help them.

I didn't build this as a demo. I built it for my own consultancy, to find my own clients, which is the only kind of system I trust. I don't advise on tools I haven't shipped. I build the systems, not just advise on them, and this is one of them running in production.

So here's the bridge. If a system like this could find your buyers, surfacing the companies in your market who are signaling pain right now instead of the ones who merely fit a profile, that's exactly the kind of thing I build.

And if you're on the other side of it, the company with a stale posting wondering whether to keep paying for the headache, that's worth a conversation too. Sometimes the right move is a hire. Sometimes it's a system. I'll tell you honestly which one your situation calls for.

Thinking about AI for your business?

If this resonated, let's talk. I run free 30-minute discovery calls where we look at how your operations actually work and find the places where AI could genuinely move the needle, not the places where it just sounds impressive in a slide deck.

Book a Discovery Call

Get AI insights for business leaders

Practical AI strategy from someone who built the systems — not just studied them. No spam, no fluff.

Ready to automate your growth?

Book a free 30-minute strategy call with Hodgen.AI.

Book a Strategy Call