The Parse-Clean Resume Standard, Graded Before the Batch
You will grade your master resume pass or fail on every ATS-extracted field, prove it with an extraction test, and fix each failure before you send a batch.
This is a gradeable definition of done for one master resume, scoped for someone about to run it through dozens of different portals. It is for job seekers applying at volume who want to prove, once, that their file extracts cleanly before a single application goes out. It delivers pass/fail criteria for every field an applicant tracking system must extract, the extraction test that proves parseability, and a fix for each failing element.
Most pages on this topic are anxiety loops: a list of "seven formatting mistakes" you re-read before every application, never knowing if you fixed the right thing. A standard is different. You apply it once to a master file, you record the verdict, and two people grading the same file reach the same result. That is the job here.
What an ATS actually extracts, and what silently drops
An applicant tracking system reads plain text out of your file and slots it into structured fields: name, job titles, employers, start and end dates, education, and skills. Recruiters then search and filter on those fields. If a value never lands in its field, it is not that you rank low; you are invisible for that filter.
The common parsers named across sources are Workday, Greenhouse, Lever, Taleo, and iCIMS. They all try to map the same core fields. What varies is how they cope with layout, and the documented ways layout causes a field to drop are consistent:
- Multi-column layouts and tables scramble reading order, so a job title from column one merges with a date from column two into nonsense.
- Text boxes sit outside the document flow and get skipped entirely.
- Headers and footers are stored separately, so contact info placed there is often skipped or extracted without being linked to your record.
- Images and skill-bars are invisible to the parser; a graphic showing "Python 90%" carries zero text.
The top three disruptors, in order, are multi-column layouts, text boxes, and headers and footers. Note what they share: each one looks perfectly fine to a human eye. That is the whole problem. Your reviewer is not the recruiter first; it is a parser that reads storage order, not visual order.
Contact loss is a storage problem
Here is the insight that reframes the whole exercise. Word headers and footers live in separate XML files, like header1.xml, that many parsers skip. So the parser starts building your record from your summary line, and your name and contact details go nowhere. The resume that "looks fine" arrives nameless. The fix is structural, not cosmetic: the text has to live in the document body, not the header region.
One 2026 benchmark showed an email in a running page header extracted three times, once per page, and that duplication pattern is enough to make some engines discard the region outright. So a header is not neutral. It is an active liability.
Why file structure beats file type
DOCX is the safer default, but structure matters more than the extension. A messy DOCX can parse worse than a clean PDF. The reason DOCX usually wins is narrow: it removes one specific failure mode, the missing text layer.
In one eight-month test, .docx files parsed reliably 100% of the time across Workday, Greenhouse, and iCIMS. PDFs had edge-case failures, and those failures traced specifically to files created with "Print to PDF" rather than "Save As." A printed PDF can be a flat image with no text layer, so the system sees a blank page. A text-based PDF made with Save As closes most of that gap. The extension is really a proxy for text-layer integrity.
The practitioner figures below are vendor and technical write-ups, not controlled academic studies, so read them as direction rather than precision. But the ordering is consistent and useful.
| File or layout | Reported parse/extraction success | Source |
|---|---|---|
| .docx simple | 85% | dev.to technical analysis |
| Text-based PDF | 75% | dev.to technical analysis |
| Formatted .docx | 60% | dev.to technical analysis |
| Single-column skills extraction | 65% (93% purpose-built) | ResumeAdapter 2026 |
| Multi-column skills extraction | 46% | ResumeAdapter 2026 |
Two things jump out. First, a formatted DOCX at 60% scores worse than a plain text PDF at 75%, which proves structure beats extension. Second, columns cost you exactly where it hurts: the drop from 93% to 46% is concentrated in the skills section, which is precisely where keyword matching happens. A two-column resume that "looks tidy" fails hardest at the one job the parser is doing on your behalf.
The per-application rule that follows from all of this is simple: upload DOCX when the portal allows it, otherwise a text-based (not scanned) PDF. Keep the structure single-column either way.
Who is on the other side of the upload
The reason to satisfy Workday's reading behavior first is that Workday-skilled recruiters dominate the population you are applying to. In Refolk's index of professional profiles, 551 US recruiters and technical recruiters list Workday as a skill, against 154 who list Greenhouse. That is a 3.58x gap.
| ATS skill | US recruiters listing it | Ratio to Greenhouse (derived) |
|---|---|---|
| Workday | 551 | 3.58x |
| Greenhouse | 154 | 1.00x |
Optimizing a master file for Workday's left-to-right, top-to-bottom, single-column reading therefore covers the largest documented slice of recruiters. The counts come from Refolk's index; the ratio is derived from those two counts.
The scale of the population matters too. Refolk's index lists 110,708 recruiters and technical recruiters in the United States and 7,206 in the United Kingdom, so the US market is roughly 15.4 times larger. When you apply at volume, you are pushing one file past a large and varied pool of screeners running different systems. That is the argument for a single hardened master file rather than per-application tinkering: you cannot know which system each portal runs, so you satisfy the strictest common denominator once.
| Market | Recruiters in index | Share of US baseline (derived) |
|---|---|---|
| United States | 110,708 | 1.00x |
| United Kingdom | 7,206 | 0.065x |
If you want to see the specific recruiters and systems behind a role you are targeting, Refolk can surface them from public profiles so you know which ATS your batch is really going into.
Dates that parse, and dates that quietly break tenure
Use one date format everywhere and use "Present" for current roles. Consistency is the actual requirement; parsers cope with several formats, but they cope badly with a mix.
Four formats parse correctly across engines one vendor tested: full month and year, abbreviated month and year, MM/YYYY, and year-only for older roles. Pick one and hold it. The failure modes are specific:
- Year-only for recent roles makes the parser act conservatively; it might credit 1 day or 365 days for the range, so your tenure computes wrong.
- Apostrophe two-digit years like '23 are treated as typos or garbage by many engines. This pattern from 1990s and 2000s templates is not recognized by most ATS built since 2015.
- Seasons like Summer 2023 fail because "Summer" is not a month.
- "Ongoing" and "current" fail; use "Present."
How a parser turns your file into a record
- Read fileThe parser pulls the text layer in storage order, not visual order.
- SegmentIt splits text into blocks: contact, experience, skills, education.
- Map fieldsIt slots blocks into structured fields recruiters can filter.
- ComputeIt derives tenure from dates and matches skills to the posting.
The trap here is the resume that reads fine to a human but has one recent role in year-only format. A person sees "2022-2023" and understands. The parser sees an ambiguous range and miscredits it. Grade every recent role for month plus year.
Grade and prove it: the extraction test
This is the procedure. Run it top to bottom on your frozen master file. Each step has a done condition, and each done condition is the pass criterion for that field.
The parse-clean grading run
- Freeze one master filePick the single file, DOCX preferred, that will go to every portal. Done when one canonical file exists, single-column, with standard headings: Summary, Experience, Skills, Education.
- Run the Ctrl+A body testClick into the body and press Ctrl+A. Done when name, phone, and email all highlight, meaning nothing lives only in a header, footer, or text box.
- Run the copy-paste extraction testSelect all, copy, and paste into Notepad or TextEdit as plain text. Done when all text appears, in reading order, top to bottom.
- Grade reading orderCompare the paste against the original. Done when there is no interleaving of columns, no glued tokens like SAPOracle, and no blank gaps where images sat.
- Grade date fieldsConfirm every role uses one format from Month YYYY, MMM YYYY, or MM/YYYY, plus Present for current roles. Done when there are no seasons, no apostrophe-years, no ongoing or current, and no year-only for recent roles.
- Grade field capture with a parser previewUpload to a browser-side parser to see the mapped fields. Done when name, contact, each title/employer/date pair, and skills each land in the right field.
- Fix and re-testMove header contact into the body as normal paragraph text, remove tables and text boxes, and standardize dates. Done when steps 2 through 6 all pass on the corrected file.
- Lock as baselineRecord the pass/fail grid so the verdict is reproducible. Done when two people grading the same file reach the same verdict.
Reading the copy-paste result
The copy-paste test is the core of the standard, so read it carefully. A pass looks like all your text appearing in the editor, top to bottom, in the order a reader would follow. A fail looks like large chunks missing, or nothing at all. If pasting produces no text, your PDF is almost certainly an image, which means the ATS sees a blank page.
Watch for two specific tells. Glued tokens like "SAPOracle" or a name mashed into one word mean cells or letters ran together, which points at a table or text box. Blank spots where content should be mean that region was really an image. Sources disagree on whether step 6, the real parser preview, is mandatory or optional; some treat the copy-paste test as sufficient. For a master file about to go out in volume, do the parser preview. The copy-paste test proves rough readability. It does not catch everything a real parser flags.
Refolk builds a resume from your own history and tailors it to each posting, so if your master file fails reading order or field capture, generating a clean single-column version is faster than surgery on the broken one.
A corrupted resume does not get rejected. It ranks last, silently, with no error to tell you.
How this goes wrong: false positives and traps
The dangerous failures are the ones that look like passes. A standard is only worth adopting if it catches them, so this section carries the weight. Each row below is a way the quick tests lie, and the check that exposes it.
| Failure mode | What it looks like | The check that catches it |
|---|---|---|
| Copy-paste passes, real parser fails | Full, clean paste | Run a browser-side parser preview (step 6) |
| Hidden header loss | Full paste, but no name at top | Ctrl+A body test: name must highlight |
| Image PDF that looks selectable | Opens crisply on screen | Paste yields blank or garbled text |
| Year-only recent roles | Dates read fine to a human | Confirm every recent role has month plus year |
| DOCX assumed safe | Right extension, tables inside | Grade structure, not extension |
| Two-column "tidy" resume | Visually balanced | Reading-order grade against the paste |
A few of these deserve a sentence more.
Clean paste, hidden header loss is the most common trap. The body text pastes perfectly, so you relax, but your name was in a header and dropped without a trace. The Ctrl+A test is the only cheap guard: if your name does not highlight with the body, the ATS will not see it.
PDF looks selectable but is image-based catches people who exported from a design tool. It renders sharp, you can even sometimes drag a selection box over it, but paste produces garbage. Trust the paste, not the screen.
Over-trusting the 75% rejection stat is a conceptual failure rather than a formatting one. That widely cited figure is disputed and weakly sourced. It conflates ranking with rejection. A 2025 study of 25 US recruiters across 10-plus ATS platforms found 92% do not configure content-based auto-rejection. Treat parseability as a ranking-visibility problem, not a hard gate. The honest framing is that the mechanism exists but the scale is unproven.
Fixing each failing element
For each field that fails, the fix is mechanical. Move header and footer contact into the document body as regular paragraph text at the very top, formatted to look identical to a header so you keep the appearance while the text lives where the parser reads it. Remove tables and text boxes and rebuild those sections as plain single-column text. Replace any skill-bar graphics with a plain comma-separated or line-broken skills list. Standardize every date to one format plus "Present."
FIRST LAST City, ST | phone | email | profile URL SUMMARY One to three lines of plain text. EXPERIENCE Job Title, Employer Jan 2022 - Present - Achievement bullet as plain text. - Achievement bullet as plain text. Job Title, Employer Mar 2019 - Dec 2021 - Achievement bullet as plain text. SKILLS Skill, Skill, Skill, Skill, Skill EDUCATION Degree, Institution, 2018
Single column, plain text headings, contact in the body. Replace bracketed content and delete the brackets.
Note the contact block: name on its own line at the top of the body, then location, phone, email, and profile on one line separated by pipes. No header, no footer, no text box. After every fix, re-run steps 2 through 6. A fix is not done until the re-test passes.
Lock it as policy and keep it current
Record the pass/fail grid so the verdict is reproducible and adoptable as team policy. The point of writing it down is that two people grading the same file reach the same verdict, which is what turns a personal habit into a standard.
Parse-clean master resume, definition of done
- One canonical file exists, single-column, DOCX preferred, with standard headings.
- Ctrl+A highlights the name, phone, and email along with the body.
- Copy-paste to plain text shows all content in reading order, top to bottom.
- No glued tokens, no interleaved columns, no blank gaps in the paste.
- Every role uses one date format from Month YYYY, MMM YYYY, MM/YYYY, plus Present.
- No seasons, apostrophe-years, ongoing/current, or year-only recent roles.
- A parser preview maps name, contact, each title/employer/date pair, and skills correctly.
- Contact info lives in the document body, not a header, footer, or text box.
- The file is a text-based PDF or DOCX, never a scanned or Print-to-PDF image.
- The pass/fail grid is recorded so a second grader reaches the same verdict.
To keep it current, re-run the grid whenever you change the layout, add a role, or export to a new file. Do not trust that an edit preserved parseability; a single pasted table can undo a pass. Re-grade after any structural change and before any new batch.
Two of the numbers in this guide are time-sensitive in a way you should re-check locally rather than take on faith. The format success rates are vendor and practitioner figures, not controlled studies, so treat the ordering as durable but the exact percentages as approximate. The apostrophe-year support and the "since 2015" engine cutoff describe how parsers behave, not a fixed date to memorize; re-run the copy-paste and parser preview if you are ever unsure whether a specific portal handles a format. The mechanism is what you are grading against, and the mechanism is stable: parsers read storage order, map fields, and compute tenure. Build to that, prove it, and send the batch.
Questions job seekers ask
Is my resume ATS readable if it looks fine on screen?
Looking fine on screen proves nothing. A PDF can open crisply and still be an image with no text layer, and a name in a header can render perfectly while the parser drops it. The only readable signal is the copy-paste extraction test: select all, paste into a plain-text editor, and confirm every word, including your name at the top, appears in reading order.
How do I test resume ATS parsing without paying for a tool?
Two free tests cover most of it. First run the Ctrl+A body test in Word: click into the body, press Ctrl+A, and confirm your name, phone, and email highlight with everything else. Then run the copy-paste test into Notepad or TextEdit. Both are directional, so for a master file about to go out in volume, add a free browser-side parser preview to see mapped fields.
Should I upload a PDF or a DOCX?
DOCX is the safer default. In one eight-month test, .docx parsed reliably 100% of the time across Workday, Greenhouse, and iCIMS, while PDFs had edge-case failures, mostly from Print to PDF files that lack a text layer. Upload DOCX when the portal allows it; otherwise use a text-based PDF made with Save As, never a scanned or printed one. Structure still matters more than extension.
What date formats break ATS parsing?
Seasons like Summer 2023, apostrophe years like '23, and the words ongoing or current all fail. The apostrophe two-digit-year pattern is not recognized by most engines built since 2015. Year-only ranges make the parser act conservatively and miscompute tenure. Pick one of Month YYYY, MMM YYYY, or MM/YYYY, use it everywhere, and use Present for the current role.
Does the 75% rejection statistic mean formatting gets me auto-rejected?
No. That figure is disputed and its methodology is weak. A 2025 study of 25 US recruiters across 10-plus ATS platforms found 92% do not configure content-based auto-rejection. Treat parseability as a ranking and visibility problem, not a hard gate: a corrupted resume tends to rank last silently rather than trigger a rejection, which is exactly why grading before you send matters.
Put this to work
Paste your career in once. Every application after that is written for you.
Drop a resume or a LinkedIn URL. I rank the live openings against it, rewrite the resume and write a cover letter for the best of them, and fill in the employer's form when you press the button. You read, you decide what goes out.
01Drop your resume
A PDF or a LinkedIn URL. About a minute, once.
02I rank the openings
Every weekday morning, the live catalog scored against your history. Up to 20 worth your time, not two hundred links.
03Each one is written up
Resume rewritten for the posting, a cover letter, a fit score. Press send, or let me fill in the form.
- New matches ranked and written before you are up.
- Every bullet stays inside what your history supports. Nothing invented.
- Queued, submitted, interviewing, offer: one screen, not a spreadsheet.
500 free credits on sign-up. No card. Nothing is sent until you say so.