1About 30% of Job Listings Are Ghosts
About 30% of LinkedIn's active listings are ghosts. That figure comes from Greenhouse's 2024 hiring data study, and it matches what the search already feels like from the inside: you apply, you hear nothing, and you start wondering whether the role was ever real.
Often it was not. A ghost job is a live posting with no immediate hiring intent. Some were filled months ago and never taken down. Some are pipeline-builders a recruiter posts to look busy. Some exist for visa or government-contract compliance reasons and were never going to hire anyone. None of them will call you back.
The cost is not the application. It is the hour of tailoring, the follow-up you draft on day ten, and the week you spend assuming a real decision is pending somewhere. Visier's 2023 data puts a number on the other side of it: callback rates fall roughly 40% after a posting's first 14 days, and collapse past 30.
Ghost listings leave patterns. Twelve of them are checkable in about 30 seconds, before you commit anything.
What the ghost job data actually says
Three published figures, and the one you control
~30%
of active LinkedIn listings show no hiring intent (Greenhouse, 2024)
-40%
callback rate after a posting's first 14 days live (Visier, 2023)
45+ days
the age past which a listing is usually filled, abandoned, or fishing
30 sec
to run all 12 flags below before you spend an hour tailoring
Posting age is the single most predictive flag. If you only check one thing, check that.
2What Is a Ghost Job?
A ghost job is a posting that's live but not actively being hired for. They exist for a few common reasons, and none of them have anything to do with you.
- The role was filled but never taken down. This is the most common. HR departments are busy, and pulling down old listings isn't anyone's priority.
- The job is a placeholder. Companies post "evergreen" listings to build a pipeline of candidates for roles they hire for repeatedly. There's no specific opening right now.
- Budget approval fell through. The hiring manager wanted to hire, got approval to post, and then lost the headcount in a budget review. The listing stays up because nobody remembers to remove it.
- The company is fishing. Some companies post jobs to test the market: see what caliber of candidates apply, gauge salary expectations, or collect resumes for future use. There's no intent to hire today.
3The Red Flags to Look For
Listing age over 30 days
- This is the single most reliable signal. Visier's 2023 hiring data showed that callback rates drop by about 40% after the first 14 days a posting is live, and they crater after 30 days. A real role that needs to be filled gets pulled offline once interviews start. A listing that's been up for 45+ days is either filled, abandoned, or pipeline-building.
- LinkedIn shows post age right under the title ("Posted 2 weeks ago," "Posted 1 month ago"). Indeed shows it but buries it. Always check before you commit time.
Generic JD with no team-specific details
- Real job descriptions describe a real team. They mention what the team is building, who the role reports to, what the priorities are for the next 6 months. Ghost listings are vague. They list responsibilities like "drive growth," "execute on strategy," and "collaborate with cross-functional partners." None of that tells you what you'd actually do.
- If you finish reading a JD and still can't picture a normal Tuesday in the role, the company doesn't know either. That's because nobody on the actual team wrote the listing. It's a template.
Reposted three or more times in 90 days
- LinkedIn surfaces reposts under "Reposted X days ago" if you click through. If the same posting has appeared three or more times in 90 days, the role is either chronically unfillable or being kept active to gather resumes for something that doesn't exist yet.
- A repost with significant changes (new title, updated requirements, different salary band) is fine. A repost that's word-for-word identical is a ghost.
Vague compensation or "competitive salary"
- If a company doesn't list a salary band, ask yourself why. They have a number in mind. They're choosing not to share it. Usually that's because the number is below market and they don't want to lose applicants to the listing. Sometimes it's because the role is fake and there is no number.
- Phrases like "competitive compensation," "DOE" (depending on experience), and "market-rate" almost always mean the company is paying market rate or below. If the salary were genuinely above market, they'd list it as a selling point.
No mention of hiring manager or team
- Real openings have a person attached to them. The JD might name the team ("This role reports to the VP of Engineering on the platform team") or include a quote from the hiring manager. Ghost listings are anonymous. They reference "you'll work closely with stakeholders across the business," which is corporate code for "no one specific is waiting to hire you."
- Cross-check by looking up the company on LinkedIn. If you can find the hiring manager's profile and see they've been actively engaging with the post, the role is probably real.
"Wear many hats" or "fast-paced startup" language
- These phrases aren't ghost signals on their own. They're red flags about role definition. "Wear many hats" means the company hasn't decided what the job actually is. "Comfortable with ambiguity" means there's no playbook because nobody has done this before.
- At a 5-person startup, these phrases are honest. At a 500-person company, they're code for "we're combining two roles into one and the new hire will be perpetually behind." Match the language against the company size.
Required skills list over 15 items
- Count the bullets in the requirements section. If there are 15 or more, the company is describing a team, not a person. Real job descriptions have 5-8 specific requirements that all point to the same core function.
- The longer the list, the lower the probability that any single applicant meets all of it. Hiring managers know this. If the list is inflated, they don't expect a perfect match. They expect to hire whoever covers the top 5 items. Apply if you cover those, ignore the rest.
Posted only on aggregators, not the company's careers page
- This is a strong ghost signal. Real openings get posted on the company's own careers page first. They might also appear on LinkedIn and Indeed, but the canonical version lives on the company's site.
- If you can't find the listing on the company's careers page (and the company is large enough to have one), the posting is probably old, syndicated through a third-party recruiter, or fake.
Missing salary in mandatory-disclosure states
- California, New York, Colorado, and Washington all require employers to post salary ranges on listings for jobs based in those states. As of 2024, salary disclosure compliance in California hit 92% (per Levels.fyi data).
- If a posting is for a role in one of those states and there's no salary band listed, the company is either non-compliant (which says something about how they treat employees) or the role isn't actually based there.
Recruiter outreach for a public listing
- A recruiter messages you on LinkedIn saying they found your profile and want to put you forward for a role. You check the link. It's a public listing that anyone can apply to.
- Real recruiters reach out about specific openings where they need someone with your exact background. If the recruiter is shotgunning you a public link, they're hitting their weekly outreach quota, not pursuing you for a real opening. The interview pipeline these messages lead to usually ghosts at the second-round stage.
500+ applicants on LinkedIn
- Once a posting hits 500+ applicants, your individual application becomes statistical noise. Recruiters don't read all 500 resumes. They run keyword filters in the ATS, look at the first 50-100 that came in, and call it a day.
- This isn't always a ghost signal. Sometimes a real role just gets a lot of applicants. But the conversion rate from application to interview drops sharply once you're past the first wave.
Company "actively hiring" for 6+ months
- If a company has had 20+ open roles for the past six months, all "actively hiring," ask yourself why. Pipeline-building is when companies post listings to maintain a steady flow of resumes for roles they might or might not create.
- A real high-growth company has urgent openings, named hiring managers on each, and a recognizable pace of role-closings. A pipeline-building company has the same 20 listings up for six months running.
No single signal is definitive. But when you see two or three of these stacked together, your odds of hearing back drop significantly.
Red Flags in a Job Posting
Example: a "Senior Marketing Manager" posting at Unknown Corp with requirements like "experience with marketing things" and "various responsibilities as needed"
- Posted 67 days ago
Fresh postings get filled. Stale ones get ghosted.
- No salary listed
Transparency laws make this increasingly suspicious.
- Vague requirements
"Strong communication skills, team player, detail-oriented" describes everyone.
- 1,400 applicants
Either it's a black hole or the count is inflated to look popular.
4 red flags detected: high probability this is a ghost job. Skip it or quick-apply only.
ShouldApply automatically flags posting age, missing salary, and seniority mismatches on every job you score. Stop wasting time on dead listings.
Score a Job Now4How ShouldApply's Ghost Job Filter Works
ShouldApply's scoring engine automatically flags postings based on their age. A job posted more than 30 days ago gets a stale flag. 60+ days gets a ghost flag with an auto-archive option.
The flag doesn't kill the score. It adds context. A role that scores 85 on fit but has a ghost flag tells you something different than a role that scores 85 and was posted yesterday. You might still apply, but you'd probably spend less time customizing that application.
The ghost detection also looks at salary transparency and seniority alignment. If a posting has no salary listed, has been up for 45 days, and the title doesn't match the experience requirements, that's three flags stacked together. ShouldApply surfaces all of that in the score breakdown so you can make a quick call.
Every ShouldApply score includes ghost job detection, posting age, and job quality signals. Free for your first 3 scores.
Try It Free5When a Red Flag Posting Is Still Worth Applying To
None of these signals are absolute. A 45-day-old posting might just mean the company has a slow hiring process (government roles, universities, and large enterprises all move slowly by design). A missing salary could just mean the company is in a state that doesn't require it.
The practical rule: the more red flags on a listing, the less time you should spend on the application. One flag? Apply normally. Two flags? Quick-apply with a lightly tailored resume. Three or more? Either skip it or spend five minutes max.
Your time is the scarce resource in a job search. Every hour you spend on a ghost listing is an hour you didn't spend on a real one. The goal isn't to avoid every ghost job perfectly. It's to spend your effort proportionally to the likelihood that someone is actually reading applications on the other end.
Job Posting Freshness Timeline
How posting age affects your chances of hearing back
Fresh (0-7 days): Highest response rate (~15-25%). Apply with full effort.
Active (7-30 days): Still active (~8-15% response). Worth a tailored application.
Stale (30-45 days): Getting stale (~3-5% response). Quick apply or skip.
Ghost risk (45-60 days): High ghost risk (~1% response). 5 minutes max effort.
Likely ghost (60+ days): Almost certainly a ghost (~0% response). Skip it.
6Protecting Your Time
Ghost jobs aren't going away. Companies have no incentive to clean up old listings, and job boards have no incentive to remove them because more listings means more traffic. That's why it helps to browse scored jobs where freshness and fit are surfaced upfront.
The best defense is a quick filter before you invest effort. Check the posting date. Check for a salary range. Scan the requirements for specificity. If it passes those three checks, it's probably real. If it fails two or more, adjust your effort accordingly.
You don't need to be paranoid about it. Just be aware that not every listing represents a real, open, actively-hiring position. Once you internalize that, the silence after some applications stops feeling personal. It was never about you.
Written by
Jesse Johnson
Founder, ShouldApply
Founder of ShouldApply. I write about job search strategy, hiring, and how to spend your time on opportunities that actually fit. Full bio →
Keep Reading
Frequently Asked Questions
The most reliable signals are posting age (anything over 30 days is suspect), absence of a salary range, vague job requirements that don't describe specific responsibilities, and the posting not appearing on the company's own career site. No single signal is proof, but two or three together make it very likely.
Yes. LinkedIn has improved its detection, but fake listings still exist. Some are ghost jobs from real companies (filled but never removed). Others are outright scams designed to collect personal information. If a listing asks for sensitive data upfront (SSN, bank details) or the "company" has no verifiable web presence, report it and move on.
Most active roles are filled within 30-45 days of posting. After 30 days, the listing is stale. After 60 days, it's almost certainly a ghost. There are exceptions: government roles, academic positions, and senior executive searches can legitimately take 3-6 months. But for typical corporate and tech roles, 30 days is the threshold.
Don't dwell on it. If you applied with minimal effort (quick apply, lightly tailored resume), the cost was low. If you spent an hour on a custom cover letter, treat it as a lesson and check posting age next time. The key takeaway: apply with effort proportional to the listing's signals. Fresh posting with salary listed? Go all in. Two-month-old listing with no salary? Quick apply and move on.
Yes. Every job you score shows posting age and flags stale or ghost status automatically. The scoring breakdown also surfaces missing salary ranges and seniority mismatches, so you can see all the quality signals in one place before deciding how much time to invest.
Free Tools
Related Posts
ShouldApply Outcome Data
Interview and offer rates for tracked applications, grouped by fit score, sample sizes included.
No Salary Listed? How to Estimate Pay
Missing salary is a red flag. Here's how to estimate what the job pays anyway.
ShouldApply vs Jobscan vs Teal
How the three tools compare on ghost job detection and beyond.
How Many Jobs to Apply to Per Week
Find the right application volume without burning out.
How ShouldApply Works
See how job fit scoring, ghost detection, and skill gap analysis work.
Don't apply blind.
ShouldApply flags ghost jobs, stale listings, and missing salary data automatically. Know what you're applying to before you invest the time.
Score a Job Free