How VantageCV scores ghost jobs and ATS resumes
The full public factor list, weights, and source data behind the 15-point ghost-job detection model and the 4-factor ATS scoring engine. Updated quarterly.
15-point ghost-job detection
Each posting is evaluated against the following 15 factors. The weighted sum produces a score on 0–100: safe (0–20), caution (21–50), risk (51–100).
| Factor | Weight | Why it matters |
|---|---|---|
| Posting age (>60 days) | 12 | Postings older than 60 days have a sharply elevated chance of being evergreen pipelines rather than active reqs. |
| Reposted within 30 days | 10 | Identical postings refreshed multiple times in a quarter signal pipeline-building rather than active hiring. |
| Vague job description (<200 words, no responsibilities) | 8 | Descriptions lacking specific responsibilities or stack details correlate with non-active reqs. |
| Missing salary disclosure | 7 | Salary omission, especially in jurisdictions requiring disclosure (CA, CO, NY, WA), is a strong red flag. |
| Unrealistic requirements (e.g., 10+ years on a 5-year-old framework) | 8 | Stacked or impossible requirement combinations indicate the posting is not seriously expected to be filled. |
| Excessive simultaneous openings (>50 identical roles) | 9 | Mass identical postings across regions are commonly resume-collection campaigns. |
| Generic company name in posting body | 5 | References to 'our company' instead of the specific employer name suggest staffing-firm reposts or templates. |
| No application response time stated | 4 | Postings without any response-time SLA correlate with low actual-fill probability. |
| Recruiter cold-outreach mismatch (sourced for a posting they are not actually filling) | 7 | Reports from sourced candidates that the posting wasn't real are weighted heavily. |
| No hiring manager profile linked | 4 | Postings missing a named hiring manager or team lead reduce signal of active req ownership. |
| Salary range >$100k spread | 5 | Excessively wide ranges signal speculative or pipeline postings rather than budgeted reqs. |
| Located outside posted geography (remote-everywhere mismatch) | 5 | Listings claiming a city while accepting global remote often re-list the same req as five postings. |
| Posting language flagged as templated boilerplate | 6 | AI-detection of templated copy across multiple unrelated postings from the same employer signals automation, not specific hiring. |
| Company on community-flag list | 8 | Aggregate community reports above the threshold for the company decay over time but contribute to per-posting score. |
| Application platform outdated (e.g., dead URL on careers page) | 2 | Legacy ATS URLs that no longer route correctly indicate the posting may not actually receive applications. |
4-factor ATS scoring
ATS scoring runs in 12–22 seconds via Google Gemini 3.1 Pro (with cross-provider fallback). The model returns a 0–100 score plus a per-factor breakdown.
| Factor | Weight | What it measures |
|---|---|---|
| Keyword Match | 35% | Density and exactness of job-description keywords vs resume content. Includes acronym/expansion equivalence (e.g., 'ML' ↔ 'Machine Learning'). |
| Skills Alignment | 25% | Required vs nice-to-have skills coverage; recency weighting on technical skills (last 3 years > 5 years > older). |
| Experience Relevance | 25% | Years in role family, seniority match, industry match, and project-impact quantification. |
| ATS Readability | 15% | Single-column layout, no images-as-text, no headers/footers, font fallbacks, parseable bullets, no tables for content. |
Anti-hallucination validation
All AI suggestions are validated against the actual resume content before display. Suggestions referencing skills, employers, or projects not present in the source document are rejected. This prevents fabricated credentials.
Three-tier reliability
Primary: Google Gemini 3.1 Pro. Cross-provider backup: OpenAI GPT-5.4. Fallback: Google Gemini 3 Flash. Wall-clock cap: 140 seconds. Result: 99.9%+ analysis completion rate.
Frequently asked questions
Why is the methodology public?
Trust requires transparency. Job seekers deserve to know exactly what factors drive a ghost-job risk score or an ATS score before they act on it. Publishing the methodology also lets researchers audit and reproduce results.
How often is the methodology updated?
The 15-point ghost detection model and the 4-factor ATS scoring model are reviewed quarterly. Material changes are versioned and announced on the research page; the dateModified meta on this page reflects the most recent change.
Does the score determine my application outcome?
No. The score is decision-support, not a verdict. A high-risk ghost score saves you time deciding whether to invest application effort. A low ATS score tells you what to fix before applying. Outcomes depend on many factors outside our model.
What data sources back the weights?
Weights are derived from Hunter Ng (2024 arXiv working paper, City University of New York; ~21% ghost-job rate via LLM-BERT classification), Columbia Law Review (2025), Greenhouse 2025 Workforce & Hiring Report (Feb 2026; n=2,200), MyPerfectResume (Nov 2025 BLS JOLTS analysis), LiveCareer (March 2025; n=918 HR pros), Resume Now (March 2025; n=925), Robert Half (March 2026), Jobscan (2024–2025), Ladders Eye-Tracking (2018), and ongoing analysis of crowd-reported ghost jobs in our database.
Try the methodology in action
Score a posting in the Ghost Job Detector or analyze your resume in the ATS Resume Checker. Free to start — no credit card required.