Tx · LaTeX & TikZ

How to Modify a LaTeX Resume Template

Published By the 9to5Science editorial team

At a glance

  1. 1. Find the main file

    Open the template’s main .tex file and identify its document class, packages, and any custom commands.

  2. 2. Change content first

    Replace sample text while keeping the template’s existing commands and structure intact.

  3. 3. Adjust the design

    Make small changes to spacing, fonts, colors, or margins, preferably in the preamble.

  4. 4. Compile and check

    Compile with the template’s required engine, then inspect the PDF for layout and link problems.

LaTeX resume templates can look very different: some are ordinary documents with a few packages, while others define their own commands or use a custom class. The safest approach is to make small changes in the template’s main .tex file, compile often, and preserve any commands the template relies on.

No particular template or requested change is specified here, so this article gives a general workflow and a complete, minimal resume example you can adapt. If you already have a template, you usually should keep its class and structure and replace the example information first.

Find the file and understand the structure

Open the project’s main .tex file. In an online editor, it may be named main.tex or selected as the project’s root document. Locally, it is often the file containing \documentclass and \begin{document}. Edit this source file, not the exported PDF.

The document has two main parts:

  • The preamble, before \begin{document}, sets the document class, loads packages, and defines formatting commands.
  • The document body, between \begin{document} and \end{document}, contains the resume’s text and section structure.

Templates may define special commands such as \resumeSubheading or \resumeItem. Find their definitions before changing how you use them. A command may expect a fixed number of arguments; removing a brace or argument can cause errors far from the line you edited. If the template uses a custom .cls class or several .sty files, keep those files with the project.

Replace content before changing design

Start by replacing placeholder names, contact details, dates, and bullet points while leaving the formatting commands alone. Compile the document. If that works, make one design change at a time—for example, changing a margin or reducing space between list items. This makes it easier to identify which edit caused a problem.

Here is a complete basic example using the standard article class. It uses the geometry package for margins, enumitem for list spacing, and hyperref for clickable email and web links. It can be compiled with pdfLaTeX.

\documentclass[10pt]{article}

\usepackage[margin=0.75in]{geometry}
\usepackage[T1]{fontenc}
\usepackage{enumitem}
\usepackage[hidelinks]{hyperref}

\setlength{\parindent}{0pt}
\setlist[itemize]{leftmargin=*, nosep}

\begin{document}

{\LARGE\textbf{Jordan Lee}}\\
City, Country \textbar\ \href{mailto:jordan@example.com}{jordan@example.com}
\textbar\ \href{https://example.com}{example.com}

\section*{Experience}
\textbf{Software Engineer} \hfill 2022--Present\\
Example Company, City
\begin{itemize}
  \item Built and maintained data-processing tools used by a research team.
  \item Improved a reporting workflow by automating recurring analyses.
\end{itemize}

\section*{Education}
\textbf{BSc in Computer Science} \hfill 2018--2022\\
Example University

\section*{Skills}
Python, SQL, data analysis, technical writing

\end{document}

The \\ ends a line in the contact block and after the role details. \hfill pushes the dates to the right on the same line. \section* creates an unnumbered heading, and the itemize environment creates bullet points. Replace the sample details with your own. If you add a special character such as &, write \& in ordinary text; otherwise LaTeX treats it as a table-alignment character.

Adjust layout in small steps

Common changes belong in the preamble. For example, change margin=0.75in to adjust the page margins. The nosep option in \setlist removes extra vertical space around list items; remove it or change the list settings if the bullets look too compressed. Avoid shrinking text or margins so far that the document becomes difficult to read.

If a downloaded template already has commands for headings, dates, or entries, use those rather than copying the example’s structure wholesale. To change the appearance of a custom heading, look for the command definition in the template files. Make a copy before editing complex definitions, and change one part at a time.

Compile with the right engine

Use the compiler the template expects. A basic template using standard packages often works with pdfLaTeX. Templates that load system fonts with fontspec, for example, require XeLaTeX or LuaLaTeX instead; pdfLaTeX will not understand fontspec commands. The template’s instructions or preamble usually indicate the intended engine.

After compilation, inspect the PDF rather than relying only on a successful compile message. Check that it fits the intended page count, dates and contact information align, links work, and no text is clipped or pushed onto an unwanted page. If the template has a sample PDF, compare the output before and after your changes.

Common mistakes

  • Deleting a command definition: A template may use a custom command throughout the document. Removing its definition produces an “undefined control sequence” error.
  • Mismatching braces: Every { needs a corresponding }. When a change causes a confusing error, check the edited line and the lines just before it.
  • Using & unescaped: In regular text, write \&. A bare & is reserved for alignment in tables and similar environments.
  • Mixing compiler instructions: Packages and font commands may require a specific engine. Use the engine intended by the template rather than switching at random.
  • Changing several things at once: If the layout breaks, multiple simultaneous edits make the cause harder to find. Keep a working copy and test changes incrementally.

If you encounter an error, read the first actual error in the compiler log and check the source around the reported line. Later errors may be consequences of the first one. For a template-specific problem, the relevant details are the document class, compiler, exact error message, and the small section of source around the error.

References

  1. The LaTeX2e unofficial reference manual
  2. CTAN: geometry package
  3. CTAN: hyperref package

Spotted an error? Send a correction. Read how we write and check articles in our editorial policy.