# Best font for a resume: we tested 18 fonts in three PDF readers

> The best font for a resume, tested: one resume in 18 fonts, read back by three PDF text extractors. All but one came back word for word. What to pick.

|  |  |
| --- | --- |
| Category | Resume tips |
| Published | November 12, 2026 |
| Reading time | 9 min |
| Rendered page | https://atsprep.com/blog/best-font-for-resume |
| This document | https://atsprep.com/blog/best-font-for-resume.md |

The best font for a resume is a plain, common one at 10 to 12 pt: Arial, Calibri, Georgia, Helvetica or Times New Roman. We set one resume in 18 fonts, saved each as a PDF from Chrome and from LibreOffice, and read every file back with three PDF text extractors. Of the 18, 17 came back word for word, so pick the font for the person reading. What did break text: a font missing from the computer that made the PDF, icon fonts, and one font's punctuation in one reader.

## The short version

- All but one of the 18 fonts came back word for word from both PDFs in all three readers, the script font included. For the software, the font family barely matters.
- The one miss was Inter in Chrome's PDF: pdf.js returned its brackets, hyphens and dashes as codes that stand for no character, so “(408) 555-0147” came back with three of them in place of its punctuation. The other two readers got it right.
- The worst damage came from a font that wasn't there. A Word file in Garamond, turned into a PDF on a computer without it, gave pdf.js “the fianance officce” for “the finance office”.
- Size changed the page, not the text. At 11 pt the same words filled 86% to 103% of a page, and Arial at 6 pt still read back exactly.

## Which font to use

Pick one plain font and use it for everything. MIT's resume checklist names Arial, Calibri and Times New Roman as easy-to-read examples. Columbia's engineering career office lists Times New Roman, Arial, Calibri, Garamond or Tahoma, and says to use one font throughout.

Every one of those read back cleanly in our test whenever the font was actually on the computer: Calibri through its twin, Garamond as EB Garamond. So did Lato, Roboto, Open Sans and IBM Plex Sans. From there, choose on looks and on how much fits on the page.

- Sans serif: Arial, Calibri, Helvetica, Verdana, Tahoma, Lato or Roboto.
- Serif: Georgia, Times New Roman, Cambria or Garamond.
- Body text at 10 to 12 pt, the range MIT and Columbia both give. Columbia puts your name at 12 to 22 pt.
- Margins of 0.5 to 1 inch, per MIT's checklist.
- Make the PDF on the computer that has your font. A Word file's words arrive intact, but if the employer's computer lacks your font, it draws them in another.

> **Keep in mind:** Word's default font has been Aptos since 2023, when Microsoft replaced Calibri with it in Word, Outlook, PowerPoint and Excel. We did not test Aptos: it was not on the test machine.

## How we tested 18 fonts

We wrote one resume of 22 lines and 84 words, including 15 words with fi, fl or ff in them and 6 bullets, and set it in each font at 11 pt. Calibri and Cambria come with Microsoft Office, so we used Carlito and Caladea, free fonts that The Document Foundation lists as metrically compatible with them: same letter widths, different files. The last font, Brush Script MT, is a script font, there to see whether anything breaks.

Each version became a PDF two ways: Chrome's print to PDF, and LibreOffice Writer's export from a Word file. pdf.js, Poppler's pdftotext and MuPDF read all 36 PDFs back, 108 reads in all, and we checked every line, word, bullet and fi or fl word against what was typed. We also read each Word file's own text.

Of the 18 fonts, 17 came back exactly in all 6 of their reads. The only changed read was Inter in Chrome's PDF, read by pdf.js. Every Word file's own text came back exactly too, including the one in the missing font.

> **Keep in mind:** Producers: chromium@153.0.8010.12 (through playwright@1.63.0) and LibreOffice 26.8.1.1. Readers: pdfjs-dist@6.3.289, pdftotext from poppler@26.10.0, and mupdf@1.28.5. Text maps were checked with pdf-lib@1.17.1; icons are font-awesome@6.5.2. These are three open-source text extractors, one of them the library ATSPrep's own checker uses. Employer systems license their own readers, which are not public and may behave differently. The results show what these files give back to these readers, not how any particular employer screens.

*Lines out of 22 that came back exactly from each PDF, counting the worst of the three readers. The last row is a Word file in a font the converting computer did not have.*

