

Some job listings are not really jobs. They sit open for months, quietly collecting applications nobody reads, while you spend your evenings tailoring resumes for them.
We run a job board, and we got tired of not knowing which of our own listings deserved that suspicion. So we scored every single one, all 512,744 live listings from 46,517 companies, for the likelihood that it's a ghost job. Here's what we found:
The rest of this post is the full methodology: the exact formula and weights, and what we still can't catch. If you just want to stop applying to ghosts, there's now a filter for that at the end.
A ghost job is a public listing with no active hiring behind it. Not a scam, usually. The company is real, the role may even have been real once. But somewhere along the way the search was paused, filled internally, deprioritized, or turned into a permanent "always accepting applications" pipeline, and the listing stayed up anyway.
Nobody can see hiring intent from the outside. What you can see is behavior: how long a listing has been open, whether it keeps getting reposted, how the company's other listings have historically ended. Our score is built entirely from that public behavior, across two datasets we've accumulated by running a job board: 512,744 live listings, and 764,260 listings that closed on our board in the past 12 months, each with a measured lifespan.
That second dataset is the key to everything that follows.
A note on what "all of ours" means: our board leans remote-friendly, but it isn't only remote. The 512,744 listings split into 37% fully remote, 36% hybrid, and 27% on-site roles. Ghost behavior shows up in all three. If anything, on-site listings show warning signs most often (26%, against about 18% for remote and hybrid), so this is not a remote-work quirk. It's how modern job boards work.
Most ghost job advice uses a single global rule: "be suspicious after 30 days." That rule is wrong in both directions. A 45 day old listing at a company that historically fills roles in 20 days is a red flag. The same listing at a company that reliably takes 60 days is completely normal.
So instead of one global threshold, we built a baseline per company. From 764,260 observed closures we know how fast each of 16,052 companies actually fills roles: the median company fills in about 35 days, four in ten fill in under 30, and only 1.5% typically take more than 180.
Every live listing then gets a ghost score from 0 to 100, built from five signals. Here is the entire formula, weights and all:
1. Age against the company's own baseline (weight 35). How long has this listing been open relative to how fast this specific company historically fills roles? The penalty maxes out at 4x the company's expected fill time. Companies without enough history get the market median of 31 days. Listings younger than 21 days are capped at a score of 25 no matter what, because a fresh posting hasn't had time to prove anything.
2. Reposting (weight 20). Taking a listing down and putting it back up resets the "posted 2 days ago" label without any new hiring intent behind it. One revival is a half penalty, two or more is a full penalty. About 2% of live listings have been revived at least once.
3. Open roles vs team size (weight 20). A company with 40 employees advertising 30 open roles is running always-on recruiting, not filling 30 seats. We compare live openings to the company's LinkedIn headcount. Right now, 427 companies on our board advertise more open roles than they have employees, and 1,101 post openings equal to at least half their headcount.
4. The company's slow-close rate (weight 15). What share of this company's closed listings took 180+ days or simply aged out without ever closing properly? A company whose listings routinely rot tells you what will happen to the one you're about to apply to.
5. Salary transparency (weight 10). Listings with no published pay range score worse. The data justifies the weight, as you'll see below.
The score is a weighted average of whichever signals are available for that listing (we never penalize a job for missing data), scaled to 0 to 100. At 60 or higher we call it a likely ghost. At 40 to 59, it's in the warning band: not condemned, but the odds are visibly against you.
Once you score everything, the likely ghosts stop being spooky and start being predictable.
They're old, by their own company's standards. The median likely ghost has been open 187 days, with an average of 208. Healthy listings average 50 days. And these aren't 187 days at organizations where six-month searches are normal. The scoring already accounts for each company's own pace. These are listings open six months at companies that demonstrably fill other roles in one.
They hide the pay. 92% of likely ghosts publish no salary range, against 52% of everything else. A listing that hides the salary and has outlived the company's normal hiring speed is the closest thing to a ghost fingerprint we found.
They cluster. Only 3,147 companies, 6.8% of the 46,517 on our board, have even one likely ghost. The median employer keeps a clean board. Ghost jobs are a behavior of specific companies, which is also what makes them predictable: a company's closed-listing history is one of the strongest inputs to the score.
Staffing agencies are heavily overrepresented. Agencies post 3% of listings but produce 10.8% of likely ghosts, more than three times their share.
This isn't necessarily deception. An agency posts a role for a client, the client quietly fills or cancels it, and the agency listing lingers with nobody accountable for taking it down. There's also a structural quirk: agencies post client roles against their own small LinkedIn page, which inflates their roles-to-headcount ratio. We actually halve that signal's weight for staffing companies to compensate, and they still show up at more than three times their share.
Honesty requires admitting the formula sees some ghosts better than others:
And the limitations of the data itself, stated plainly:
You can't fix how companies manage their postings. You can stop donating your evenings to the ones that don't.
Or let the scoring do it for you. Every listing on Remote Rocketship now shows its ghost score, and there's a filter that hides likely ghosts from your feed entirely.
Hide the ghost jobs in my feed
On our board, 20.3% of live listings show the warning signs of a ghost job and 3.8% cross our strict likely-ghost line. Our board is actively pruned, so for large aggregators that keep stale listings around, expect the real share to be higher.
The combination of age and hidden pay. A listing open far past the company's usual fill speed with no published salary range is the profile that dominates our likely-ghost pool: 92% of likely ghosts hide the salary.
Generally no. Some listings go stale through neglect, some exist for internal process reasons, and some are deliberate pipeline-building. That's why we score listings on observable behavior instead of trying to guess intent.
Not in our data. On-site listings actually show warning signs most often (26%), against roughly 18% for remote and hybrid listings. Strict likely-ghost rates are similar across all three (3 to 4%).
The score estimates the probability that a listing is sitting open without active hiring, based on public signals. Real jobs can score high and a few ghosts will score low. It's a hint for prioritizing your time, not a fact about any single listing.
The score is computed from public data and the formula is published on this page. If you're an employer and believe your data is stale, contact us and we'll re-pull it.
Methodology: all figures were computed in August 2026 across 512,744 live listings (37% remote, 36% hybrid, 27% on-site) from 46,517 companies on Remote Rocketship, plus 764,260 listings that closed on the board during the preceding 12 months. Scores are recomputed daily. The scoring formula, weights, and thresholds are described in full above. Cohort validation used independently sourced historical headcount data from CoreSignal for 125 companies.