The short version: you write your resume in plain text using LaTeX commands, drop it into a free template like Awesome-CV or ModernCV, compile it into a PDF with Overleaf or a local installer, and you get a clean, consistent document that looks like it was designed rather than knocked together in Word. It takes about 45 minutes the first time and closer to 10 minutes for every version after that. It also has a real, well-documented downside that most guides skip over, and I’ll get to it.
What a LaTeX resume is
LaTeX (pronounced lay-tech, not “latex” like the material) is a typesetting system built for academics and scientists who needed their equations to line up and their citations to number themselves correctly. It’s not a design tool like Canva. You don’t drag boxes around. You write plain text with commands in it, like \section{Experience} or \textbf{Marketing Manager}, and a compiler turns that text into a formatted PDF.
The appeal for a resume is simple: consistency. Every heading is the same size, every date column lines up, every bullet has identical spacing. Word will fight you on this. LaTeX won’t, because you’re not moving pixels, you’re describing structure and letting the software handle the layout.
The exact steps, start to finish
Here’s how I’d do it if I were sitting down with someone today.
- Step 1: pick your editor. Overleaf is the easiest route because it runs in your browser and compiles automatically, so you never install anything. The free tier limits you to a handful of projects and one collaborator, which is plenty for a resume. If you’d rather work offline, install TeX Live (Windows and Linux) or MacTeX (Mac), then use an editor like TeXstudio or VS Code with the LaTeX Workshop extension.
- Step 2: choose a template. Don’t build from scratch. Search for one of the well-tested ones I list below, download or open it, and treat the existing file as your starting point.
- Step 3: open the.tex file. You’ll see a block at the top called the preamble, which loads packages and sets fonts and margins. Leave that alone unless you know what you’re doing. Below it, between
\begin{document}and\end{document}, is your actual content. - Step 4: replace the placeholder text. Swap in your name, contact details, and each job entry using whatever command structure the template uses, for example moderncv’s
\cventry{2022--2026}{Marketing Manager}{Company Name}{City}{}{Grew organic leads by 40 percent...}. - Step 5: compile. In Overleaf, click the green Recompile button and watch the PDF preview update on the right. Locally, run
pdflatex resume.texfrom the command line. If it throws an error, read the first line of the error log, not the last, because LaTeX errors cascade and the real problem is usually near the top. - Step 6: check for overflow. Look out for “Overfull hbox” warnings, which mean a line of text is too wide for its box, usually because of a long company name or a URL. Fix it by shortening the text or adding a line break.
- Step 7: export and test. Download the PDF and open it in a plain text viewer or paste its contents into a blank document. If words come out mangled, you have a problem before you’ve sent a single application.
That last step is where I want to slow down, because it’s the part almost nobody writing about LaTeX resumes mentions, and it’s the part that costs people interviews.
The problem nobody warns you about
LaTeX resumes look sharp. That’s not in question. The issue is what happens after you upload that beautiful PDF to a job board or an applicant tracking system.
Many LaTeX fonts use ligatures, meaning the letters “f” and “i” get merged into a single glyph, same with “f” and “l”. Humans reading the PDF never notice. But some older ATS parsers and some resume-scanning tools extract text by reading character codes, and if the ligature glyph doesn’t map cleanly to “fi” or “fl” in the underlying font encoding, the extracted text comes out broken. I’ve tested this myself with three separate LaTeX-generated PDFs run through different online text extractors, and in two out of three cases, words like “workflow,” “financial,” and “efficient” came out with missing or garbled letters where the ligature had been. A human reads “workflow” fine. A keyword scanner looking for “workflow” as a skill match sometimes reads gibberish and moves on.
This is fixable, and I’ll tell you how in a minute, but almost every article on this topic tells you LaTeX resumes are “ATS-friendly” without ever checking. They’re not automatically friendly. They can be made friendly. Those are different claims.
The fix is to add \usepackage[T1]{fontenc} to your preamble if it’s not already there, which forces proper character encoding, and to avoid templates that use custom icon fonts (Font Awesome symbols for phone and email icons are common in modern templates) without a text fallback, because some parsers choke on those glyphs entirely and drop the line. After making that change, I re-ran the same test and all three extractions came out clean.
A real example
My nephew, 26, a backend developer, spent three months applying with a Word resume built from a downloaded template that had a two-column layout with a shaded sidebar. Forty applications, three callbacks. We sat down one Saturday and rebuilt it in Overleaf using the Awesome-CV template, single column, no sidebar, no icons, added the fontenc fix, and kept it to one page even though he had four years of experience across two jobs. Same forty companies is too neat a comparison to draw a hard conclusion from, but over the next round of forty applications with the new document, he got eleven callbacks. The content didn’t change. The bullet points were the same. What changed was that the document parsed cleanly and read as more senior, because the layout looked like something a technical person would produce, which for a developer role is a quiet signal in itself.
That’s the honest reason LaTeX works well for some roles and does nothing for others: it’s partly the clean parsing, and partly the fact that in engineering, data, and academic hiring, a LaTeX-formatted document is a small, unspoken flex. A recruiter hiring for a marketing role won’t register it at all. A hiring manager on an engineering team sometimes will.
Templates worth using
Don’t start from a blank file. Start from one of these, all free, all widely used and tested by thousands of job seekers already:
- Awesome-CV. Clean, single or two-column, popular with software engineers and product managers, easy to strip icons out of if you want the ATS-safe version.
- ModernCV. Built specifically as a CV/resume class rather than a general document, so the commands for job entries and education are already sensible, good for academic and research CVs with publication lists.
- Deedy-Resume. Two-column, dense, was designed to fit a lot of information on one page. Good for technical roles with long skills lists, less good if you want breathing room.
- Alta CV. More colour and visual structure, better for design, marketing, or creative roles where a slightly more designed look works in your favour.
- RenderCV. Newer, generates LaTeX from a simple YAML file, so you write your content in plain structured text and it builds the LaTeX and PDF for you, useful if the command syntax feels like a wall.
Open two or three of these side by side before picking one. The template you choose should match the norm in your field, not your personal taste. An overly designed resume for a finance role reads as trying too hard. A plain one for a UX design role reads as not caring about craft.
Mistakes I see people make
- Fighting the template instead of the content. People spend two hours adjusting margins by half a point and ten minutes on the actual bullet points. The formatting is the easy part. Get your achievements written first, in plain text, then drop them in.
- Going over one page for the wrong reasons. Under ten years of experience, one page. LaTeX makes it tempting to add a second page just because there’s room. Resist it unless the content earns it.
- Keeping decorative icons that break parsing. Phone and email icons look nice. If your target companies use older applicant tracking software, which a lot of mid-size and public sector employers still do, strip them and use plain text labels instead.
- Not testing the compiled PDF for text extraction. Covered above. Do this before you send anything, not after three weeks of silence.
- Using a template built for a country’s norms that aren’t yours. A lot of popular templates originate from US conventions, no photo, no date of birth, no marital status. If you’re applying in Israel or parts of continental Europe where a photo is still common, check what your template assumes before you send it out.
When LaTeX is the wrong tool
I’ll say the uncomfortable bit plainly: if you’re not remotely technical, in a hurry, and applying for a role where nobody will care how the document was produced, spending an evening learning LaTeX syntax is a bad use of your time. Google Docs or Canva will get you 90 percent of the visual polish with none of the compiler errors. LaTeX earns its keep for engineering, data science, academic, and research roles, where a badly kerned Word document does read as sloppy to the people evaluating it, and where the community expects it. For most other roles, a well-structured Word or Google Docs resume, checked carefully for ATS compatibility, will do the same job with far less friction.
If you’re rebuilding your whole job search strategy rather than just the document, and you want help thinking through where AI tools save you time versus where they just add noise, that’s a conversation I have with clients often through my AI implementation coaching work, and it applies well beyond resumes.
A quick sanity check before you send it
- Compile without errors, no overfull warnings on visible lines.
- Copy the text out of the PDF and read it back. If it’s garbled, fix the font encoding.
- One page for most experience levels, two only if you’re senior or academic.
- No icons or symbols that don’t have a text fallback.
- File name is your actual name, not “resume-final-v3.pdf”.
LaTeX is a small technical detour with a real payoff for the right roles. It’s not magic, and it’s not automatically better than a well-made Word document, whatever the enthusiastic threads on developer forums tell you. Build it, test the output like a machine will read it, because increasingly one will, and it does what any good resume should do quietly in the background: get out of the way of the content.
Frequently asked questions
Do I need to know how to code to build a LaTeX resume?
No coding is required, but you do need to be comfortable editing structured text and reading the occasional error message. If that sounds unappealing, RenderCV lets you write your content in a simple YAML file and it generates the LaTeX for you.
Will a LaTeX resume pass through an applicant tracking system?
It can, but not automatically. Add \usepackage[T1]{fontenc} to your preamble to fix ligature encoding, avoid icon fonts without text fallbacks, and always test the compiled PDF by copying the text out and checking it reads cleanly before you apply anywhere.
What’s the best free LaTeX resume template right now?
Awesome-CV and ModernCV are the most widely used and tested, Awesome-CV for tech and product roles, ModernCV for academic or research CVs with publication lists. Alta CV works better if you’re in a design or creative field.
Is Overleaf free to use for building a resume?
Yes, Overleaf’s free tier includes unlimited projects with basic compiling and one collaborator per project, which is more than enough to build and edit a resume without paying anything.