| Font | Type | Chrome PDF | LibreOffice PDF |
| --- | --- | --- | --- |
| Arial | Sans serif | 22/22 | 22/22 |
| Helvetica | Sans serif | 22/22 | 22/22 |
| Verdana | Sans serif | 22/22 | 22/22 |
| Tahoma | Sans serif | 22/22 | 22/22 |
| Trebuchet MS | Sans serif | 22/22 | 22/22 |
| Carlito (Calibri twin) | Sans serif | 22/22 | 22/22 |
| Lato | Sans serif | 22/22 | 22/22 |
| Roboto | Sans serif | 22/22 | 22/22 |
| Open Sans | Sans serif | 22/22 | 22/22 |
| Inter | Sans serif | 18/22 in pdf.js | 22/22 |
| IBM Plex Sans | Sans serif | 22/22 | 22/22 |
| Times New Roman | Serif | 22/22 | 22/22 |
| Georgia | Serif | 22/22 | 22/22 |
| Caladea (Cambria twin) | Serif | 22/22 | 22/22 |
| EB Garamond | Serif | 22/22 | 22/22 |
| Palatino | Serif | 22/22 | 22/22 |
| Source Serif 4 | Serif | 22/22 | 22/22 |
| Brush Script MT | Script | 22/22 | 22/22 |
| Garamond, not installed | Serif | not tested | 14/22 in pdf.js |

## Ligatures came back as plain letters

A ligature joins letters like f and i into one shape. Ten of the fonts drew them, the same ten in both PDFs: Helvetica, Carlito, Lato, Roboto, Open Sans, IBM Plex Sans, EB Garamond, Palatino, Source Serif 4 and Brush Script MT.

In all of them, every one of the 15 words with fi, fl or ff came back as plain letters in all three readers. The ligature is not the risk. A wrong text map behind it is, and that came from a font the computer didn't have.

## The one miss: Inter's punctuation

Inter adjusts its punctuation to the letters around it, a feature its site calls contextual alternates. Next to capitals and numbers it draws slightly different brackets, hyphens and dashes. In Chrome's PDF those alternate shapes were mapped to private-use codes, which stand for no character at all.

pdf.js returned those codes in place of the brackets, hyphens and en dash, so 18 of 22 lines came back exactly. pdftotext and MuPDF read the same file exactly, and LibreOffice's PDF of Inter was clean in all three.

Turning the feature off in Chrome, with the CSS font-feature-settings:'calt' 0, removed the private-use codes, and every line came back. If you build your resume as a web page in Inter, add that line, or export from Word or LibreOffice instead.

*Lines from Chrome's PDF in Inter: as typed, then as pdf.js returned them. Codes that stand for no character are written out as <U+…>.*

```text
sofia.martinez@example.com | (408) 555-0147 | San José, CA
pdf.js: sofia.martinez@example.com | <U+E081>408<U+E082> 555<U+E088>0147 | San José, CA
Jan 2021 – Present, San Francisco, CA
pdf.js: Jan 2021 <U+E089> Present, San Francisco, CA
Certified Financial Planning & Analysis Professional (FPAC)
pdf.js: Certified Financial Planning & Analysis Professional <U+E081>FPAC<U+E082>
```

## The real risk: a font the computer doesn't have

A Word file names its font. The program that opens it has to have that font, or it draws your words in something else. We asked for Garamond on a machine that did not have it, then exported to PDF. LibreOffice put Arial Bold and Linux Libertine G in its place.

The stand-in's text map was wrong. It listed letter pairs as runs like “fia” and “flo”, so pdf.js returned 14 of 22 lines exactly and MuPDF 15, with doubled letters and words split apart. pdftotext got all 22. The Word file itself still read back exactly: the damage happened in the conversion.

Harvard's career office tells students to “be sure that your formatting will translate properly if converted to a .pdf”. This is what that looks like. Our earlier dashes and ligatures test ran into the same stand-in, Linux Libertine G, when a different font was missing, and got the same doubled letters.

*Two bullets from the LibreOffice PDF, where Garamond was missing.*

```text
pdftotext: • Reconciled $4.2M in quarterly spend for the finance office
pdf.js: • Reconciled $4.2M in quarterly spend for the fianance officce
MuPDF: • Reconciled $4.2M in quarterly spend for the finance offic e
pdftotext: • Trained 9 staff on workflow software and fiscal-year planning
pdf.js: • Trained 9 staff on workfloow softwware and fiascal-year planning
MuPDF: • Trained 9 staff on workflo w softw are and fiscal-year planning
```

## Size changes the page, not the text

Size didn't change what came back. Arial at 6 pt read back exactly in all three readers. Small type is a problem for the person reading, not for the software.

It did change the page. We set the same 310 words at 11 pt in every font. Palatino used 86% of the page and Source Serif 4 103%, and Open Sans and Source Serif 4 ran onto a second page. Part of that is line spacing: each font sets its own default, and we left it there.

A point size also looks different from font to font. Times New Roman's lowercase letters are 14% shorter than Arial's, so 11 pt Times New Roman looks like about 9.5 pt Arial: it reads smaller and fits more. The table gives the size in each font that matches 11 pt Arial.

