# 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.

|  |  |
| --- | --- |
| What you bring | Your resume as a PDF or Word file, or its text |
| Price | Free |
| Rendered page | https://atsprep.com/tools/resume-parser |
| This document | https://atsprep.com/tools/resume-parser.md |

Drop a PDF or Word resume and see every field a parser pulls out: contact, jobs, dates, education, skills. Copy it as JSON. Runs in your browser, free.

Updated 12 Nov 2026. The parser runs in the browser: the file is read on the device and never uploaded.

## How it works: four steps, about a minute.

1. **Drop your resume:** Pick the PDF or Word file you send to employers. It’s read on your device, and nothing is uploaded.
2. **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.
3. **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.
4. **Read it again:** Export the fixed file and drop it in again. Or open it in the Studio and fix it there.

## 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.

| Field | Where it comes from | What leaves it empty |
| --- | --- | --- |
| Name | The first lines of page one, usually the largest text. | A logo or photo above it, or a name set in the page header. |
| Email and phone | Text shaped like an address or a number, near the top. | Details inside an image or icon, or only in the header or footer. |
| Location and links | A city and country, LinkedIn, GitHub or portfolio addresses. | Links hidden behind icons with no address you can read. |
| Job title and employer | The line or two above each block of bullets. | Title and employer split across columns or table cells. |
| Dates | Month and year ranges next to each job, like “Mar 2021 – Present”. | Dates in a column of their own, or written as “3 years”. |
| Bullets | Lines under a job, until the next job or heading. | A sidebar read across the page, mixing its lines into your bullets. |
| Education | School, degree and year under an Education heading. | A heading the parser doesn’t know, like “Where I studied”. |
| Skills | A list under a Skills heading, split on commas or lines. | Skill bars, star ratings or logos with no words. |
| Sections | Standard headings: Summary, Experience, Education, Skills. | Creative headings, or headings drawn as images. |

## What makes a parser miss things, and the fix for each.

### 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 test](https://atsprep.com/blog/two-column-resume-extraction-test)

### Tables

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 resume](https://atsprep.com/blog/resume-tables-ats-extraction)

### Text 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 layer](https://atsprep.com/blog/scanned-resume-pdf-text-layer)

### Contact 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, tested](https://atsprep.com/blog/resume-header-footer-contact-details)

### Headings 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](https://atsprep.com/blog/letter-spacing-resume-headings)

Study numbers: [ATSPrep PDF extraction study](https://atsprep.com/research).

## PDF or Word? Either works if it holds real text.

- **PDF:** 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):** 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](https://atsprep.com/blog/pdf-vs-docx-for-ats)

## Resume parser or ATS checker? One shows the record, one scores it.

- **Resume parser:** Shows 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.

[ATS resume checker](https://atsprep.com/tools/ats-resume-checker)

## 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.

| JSON Resume key | What it holds |
| --- | --- |
| 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.

- [ATS guides by system](https://atsprep.com/ats)
- [Workday](https://atsprep.com/ats/workday)
- [Greenhouse](https://atsprep.com/ats/greenhouse)
- [Lever](https://atsprep.com/ats/lever)

## Questions

### 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.

Open the full resume Studio: https://atsprep.com/studio

## About ATSPrep

ATSPrep (https://atsprep.com) is a free resume and application workspace. Match experience to a posting, strengthen claims with evidence, and track the next action. Its PDF check shows text recovered by ATSPrep's extractor, not an employer's proprietary ATS or hiring decision.

- **Price:** Free plan forever: your ATS score, every fix, job match, 3 AI rewrites and PDF downloads, with no card or watermark. Optional ATSPrep Pro ($9 once for 7 days, $12/month, or $29 once for 3 months) adds 300 AI edits a day, Fix all with AI, AI tailoring, Word downloads, all 13 templates and unlimited practice with Pip.
- **Account:** none needed to import or edit a resume, or for its first check and 3 rechecks a day. A free sign-in is needed for PDF downloads (Word files come with ATSPrep Pro), to sync, and for more than 1 AI edit.
- **Your file:** parsed and exported inside the browser. The resume file itself is never uploaded.
- **Sent:** matching a job by meaning, on by default once you add a job (the lines involved). Only on a button press: AI edits (the lines involved), a job link (the link) and Pip voice calls (your speech). Never your contact details, and none of it is stored.
- **Connection:** some tools load on first use and need a connection to download. Local storage is not a cloud backup.
- **Accepts:** PDF, DOCX, TXT, Markdown, or pasted plain text.

Start here: https://atsprep.com/studio
