ATS resume checker
Read your resume the way a parser does, see where it loses information, then rebuild it plain.
By opening this website or using its tools, you agree to our Terms and Privacy Policy.
or drag it here
PDF or DOCX · one document · nothing is uploaded
Your file never leaves your browser during processing
How it works
To check a resume against an applicant tracking system, drop the PDF or .docx onto this page — the text is extracted in your browser exactly as a parser would read it, the contact details and section headings it could find are shown back to you, and the document can be rebuilt as a single-column file with conventional headings. Nothing is uploaded.
An applicant tracking system does not see your resume. It sees the text layer underneath it — positioned characters, in whatever order the document stores them — and then looks for a few landmarks: an email address near the top, headings it recognises, dates it can pair with job titles. This tool reads your file the same way, with pdf.js for a PDF and mammoth for a .docx, and shows you what came out.
The failures worth catching are structural, not stylistic. Two columns are read straight across, so a skills sidebar interleaves itself into your job history. Tables scramble in the same way. Text inside an image is invisible: a resume exported as a picture, or a header saved as a graphic, takes your phone number with it. And a section headed "Where I’ve Been" is not matched to "Experience" by anything, so its contents get filed as unlabelled text. Every check here reports evidence from your actual file — a page number, a heading, a missing field — rather than the same generic advice every upload gets.
The rebuild is deliberately ugly. One column, standard headings, plain bullets, no tables, no icons, no colour — written for a parser, not a person. Nothing is invented and nothing is reworded: dates are kept exactly as you wrote them, an unrecognised heading is kept as written rather than renamed to the closest match, and the parsed result is shown for you to check before you use it. Word (.docx) is generally the safest upload format, and it is the default here.
There is no AI step on this page. Turning messy resume text into typed fields is the part small on-device models handle badly, and the site’s rule is that a tool ships when it works in the browser without one — so what runs here is rules over text, with every guess labelled as a guess. Extraction, parsing, and the rebuild all happen in your tab; a resume is about as personal as an uploaded document gets, and this one never leaves.
FAQ
What is an ATS-friendly resume?
One whose text layer reads cleanly in order: a single column, conventional headings like Experience and Education, an email address near the top, real text rather than images, and no tables. Design choices that help a human reader — sidebars, icons, multi-column layouts — are the ones that lose information on the way into a parser.
Will this rewrite my resume?
No. It restructures it and nothing else. No sentence is reworded, no date reformatted, and nothing is added. Headings it does not recognise are kept exactly as you wrote them rather than renamed to a close match.
Should I upload a PDF or a Word document?
When a form accepts both, .docx is usually the safer choice — it carries explicit paragraph structure, where a PDF only carries positions that have to be reconstructed. That is why the rebuild defaults to .docx here.
It found no email address. What does that mean?
Either it is not in the first lines of the document, or it is not in the text layer at all — inside an image, or in a header a converter dropped. Either way an ATS will probably miss it too, which is exactly what the check is telling you.
Does this score my resume or rank it against a job?
No. It checks whether the document can be read, not whether the content is good. Anything claiming to score a resume against a job description from the file alone is guessing at criteria only the employer’s system holds.
Is my resume uploaded anywhere?
No. Extraction, parsing, and the rebuild all happen in your browser, and the network counter under the tool stays at zero bytes uploaded while your file is processed.