Free resume parser
See every field a parser pulls out of your resume, and everything it drops, before an employer’s system files it. Read on your device, no sign-up.
See what a parser reads
PDF, Word, RTF or text, up to 12MB
Read on your device: your file is never uploaded. If you open it in the Studio, its text goes to our AI for suggestions. We never sell it or train AI on it.
How it works: four steps, about a minute.
Drop your resume
Pick the PDF or Word file you send to employers. It’s read on your device, and nothing is uploaded.
Read the fields
See your name, contact details, each job with its dates and bullets, your schools and your skills, as a parser files them.
Fix what’s flagged
Each problem comes with the fix: a missing email, dates not read, two columns, text in a picture, headings a parser won’t know.
Read it again
Export the fixed file and drop it in again. Or open it in the Studio and fix it there.
Updated
What a resume parser does: before anyone reads a word.
A resume parser turns your file into fields. It takes the text out of the PDF or Word file, works out which line is your name, which is your email, where each job starts and ends, and which words are skills. The applicant tracking system (ATS) stores those fields, fills the application form from them and lets recruiters search them.
Recruiters search the record, not your design. If your email never reached the email field, or your latest job came through with no dates, that’s what they see. Most people never find out, because the PDF looks perfect on their own screen.
This page shows you the record. It runs ATSPrep’s own reader on your file: the same one the Studio uses to import a resume. Every field below the drop zone is what it pulled out, in the order it read it.
Field by field: where each one comes from.
What a parser looks for to fill each field, and the layout that leaves it empty.
| Field | Where it comes from | What leaves it empty |
|---|---|---|
| Name | From: The first lines of page one, usually the largest text. | Breaks: A logo or photo above it, or a name set in the page header. |
| Email and phone | From: Text shaped like an address or a number, near the top. | Breaks: Details inside an image or icon, or only in the header or footer. |
| Location and links | From: A city and country, LinkedIn, GitHub or portfolio addresses. | Breaks: Links hidden behind icons with no address you can read. |
| Job title and employer | From: The line or two above each block of bullets. | Breaks: Title and employer split across columns or table cells. |
| Dates | From: Month and year ranges next to each job, like “Mar 2021 – Present”. | Breaks: Dates in a column of their own, or written as “3 years”. |
| Bullets | From: Lines under a job, until the next job or heading. | Breaks: A sidebar read across the page, mixing its lines into your bullets. |
| Education | From: School, degree and year under an Education heading. | Breaks: A heading the parser doesn’t know, like “Where I studied”. |
| Skills | From: A list under a Skills heading, split on commas or lines. | Breaks: Skill bars, star ratings or logos with no words. |
| Sections | From: Standard headings: Summary, Experience, Education, Skills. | Breaks: Creative headings, or headings drawn as images. |
What makes a parser miss things: and the fix for each.
Numbers from our PDF extraction study.
Two columns
A parser reads a PDF by position. A sidebar beside your jobs can be read straight across the page, so a skill lands in the middle of a bullet. In our PDF extraction study of 108 test PDFs, read with PDF.js (the reader this page uses), a two-column body kept 83.6% of its reading order and 30.5% of its lines came out welded: part of one line glued to part of another.
Fix: Use one column. Put skills and contact details above or below your experience, not beside it.
The two-column testTables
Cells side by side are read in the parser’s order, not yours. In the same study a table-style grid gave back 97.6% of its words, but 24.1% of its lines came out welded.
Fix: Keep jobs, dates and contact details as plain lines. If you used a table for alignment, use tab stops instead.
What tables do to a resumeText in a picture
A scanned page, a photo or a resume exported as an image has no text layer. In the study, image-only PDFs gave back 0% of their words. This page reads the picture on your device so you still see something, but many ATS parsers see a blank page.
Fix: Export again from Word or Google Docs with File → Download → PDF. Don’t scan, photograph or print to an image.
Scanned resumes and the text layerContact details in the header or footer
In the study, contact details set in the page margins all came back, but out of place: reading order fell to 93.7% as they moved to the end of the text. Greenhouse’s own support docs name contact details in a header, footer or text box as a cause of a failed parse.
Fix: Put your name, email and phone in the body of the page, at the top.
Headers and footers, testedHeadings a parser doesn’t know
Parsers sort your lines by the headings they expect. “Where I’ve made an impact” doesn’t tell one that jobs follow, so your work history can land in the wrong field or nowhere.
Fix: Use the plain words: Summary, Experience, Education, Skills, Projects, Certifications.
Dates it can’t read
A job with no dates can’t be sorted, and a recruiter filtering by years of experience never sees it counted. Dates in a column of their own often end up next to the wrong job.
Fix: Write “Mar 2021 – Present” or “03/2021 – 05/2024” on the same line as the job title or the employer.
Spaced-out or fancy letters
Headings with letters spaced apart can come back as single letters. In the study, letter-spaced headings gave back 96.9% of their words. Some decorative fonts don’t map their letters back to text at all, so the parser reads symbols.
Fix: Use a standard font such as Arial, Calibri or Georgia, with normal letter spacing.
Letter-spaced headings, tested
PDF or Word? Either works if it holds real text.
Good: Looks the same everywhere, so your layout survives. Workday, Greenhouse and Lever all take it.
Risk: Text is stored as positioned pieces, so columns, tables and text boxes can be read in the wrong order. A scan or image export holds no text at all.
Word (DOCX)
Good: Text is stored in the order you wrote it, so columns and tables are less likely to be read out of order.
Risk: Headers, footers and text boxes are stored apart from the main text, and some parsers skip them. Fonts and spacing can shift on another computer.
Send what the job post asks for. If it says nothing, a one-column PDF exported from Word or Google Docs is a safe default. Drop both versions in here and keep the one that reads cleaner. PDF or DOCX for an ATS
Resume parser or ATS checker? One shows the record, one scores it.
Resume parser
This pageShows what came out of your file: every field, in order, and what went missing. Use it to check your layout before you send a new design, or to get your resume as JSON.
ATS resume checker
Reads the same file, then checks what’s in it: weak bullets, missing results, keywords against a job post. Use it once the record is clean.
For developers: JSON Resume, read in the browser.
Copy as JSON gives you the result in the JSON Resume format (jsonresume.org), the open schema many resume tools read. Dates come through as written on the resume (“Mar 2021”), not converted to ISO dates. Fields the file didn’t have are left out, not filled with blanks.
It all runs in your browser: PDF.js reads the PDF, Word files are unzipped and read on the page, and a set of rules files each line. For a scanned PDF it reads the image on your device with Tesseract. There’s no server step and no API to call, so you can’t send files to it from your own code.
basics- Name, job title, email, phone, location, summary, profiles (links)
work- Employer, title, location, startDate, endDate, highlights (bullets)
education- Institution, studyType (degree), startDate, endDate
skills- Each group’s name, with its keywords
projects, certificates- As found, with links and dates
awards, volunteer, languages- When the resume has those sections
x-atsprep-sections- Any other section, under its own heading
What this can’t tell you: your employer’s parser is its own.
This is ATSPrep’s parser, not Workday’s, Greenhouse’s or any employer’s. Each ATS runs its own, and they disagree. Workday’s documentation says its parser never fills Skills or Languages. Greenhouse names columns and contact details in a header as causes of a failed parse. Lever says it can’t read images.
So treat a clean result here as evidence your file holds readable text in a sensible order, not as a promise of how one employer’s system will file it. When an application form fills itself from your resume, read every field before you submit.
Questions about resume parsers
Check your resume against a job postHow to see what an ATS reads in your resumeHow each ATS reads a resumeOur PDF extraction study
What is a resume parser?
Software that turns a resume file into fields: name, email, phone, each job with its title, employer and dates, schools and skills. Applicant tracking systems (ATS) use one to fill the application form and to let recruiters search candidates. Anything it misses isn’t in the record a recruiter searches.
Is this resume parser free?
Yes. No sign-up, no limit on how many files you read, and nothing to install. Copy as JSON is free too.
Is my resume uploaded?
No. Your file is read in your browser and never leaves your device. A copy is kept in your browser’s own storage so the Studio can open it, and nowhere else. If you choose to fix it in the Studio, its text goes to our AI for suggestions. We never sell it or train AI on it.
What does it pull out of my resume?
Your name, job title, email, phone, location and links; each job’s title, employer, location, dates and bullets; schools, degrees and years; skills; projects, certifications and any other section; the headings it recognised; and all the text in the order it was read.
Is this what Workday or Greenhouse will see?
Not exactly. This is ATSPrep’s parser, and every ATS runs its own. Workday’s documentation says it never fills Skills or Languages from a resume, for example. What this shows is whether your file holds readable text in a sensible order, which every parser needs. If a field is missing here, assume theirs can miss it too.
Why are my jobs or dates missing?
Usually the layout. Dates in their own column, jobs in a table, two columns read across the page, or headings a parser doesn’t know can all separate a job from its dates. The flags under the result name the cause and the fix.
Does a two-column resume work?
Often not cleanly. A parser reads a PDF by position, so a sidebar can be read straight across into your bullets. If this page flags two columns, a one-column layout is the safe fix.
Should I send a PDF or a Word file?
Whatever the job post asks for. If it doesn’t say, a one-column PDF exported from Word or Google Docs is a safe default. Drop both versions here and send the one that reads cleaner.
Can it read a scanned resume?
Yes, on your device: it reads the picture with text recognition. But many ATS parsers don’t, and see a blank page. If it flags “Your text is a picture”, export the resume again from Word or Google Docs.
What format is the JSON?
JSON Resume (jsonresume.org): basics, work, education, skills, projects, certificates, plus awards, volunteer and languages when your resume has them. Dates stay as written on the resume. Empty fields are left out.
Is there a resume parser API?
No. It runs entirely in the browser, so there’s no server to send files to. Copy as JSON is the way to get the result out.
What’s the difference between this and the ATS resume checker?
This shows the record: what came out of the file and what went missing. The checker reads the same file and then judges what’s in it: weak bullets, missing results, keywords against a job post. Fix the record here first, then check it.
Fix it in the Studio.
Open your resume in the Studio to move a sidebar into one column, rename headings and fill the fields a parser missed. It checks every line as you write, then saves a clean PDF or Word file.
Optional: ATSPrep Pro, $9 for 7 days, $29 for 3 months or $12 a month, adds more AI, tailoring and Word downloads. See the plans