How the ResumeATS score works
The score is an estimate: a weighted total of general checks that plain code runs in your browser. Here is every check, what it looks for, and how much it counts.
Checks and weights
Each check returns pass (full weight), check (half) or fix (zero). The score is points earned divided by points available, so checks that don’t apply to your file, such as header detection for a PDF or keywords without a job ad, are left out rather than counted against you.
| Area | Check | Weight | Passes when |
|---|---|---|---|
| Parsing | Selectable text / readable file | 20 | PDF text layer present; file contains real text |
| Parsing | Single-column reading order | 10 | No side-by-side columns, tables or text boxes (PDF and DOCX) |
| Parsing | Contact details in the body | 6 | Email/phone not only in a Word header or footer (DOCX) |
| Parsing | No icon glyphs or symbols | 4 | Fewer than 4 icon-font or emoji characters |
| Parsing | Images and graphics | 3 | Only checked when embedded images are found |
| Structure | Standard section headings | 12 | Experience, Education and Skills headings found |
| Structure | Email and phone | 8 | Both present as plain text |
| Structure | Dates on roles | 6 | At least two recognisable dates or date ranges |
| Structure | LinkedIn or portfolio link | 2 | A profile or portfolio URL |
| Content | Quantified results | 8 | 30%+ of bullets contain a number, % or amount |
| Content | Length | 6 | 300–1,100 words |
| Content | Bullets start with action verbs | 6 | 60%+ of 4 or more bullets |
| Content | Weak phrases and clichés | 4 | No “responsible for”, “team player” and similar |
| Content | Skimmable lines | 3 | No more than two lines over 45 words |
| Content | No first-person pronouns | 2 | “I/me/my” three times or fewer |
| Keywords | Job-description keyword coverage | 20 | 70%+ of the ad’s top terms found (only with a job ad) |
| Maximum (all checks apply) | 120 |
Try the weighting
Tap any check to cycle it through pass, check and fix, and watch the estimate move. Two things stand out quickly: a missing text layer or poor keyword coverage costs far more than a stray pronoun, and adding a job ad changes what “good” means.
100/100
A scanned PDF is additionally capped at 25 in the real checker.
What the score can’t tell you
- Your chances with a specific employer. Their system, settings, knock-out questions and recruiters all differ, and none of that is visible from outside.
- Whether your experience fits. A perfectly parsed resume for the wrong role is still the wrong resume.
- Every parser’s quirks. Our column and table detection is a heuristic based on text positions (PDF) and document structure (DOCX). It will occasionally flag a layout that parses fine, or miss one that doesn’t.
Use the score to find problems, fix them, and move on. The checker shows the extracted text next to your results so you can judge the parsing for yourself.
Questions people ask
Is the ResumeATS score the same as an employer’s ATS score?
No. Applicant tracking systems are configured by each employer and don’t publish a universal score. Ours is an estimate built from general, checkable factors: whether text can be extracted, whether sections are recognisable, content quality signals and keyword coverage.
Why did my score change when I added a job description?
Keyword coverage is only scored when you paste a job ad, and it carries the largest weight. A resume that is well formatted but doesn’t use the ad’s terms will drop.
Why is my score capped at 25?
When a PDF has almost no selectable text, the rest of the checks are meaningless: a parser has nothing to read. Fix the text layer first.
Does the AI review change my score?
No. The score is computed by plain code in your browser. The AI review is separate advice on wording.