Welcome to the era of the "ghost job." A 2025 survey of hiring managers found that nearly 40% of companies keep job postings open even when they aren't actively trying to fill the role. They do it to project growth to investors, to placate overworked employees ("we're hiring help!"), or simply to keep a warm pool of candidates on hand just in case.

For job seekers, this is devastating. You spend hours tailoring your resume and writing a cover letter for a job that doesn't exist.

But ghost jobs leave traces. If you know what to look for, you can spot them before you waste your time.

The 30-Day Rule is Dead

Conventional wisdom used to be: if a job has been posted for more than 30 days, it's probably dead. That's no longer true. Startups are notoriously slow at hiring, and highly specialized roles often take 60-90 days to fill.

Instead of looking at how long the job has been open, look at the repost pattern.

When a job is continuously "republished" on LinkedIn every two weeks but the company size on LinkedIn hasn't grown in six months, you're looking at a ghost job. Companies use automated tools to refresh postings so they look new. If you see a "Posted 2 hours ago" listing that already has 800+ applicants, it's a recycled listing.

The "Evergreen" Title Tell

Startups often use specific, slightly idiosyncratic titles when they actually need to hire someone to solve a specific problem. They use generic titles when they're just collecting resumes.

If you see a posting for "Software Engineer" with a laundry list of 15 different technologies ranging from React to Kubernetes to Salesforce, that's an evergreen posting. They aren't looking for a person; they are casting a net.

Conversely, a posting for "Senior Backend Engineer - Payments Infrastructure" signals a specific, budgeted headcount attached to a current business priority.

The ATS Verification Check

This is the most reliable method I've found to spot a ghost job:

1. Find the job on LinkedIn or an aggregator.

2. Go directly to the company's own careers page.

3. Check the URL of the application.

If the company uses Greenhouse, Lever, or Ashby, look at the job board ID in the URL. If the job isn't listed on their direct ATS page at all, the aggregator is scraping an old, dead link. Do not apply.

Furthermore, if you apply through a company's direct ATS and don't receive an automated "We received your application" email within 10 minutes, the requisition has likely been paused or closed internally, even if the public page is still live.

Where the Real Jobs Are

The best defense against ghost jobs is changing where you look. Instead of scrolling infinite feeds of aggregated, potentially outdated listings, look for trigger events.

Did a startup just announce a Series B? They have real headcount. Did they just launch a major new product line? They need real people to support it. Did a VP of Engineering just join from a larger company? They are going to build out their team.

Stop applying to static listings that have been sitting there for months. Follow the money, follow the product launches, and follow the leadership changes. That's where the real jobs are.