*How much of one US Letter page the same 310 words filled at 11 pt with 0.75 in margins, in Chrome. Over 100% ran onto a second page.*

|  | Value |
| --- | --- |
| Source Serif 4 | 103% |
| Open Sans | 103% |
| IBM Plex Sans | 99% |
| Verdana | 98% |
| EB Garamond | 96% |
| Carlito | 95% |
| Tahoma | 94% |
| Inter | 94% |
| Roboto | 94% |
| Lato | 90% |
| Trebuchet MS | 90% |
| Times New Roman | 90% |
| Caladea | 90% |
| Arial | 87% |
| Helvetica | 86% |
| Georgia | 86% |
| Palatino | 86% |
| Brush Script MT | 80% |

*Lowercase height as a share of the point size, measured from each font file, and the size that gives the same lowercase height as 11 pt Arial, rounded to the nearest half point.*

| Font | Lowercase height | Looks like 11 pt Arial at |
| --- | --- | --- |
| Inter | 55% | 10.5 pt |
| Verdana | 55% | 10.5 pt |
| Tahoma | 55% | 10.5 pt |
| Open Sans | 54% | 10.5 pt |
| Roboto | 53% | 11 pt |
| Helvetica | 52% | 11 pt |
| Trebuchet MS | 52% | 11 pt |
| Arial | 52% | 11 pt |
| IBM Plex Sans | 52% | 11 pt |
| Lato | 51% | 11.5 pt |
| Source Serif 4 | 49% | 11.5 pt |
| Georgia | 48% | 12 pt |
| Carlito (Calibri twin) | 48% | 12 pt |
| Palatino | 47% | 12 pt |
| Caladea (Cambria twin) | 47% | 12 pt |
| Times New Roman | 45% | 13 pt |
| EB Garamond | 41% | 14 pt |

## What to avoid

These are the things that changed what came back, or made the page harder to read.

- A font the computer making the PDF doesn't have. It cost 8 lines in pdf.js.
- Icon fonts for your contact details. The readers returned each Font Awesome icon as a code with no meaning, such as <U+F095>, except that pdf.js turned the envelope into ✉. When the gap after an icon was styling rather than a typed space, MuPDF stuck the icon to the detail. Plain words like “Email” cost nothing.
- Script and novelty fonts. Brush Script MT read back exactly, but its lowercase letters are 29% shorter than Arial's at the same size.
- Capitals with wide letter spacing in headings. In one of our own designs, pdftotext split “SUMMARY” into “S UM M A RY”.
- Text inside an image. A picture of words has no text layer, so a text extractor gets nothing, whatever the font.

*An email line with a Font Awesome envelope icon in front, read by MuPDF. Characters with no meaning are written out as <U+…>.*

```text
Typed space after the icon: <U+F0E0> sofia.martinez@example.com
Gap made with styling: <U+F0E0>sofia.martinez@example.com
```

## What ATSPrep's designs use

The Studio's designs use Inter, Source Serif 4, IBM Plex Sans, Lora and IBM Plex Mono. Our PDF export embeds each font with its text map, and none of its files drew ligatures or Inter's alternate punctuation. In all five designs we tested, every reader returned all 84 words, fi and fl words included.

One result is worth knowing. The default design, Clean, sets its headings in 7.6 pt capitals with extra letter spacing, and pdftotext split three of its four headings, as in “EXP E RI E N CE”. pdf.js and MuPDF read them whole, and every other design read whole in all three.

Our designs set body text at 8.9 pt to 10 pt, smaller in points than the 10 to 12 pt advice. Inter at 9.4 pt is about as tall as Arial at 9.9 pt. If your page has room, the Body size control goes up to 12 pt. Word downloads use Arial, Georgia or Calibri.

*ATSPrep's PDF export in five designs that between them use every Studio font. Every reader returned all 84 words; headings are counted for the worst reader.*

| Design | Fonts | Body size | Headings read whole |
| --- | --- | --- | --- |
| Clean | Inter | 9.4 pt | 1 of 4 in pdftotext |
| Editorial | Source Serif 4 | 10 pt | 4 of 4 |
| Compact | IBM Plex Sans | 8.9 pt | 4 of 4 |
| Minimal | Inter, IBM Plex Mono | 9.4 pt | 4 of 4 |
| Folio | Inter, Lora | 9.4 pt | 4 of 4 |

## Check your own file

Most of what broke in this test shows up in a one-minute check.

- Copy everything in your PDF and paste it into a plain text editor. Look for doubled letters, missing brackets or dashes, and words split apart.
- In Adobe Acrobat Reader, File > Properties > Fonts lists the fonts the PDF embedded. If your font isn't there, the file was made with a stand-in.
- If you used icons, check that each contact detail pastes as its own word.
- Run the file through the ATS resume checker to see the text it gives back, line by line.

