← Back to all posts
Watercolor illustration of a frustrated job seeker working late at night on a laptop, surrounded by empty coffee mugs, crumpled resumes, and fading ghost-like job listings glowing from the screen.
·7 min read·By George Brewer

What is a ghost job? (And how to spot one)

A ghost job is a real-looking posting nobody is actually being hired for. About 36% of postings we track score Low or Minimum Signal. Only about 15% score High. Here's what the patterns look like.

Across the live job postings we track, about 36% score Low or Minimum Signal and only about 15% score High. Pipeline collectors, admin debt, and compliance optics dressed up as real openings.

A ghost job is a job posting where nobody is actually being hired. The application form works. The job description sounds plausible. A recruiter might even reply. But the role isn't getting filled. Not this month, maybe not at all.

Ghost jobs aren't a scam in the legal sense. They're a feature of how hiring actually works today. Companies post them for budget approvals, internal-candidate optics, compliance, talent pipelining, and admin neglect. The application goes nowhere because there's no one on the other end planning to act on it.

Why ghost jobs exist

Five patterns repeat across the postings we score Low or Minimum Signal:

  • Pipeline collection. Recruiters keep evergreen postings live to harvest resumes for future openings. The role may show up in six months. It may not.
  • Internal-candidate optics. HR policy at most large enterprises requires roles to be posted externally even when the internal hire is already chosen.
  • Compliance posting. Federal contractors and many government-adjacent firms post all roles to satisfy OFCCP or USAJobs requirements. The role can be real and already earmarked at the same time.
  • Stock or PR signaling. A wave of senior-role postings signals growth to investors, journalists, competitors. A few will get filled. Most are theater.
  • Admin debt. The recruiter left. The role got frozen. Nobody closed the requisition. The ATS keeps showing the posting as active.

How to spot one in 30 seconds

Four signals do most of the work. We automate all four. You can also run them by eye.

Posting age

On LinkedIn, anything over 30 days is a flag. Most real roles fill in 24 to 45 days. Postings sitting for 60, 90, 120 days without filling are pipelines or admin debt. Your application lands with 800 others, none of which are getting read.

Salary range

In our pool, postings without a salary range are about 3x more likely to score Low or Minimum Signal than postings with one. States without pay-transparency laws still see legitimate roles without ranges, so this isn't a hard rule. But the absence of a range correlates strongly with absence of intent.

Repost cadence

Same company, same role, reposted every two weeks for months. That is an evergreen pipeline, not an opening. Real urgent roles fill. Pipeline collectors get refreshed. Look at the company's career page or a posting tracker that retains history. If the title has been live for 90+ days, treat it that way.

Contact specificity

Named hiring manager. Real Calendly link. A recruiter introducing themselves by name in the description. Those are green flags. Generic boilerplate, no contact info, no team-page link, no LinkedIn bio for the requisition owner: that's a posting where nobody owns the outcome.

What this means for your search

If your last 30 applications produced silence, that's not on you. The structural conditions are genuinely hard right now. The thing in your control is where you point your effort.

Postings re-run for months without filling don't deserve a tailored cover letter. Recruiters whose signals don't add up don't deserve the follow-up. Save your best work for the postings that look real. In a market where 23% of postings are hiring nobody, that's the move.

How we score it

Every posting in our live job pool gets a verification signal score: High, Medium, Low, or Minimum. The score combines posting age, salary disclosure, repost frequency, contact specificity, description depth, employer pattern history, and a dozen other inputs. Find Jobs surfaces the High and Medium tier by default.

The free Chrome extension runs the same check inline on LinkedIn, Indeed, Workday, and Glassdoor. You see the verdict before you click apply.

Or drop your resume on jobclarity.ai. We'll match it against the High Signal subset of our pool in 30 seconds. No signup needed for the first run.

Comments