ATS resume checker
A free ATS resume checker and resume grader: see the text stream an applicant tracking system extracts from your resume, not the page you designed. Twelve checks and a score, no account, and the file never leaves your browser.
Drop your resume here
Text-based PDF or DOCX. Scanned images and picture-only PDFs have no text layer to read.
or paste your resume text
What happens to your file
This checker is personal-information-minimised by construction: the file is read in your browser, the score is computed in your browser, and nothing is written to storage or sent anywhere. That is not a promise to trust — open the network panel before you upload and you will see no request that carries your resume. We do not claim to be anonymous; we claim there is nothing to receive.
How the score is calculated
- 1The file is parsed in your browser by pdf.js (PDF) or mammoth (DOCX). No server receives it, and no model is involved.
- 2Twelve checks run against the parsed text: eight about format, four about content. Each one passes, fails, or is marked not applicable when the file type cannot carry that signal.
- 3Format is worth 40 points and content 60, and each bucket scores by the share of its applicable checks that passed. Nothing is averaged by a human or guessed by an AI, so the same file always gets the same number.
What an ATS resume checker looks at
The report gives a verdict per check. This is what each verdict means and why a parser cares — the same twelve items, in the same order, in the same two buckets. You may have searched for this as an ATS score checker, or an ATS resume scan, or a free ATS resume checker. Those are names for the same job: parse the file, run the twelve checks, return a deterministic score.
- Machine-readable text
- A text layer with enough content to score. A picture of a resume has none, so it is rejected at the door instead of guessed at.
- Single-column layout
- One column, so the order the parser walks the page matches the order you read it. Two columns can come back interleaved mid-sentence.
- No tables or graphics holding content
- No tables, text boxes, or images holding real content. Parsers skip containers or read them out of order, and the text inside them disappears.
- Standard section headers
- A Work Experience heading and an Education heading. "Where I have Been" reads fine to a person and maps to no field in a parser.
- Consistent date format
- One date style throughout, so start and end dates land in the right fields. Mixed formats make a ten-year career read as three.
- Readable type size and margins
- Type size and margins inside the readable range. This check needs coordinates, so pasted text and most DOCX files mark it not applicable.
- Length fits experience
- Page count proportional to career length. One page for a senior role reads as trimmed; six pages for a graduate reads as unedited.
- Contact details in the body
- Email and phone in the body text, not only in the page header. Header regions are the most common casualty of text extraction.
- Dedicated skills section
- A section a parser can map to skills, holding at least five separable items. Tool names buried inside job bullets do not count as a list.
- Quantified achievements
- At least half your bullets carry a number, percentage, or count. A role that shipped something measurable should say by how much.
- Bullet density per role
- Two to six bullets per role. One bullet reads as a job title with nothing under it; nine bury the two that mattered.
- Strong action verbs open bullets
- Seven in ten bullets open with a verb that claims ownership. "Responsible for" and "worked on" describe a seat, not an outcome.
How to read your ATS score
The number is a sum of two independent halves, so read it as two answers, not one. Format readiness (40 points) says whether a parser can turn your file into text in a usable order. Content quality (60 points) says whether the text it gets back contains what a recruiter's screen looks for. A high total with a weak format half means your writing is fine and your file is the problem; the reverse means the file is clean and the content needs work.
Failures are ordered by weight, so fix the high-impact ones first. A merged two-column layout or contact details stranded in a page header costs more than an inconsistent date style, because the first two can make whole sections vanish from the parsed output while the last only confuses one field. Re-run the checker after each fix: the score is deterministic, so any movement you see came from your edit.
Checks that cannot apply to your file are marked and removed from the denominator rather than counted against you. Pasted text carries no coordinates, so column, margin, and page-count checks go quiet; a DOCX reports no glyph sizes, so the type-size check does too. This is why a pasted-text score can look higher than the same resume as a cluttered PDF — it is scoring less, not scoring better.
The bands are ours. Seventy-five is where we say a file is safe to send because every applicable check passed or nearly so. No applicant tracking system publishes weights to candidates, and nothing on this page claims otherwise — treat the score as a machine-readability test you can act on, not as an employer's verdict.
Under the score, the second view is the one people screenshot. It shows the line-by-line stream a parser builds from your file, in the order it walked the page, next to the order you actually read it. Where the two disagree you can see the damage directly: a skill that moved into the middle of a sentence, a phone number that never appeared, a heading that arrived after the paragraph it labelled. Fixing the format becomes a matter of removing whatever caused the collision, usually a second column or a table.
Choose the input by what you intend to send. A recruiter receives a PDF, so a PDF is the honest test even if you authored the resume in Word. A DOCX upload scores the same content but skips the checks that only a PDF exposes, because a word processor reflows the page when it opens. Pasted text is the weakest of the three: it tests your writing and nothing about your layout, so treat its score as a floor, not a result.
Product facts you can verify
Each line below is a claim you can check against this page, your network panel, or the behaviour of the tool itself. Nothing here is a marketing number.
| File formats | Text-layer PDF, DOCX, or pasted text |
|---|---|
| File size limit | 4 MB |
| Where parsing runs | 100% in your browser tab |
| Uploads | None — no request carries resume bytes |
| Account | Not required |
| AI model in scoring | None. A model never produces a number here |
| Checks | 12 — eight format, four content |
| Score model | Format 40 points + Content 60 points |
| Bands | 75+ ready · 50–74 close · below 50 needs work |
| Reproducibility | Same file, same score. No clock, no randomness |
| Scanner / image PDFs | Refused at the door with a stated reason (no OCR runs) |
Questions
- Does this tell me my ranking in a real ATS?
- No. Real applicant tracking systems are vendor-specific, and none publishes its weights. This is a self-check against how a parser reads your file, not a prediction of what any particular employer's system will do.
- Where does my resume go after I upload it?
- Nowhere. Parsing and scoring run in the tab you are reading, so a personal-information-minimised pipeline is not a policy we ask you to trust — it is the absence of a request. You can open your network panel and watch: nothing carrying resume bytes leaves the page.
- Why does my scanned PDF get rejected?
- A scan is a picture of a resume, so it contains no text layer for a parser to read — and an ATS would see exactly the same nothing. Export a text-based PDF from Word or Google Docs, upload the DOCX, or paste the text.
- My two-column resume scored lower than a plainer one. Is that fair?
- From a parser's point of view, yes. Two columns are read left-to-right across the page, so the second column can land in the middle of a sentence from the first. The view above shows you exactly where that happened.