## Common questions

### What is the best font for a resume?

A plain, common font at 10 to 12 pt, such as Arial, Calibri, Georgia, Helvetica or Times New Roman. In our test 17 of 18 fonts came back word for word from three PDF text extractors, so choose the one that reads best to a person, and use it throughout.

### What font size should a resume be?

Use 10 to 12 pt for body text, the range MIT's and Columbia's career offices give, with your name larger (Columbia allows 12 to 22 pt). Size didn't change what our readers extracted, even Arial at 6 pt came back exactly, but the same size looks smaller in some fonts: 11 pt Times New Roman looks like about 9.5 pt Arial.

### What are the most ATS-friendly fonts?

Any common font that is embedded in the PDF with its text map. Every font we tested came back exactly from both Chrome and LibreOffice PDFs in all three readers, except Inter in one reader. The real risks are a font the converting computer doesn't have and icon fonts, plus text set as an image, which has no text at all.

### Is Calibri or Arial better for a resume?

Neither reads better to software. Arial came back exactly, and so did Carlito, a free font built to Calibri's letter widths. Carlito's lowercase is smaller than Arial's: 11 pt Carlito looks like about 10 pt Arial, so it fits more on the page.

### Is Times New Roman OK for a resume?

Yes. It read back exactly from both PDFs in all three readers. It runs small: its lowercase letters are 14% shorter than Arial's at the same size, so 11 or 12 pt suits it better than 10.

### Should I use Aptos, Word's new default font?

Microsoft made Aptos the default in Word, Outlook, PowerPoint and Excel in 2023, replacing Calibri. We did not test it because it was not on our test machine. If you use it, send a PDF made on your own computer, so the font travels with the file.

### Can I use Google Fonts like Lato, Roboto or Open Sans on a resume?

Yes, in a PDF. Lato, Roboto, Open Sans, IBM Plex Sans, EB Garamond and Source Serif 4 all came back word for word. A Word file in a font the employer doesn't have gets redrawn in another one. Open Sans and Source Serif 4 also ran onto a second page at 11 pt in our page test.

### Do ligatures like fi and fl break resume text?

Not in the font you chose. Ten of our fonts drew ligatures, and every fi and fl word came back as plain letters. They broke only in a stand-in font LibreOffice used when the requested one was missing.

## Check your own file. Free, in your browser.

- [ATS resume checker](https://atsprep.com/tools/ats-resume-checker): Upload your PDF or DOCX and see the text a reader gets back from it, line by line, so a missing font or a stray icon shows up before you apply.

## Sources and further reading

1. [Resume checklist and worksheet](https://capd.mit.edu/resources/resume-checklist/), MIT Career Advising & Professional Development
2. [Resume guidelines](https://www.eee.columbia.edu/earth/career-services/student-career-resources/resume-guidelines), Columbia University, Earth and Environmental Engineering
3. [Harvard College guide to creating a strong resume](https://careerservices.fas.harvard.edu/resources/create-a-strong-resume/), Harvard FAS Mignone Center for Career Success
4. [A change of typeface: Microsoft's new default font has arrived](https://microsoft.design/articles/a-change-of-typeface-microsoft-s-new-default-font-has-arrived/), Microsoft Design
5. [Fonts (Carlito and Caladea)](https://wiki.documentfoundation.org/Fonts), The Document Foundation wiki
6. [Inter font family](https://rsms.me/inter/), Rasmus Andersson
7. [Font Awesome](https://fontawesome.com/), Fonticons
8. [Google Fonts](https://fonts.google.com/), Google
9. [PDF 32000-1:2008, section 9.10: Extraction of text content](https://opensource.adobe.com/dc-acrobat-sdk-docs/pdfstandards/PDF32000_2008.pdf), Adobe / ISO
10. [PDF.js](https://mozilla.github.io/pdf.js/), Mozilla
11. [Poppler (pdftotext)](https://poppler.freedesktop.org/), freedesktop.org
12. [MuPDF](https://mupdf.com/), Artifex
13. [LibreOffice](https://www.libreoffice.org/), The Document Foundation

## Related

- [Dashes, ligatures and smart quotes: why resume text comes out garbled](https://atsprep.com/blog/resume-dashes-ligatures-smart-quotes-ats.md)
- [Letter-spacing shreds resume headings](https://atsprep.com/blog/letter-spacing-resume-headings.md)
- [We generated 108 resume PDFs to find what breaks text extraction](https://atsprep.com/blog/resume-pdf-extraction-study.md)
- [How PDF text extraction actually works](https://atsprep.com/blog/how-pdf-text-extraction-works.md)
- [PDF vs DOCX resume: which one to send](https://atsprep.com/blog/pdf-vs-docx-for-ats.md)

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