We Tested 10 Fonts and 8 Layouts Through Two PDF Parsers. Here’s What Broke.
Short answer: Across ten fonts, including Comic Sans and Impact, text extracted identically from real-text PDFs, so font choice does not decide parsing. What did break: a scanned (image-only) PDF returned nothing, skills drawn as icons or bars vanished, and some column and table layouts came out in the wrong order depending on the parser.
- Fonts: 10 of 10 extracted at 100% in both parsers. Pick a font for readability, not for “ATS”.
- Image-only PDF: 0 of 5 fields recovered. If you can’t select the text, software can’t read it.
- Skills drawn as bars or icons: lost entirely. The skill names were never text.
- Columns and tables: parser-dependent. One parser kept order; another interleaved a sidebar into your experience.
Why we ran this
Every “best font for resume” and “ATS-friendly format” guide we read makes confident claims about what applicant tracking systems can and cannot read. None of the top results we reviewed showed a test. So we ran one, with files you can open yourself.
The goal is narrow and honest: find out which common resume choices change what software can extract from a PDF. This is the first step an ATS performs, before any matching or ranking.
Method
- One synthetic resumeA fictional candidate (“Priya Nair”, data analyst) with a name, contact line, summary, two jobs with date ranges, education and a skills line. Same text in every file.
- Ten fonts, eight layoutsWe generated real-text PDFs with the font embedded, then varied one thing at a time: font, then layout (columns, table, header/footer contact, skills as icons, scanned image).
- Two open-source parsersWe extracted text with pypdf and pdfminer.six, two widely used PDF text libraries with different strategies (pypdf follows drawing order; pdfminer analyses page layout).
- ScoringFive key fields must be found exactly: name, email, phone, a date range, and the skills line. We also checked whether the experience section stayed in order and intact.
Run this test on your file
Our scanner shows what a parser extracts from your resume: what is readable, what is scrambled and what is missing. It runs in your browser; nothing is uploaded.
Result 1: fonts made no difference
All ten fonts, including the ones career sites tell you to avoid, were extracted at 100% by both parsers.
That does not mean fonts are irrelevant. It means they are irrelevant to text extraction from a PDF that embeds the font. Fonts still decide whether a human can read your resume quickly and whether a DOCX renders correctly on someone else’s machine. See our font guide for how to choose on those grounds.
Result 2: layout is where it breaks
| Layout | Fields found (pypdf · pdfminer) | Experience kept in order | What we saw |
|---|---|---|---|
| Single column | 5/5 · 5/5 | Yes · Yes | Perfect text and order in both. |
| Contact in header zone | 5/5 · 5/5 | Yes · Yes | Both parsers read it. (Some ATS drop DOCX headers; we did not test that.) |
| Contact in footer zone | 5/5 · 5/5 | Yes · Yes | Read by both; pdfminer moved it to a different position. |
| Two columns, block order | 5/5 · 5/5 | Yes · Yes | Whole sidebar first, then main column. Readable, but the sidebar leads. |
| Two columns, row order | 5/5 · 5/5 | No · Yes | pypdf interleaved rows: the phone number landed apart from the email and EDUCATION appeared inside the experience. pdfminer was unaffected. |
| Table layout | 5/5 · 5/5 | Yes · Yes | Text intact, but pypdf placed section headings after their content. |
| Skills as icons/bars | 4/5 · 4/5 | Yes · Yes | Every field except skills. The skill names were never text. |
| Scanned / image PDF | 0/5 · 0/5 | No · No | Zero characters extracted. |
The two-column result is the interesting one. The same visual page produced clean output or scrambled output depending on how the file was written and which parser read it. You cannot see that difference by looking at the page, which is why “just use one column” is the safe advice even though a column layout is not guaranteed to fail.
What we recommend
- Use real, selectable text. Test by opening your PDF and trying to highlight a sentence.
- Write every skill as text. Keep any visual rating bars as decoration alongside the name, never instead of it.
- Prefer one column. It removes the draw-order risk entirely. Use a parse-safe template.
- Pick the font for humans. Choose a readable 10-12 pt typeface your recipient will have installed.
- Keep contact details in the body. Header and footer treatment varies by ATS and file type, and the cost of putting them in the body is nothing.
Limits: what this does not prove
- Not a commercial ATS. We tested two open-source libraries. A vendor parser may behave differently, better or worse.
- Generated files, not exports. Our PDFs were written programmatically with embedded fonts. Files exported from Word, Google Docs, Canva or “print to PDF” can differ (for example in how text is encoded).
- PDF only. We did not test DOCX, where headers, footers and text boxes behave differently.
- One resume. A single synthetic document. Longer or more complex resumes may expose other issues.
- Extraction only. We did not test matching, ranking or knock-out questions, which depend entirely on the employer’s setup.
Download the test files and reproduce it
Every PDF we tested is below, plus the script and the raw results. Run them through any parser or ATS preview you have access to and tell us what you get.
- Font: Arial (PDF)
- Font: Georgia (PDF)
- Font: Times New Roman (PDF)
- Font: Verdana (PDF)
- Font: Tahoma (PDF)
- Font: Trebuchet MS (PDF)
- Font: Courier New (PDF)
- Font: Comic Sans MS (PDF)
- Font: Impact (PDF)
- Font: Brush Script (PDF)
- Layout: single column (PDF)
- Layout: two column sidebar block order (PDF)
- Layout: two column sidebar row order (PDF)
- Layout: table layout (PDF)
- Layout: image only scan (PDF)
- Layout: skill bars no text (PDF)
- Layout: contact in footer (PDF)
- Layout: contact in header zone (PDF)
- run.py · results.json
Frequently asked questions
Does the font I use affect ATS parsing?
In our test, no. All ten fonts, including Comic Sans, Impact and Brush Script, extracted at 100% from real-text PDFs in both parsers. Font still matters for human readability and for DOCX files opened on a machine without that font.
Can an ATS read a scanned PDF?
Our parsers extracted zero characters from an image-only PDF. Some commercial systems apply OCR, but it is error-prone, so a text-based file is far safer.
Are two-column resumes ATS-friendly?
Not reliably. In our test one parser read a two-column page correctly and another interleaved the columns, depending on how the PDF was written. A single column removes the risk.
Does this test prove what Workday or Greenhouse do?
No. We tested two open-source PDF parsers, not any commercial ATS. It shows which choices can break text extraction in general, not how a specific employer’s system behaves.
Run this test on your file
Our scanner shows what a parser extracts from your resume: what is readable, what is scrambled and what is missing. It runs in your browser; nothing is uploaded.
- Full score, no email wall
- Analysed in your browser, never uploaded
- No subscription, ever, for the scan
🔒 Analysed in your browser. Your resume is never uploaded to our servers.
Scanning your resume…
- Extracting text like an ATS parser
- Detecting sections and headings
- Checking contact details
- Measuring impact and action verbs
- Checking format and length
- Matching keywords
How we wrote this
Every claim here is either common, checkable knowledge or something we tested ourselves. Where we ran an experiment we link the method and the test files at our parser test. Anything that depends on a specific employer’s software is marked as uncertain, because no outside tool can see how a given company configured theirs. Published by the Resumaxing editorial team. Found a mistake? Email saas.dashboardiai@outlook.com and we will correct it and note the change date.