About 27.4% of US LinkedIn job listings are likely ghost jobs: postings for roles that are not actively being filled (ResumeUp.AI / LiveCareer). In tech, the rate is around 48% (Metaintro). A LiveCareer survey of HR professionals found that 45% admit to "regularly" posting ghost jobs.
If you do not filter ghost jobs out of your application queue, roughly a quarter of your effort is going into a void. Here are the specific signals to check, in 30 seconds, before you spend an hour on a tailored resume that no one will read.
Why companies post ghost jobs
Three main reasons, none of which help you:
- Talent pipeline. They want resumes on file for when budget opens. The role might fill in 6 months, or never.
- Optics. A startup wanting to look like it is growing posts roles to signal momentum to investors and customers.
- Loophole hires. A company has an internal candidate already lined up but legally has to post the role publicly.
Treating ghost jobs as a normal part of the market makes more sense than treating them as a rare scam. They are common.
The 30-second red flag check
Run through these for any posting before you apply.
Posted 30+ days ago
LinkedIn shows posting dates. Anything more than 30 days old is a serious warning. Most real openings fill within 30 to 45 days. If a posting is 90+ days old, it is almost certainly a ghost.
Re-posted multiple times in 60 days
If you have seen the same JD pop up under different posting dates, it is probably a perpetual posting. Check the company's careers page directly to confirm.
Salary range wider than $80k
A real range is $90k to $110k. A ghost range is $60k to $180k. The wider the band, the less hiring is actually happening. Wide bands often mean "we will see who applies and slot them somewhere."
"Always hiring" or "evergreen" wording
Phrases like "we are always looking for great people" or "we are growing fast and want to talk to you" without a specific role are a tell. Real postings name a real role.
Vague requirements
A real posting lists specific tools, specific responsibilities, and specific reporting structure. A ghost says "looking for a strong communicator who is a self-starter."
No hiring manager or team named
Real postings often name the team, sometimes the manager. If everything is "the team" with no specifics, treat it as a ghost candidate.
"Open to all locations" without context
Some roles are genuinely remote-anywhere. But a posting that lists 10 cities, "remote OK," and "open to relocation" is often a posting designed to maximize applicant volume for pipeline reasons, not for a specific opening.
Green signals (apply with confidence)
Real postings tend to:
- Name a specific team or product line
- List specific tools, frameworks, or methodologies
- Have a clear range under $50k width
- Name the hiring manager or recruiter
- Mention recent context ("we just shipped X" or "we are hiring 3 of these")
- Show recent posting date (less than 14 days)
- Have an applicant count under 200
What to do with the time you save
If filtering ghost jobs cuts 25% of your application queue, you save roughly 1 to 3 hours per week of wasted tailoring. Use that time on:
- 1 deep-tier application to a dream company
- 30 minutes of LinkedIn outreach to a real person at a target company
- 60 minutes of interview prep
- Updating your portfolio or GitHub
Anything in those buckets compounds in a way that ghost-job applications never do.
A free tool that does this for you
We built Fitted's Ghost Job Detector to run this check automatically. Paste a JD, get a legitimacy score plus a list of red flags and green signals. Free. No signup needed.
If you also want to tailor your resume for the real openings, sign up with your school email and you get 10 free Fitted credits, twice the standard.