Proper page layout is crucial for professional documents, especially resumes where every millimeter of space matters. The geometry package is LaTeX's most powerful tool for controlling margins, paper size, orientation, and overall page dimensions, giving you precise control over your document's appearance.

This comprehensive guide covers everything from basic margin settings to advanced page layout techniques, with special focus on creating perfectly formatted resumes that maximize content space while maintaining professional appearance and readability.

geometry Package Basics

The geometry package provides a flexible interface for customizing page dimensions, replacing the need for complex manual calculations with intuitive, human-readable options.

Loading geometry

% Basic usage
\usepackage{geometry}

% With options (recommended)
\usepackage[margin=1in]{geometry}
\usepackage[top=1in, bottom=1in, left=1.25in, right=1.25in]{geometry}

Setting Margins After Loading

\usepackage{geometry}

% Later in preamble or document
\geometry{margin=1in}
\geometry{top=1in, bottom=1in, left=1in, right=1in}

Both methods work identically—choose based on preference and document organization.

Default LaTeX Margins

Without geometry package, LaTeX uses generous default margins optimized for readability:

  • Letter paper: ~1.5in top, ~1in bottom, ~1.75in left/right
  • A4 paper: Similar proportions adjusted for A4 dimensions

These defaults are excellent for books and academic papers but too spacious for resumes and modern business documents.

Setting Margins

The geometry package offers multiple ways to specify margins, from uniform settings to individual control of each side.

Uniform Margins

% All margins the same
\usepackage[margin=1in]{geometry}
\usepackage[margin=2cm]{geometry}
\usepackage[margin=0.75in]{geometry}  % Common for resumes

Individual Margin Control

% Specify each margin separately
\usepackage[
  top=1in,
  bottom=1in,
  left=1.25in,
  right=1.25in
]{geometry}

Horizontal and Vertical Shortcuts

% Set left and right together
\geometry{hmargin=1in}        % left=1in, right=1in
\geometry{hmargin={1in,1.5in}} % left=1in, right=1.5in

% Set top and bottom together
\geometry{vmargin=1in}        % top=1in, bottom=1in
\geometry{vmargin={1.5in,1in}} % top=1.5in, bottom=1in

% Combined
\geometry{hmargin=1in, vmargin=1.5in}

Resume Margin Recommendations

% Standard resume (balanced)
\usepackage[margin=0.75in]{geometry}

% Tight resume (more content)
\usepackage[margin=0.5in]{geometry}

% Professional conservative
\usepackage[margin=1in]{geometry}

% Asymmetric (more left for hole punch)
\usepackage[left=1in, right=0.75in, top=0.75in, bottom=0.75in]{geometry}

Margin guidelines by document type:

  • 0.5in: Very tight, maximum content, acceptable for resumes
  • 0.75in: Balanced, popular for resumes, modern look
  • 1in: Conservative, traditional, very readable
  • 1.25in+: Academic, books, formal publications

Paper Size & Format

The geometry package supports all standard paper sizes and custom dimensions.

Standard Paper Sizes

% US Letter (8.5 × 11 inches) - default in most US LaTeX distributions
\usepackage[letterpaper]{geometry}

% A4 (210 × 297 mm) - default in most international distributions
\usepackage[a4paper]{geometry}

% Legal (8.5 × 14 inches)
\usepackage[legalpaper]{geometry}

% Executive (7.25 × 10.5 inches)
\usepackage[executivepaper]{geometry}

European Paper Sizes

% A-series
\geometry{a4paper}   % 210 × 297 mm
\geometry{a5paper}   % 148 × 210 mm
\geometry{a3paper}   % 297 × 420 mm

% B-series
\geometry{b4paper}   % 250 × 353 mm
\geometry{b5paper}   % 176 × 250 mm

Custom Paper Size

% Specify exact dimensions
\geometry{paperwidth=8.5in, paperheight=11in}
\geometry{paperwidth=210mm, paperheight=297mm}

% Custom size with margins
\geometry{
  paperwidth=7in,
  paperheight=10in,
  margin=0.5in
}

Resume Paper Size Best Practices

% US resumes: Always use letter
\documentclass[letterpaper]{article}
\usepackage[letterpaper, margin=0.75in]{geometry}

% European resumes: Use A4
\documentclass[a4paper]{article}
\usepackage[a4paper, margin=2cm]{geometry}

% International applicants: Check job posting
% When in doubt, match the country you're applying to

Page Orientation

Change between portrait and landscape orientation for entire documents or specific pages.

Document-Wide Orientation

% Portrait (default)
\usepackage[portrait]{geometry}

% Landscape
\usepackage[landscape]{geometry}
\usepackage[landscape, margin=1in]{geometry}

Single Page Landscape

\usepackage{geometry}
\usepackage{pdflscape}

Normal portrait content here.

\begin{landscape}
  This page is landscape orientation.
  
  \begin{tabular}{cccccccc}
    % Wide table that needs landscape
  \end{tabular}
\end{landscape}

Back to portrait.

Landscape Resume Sections

% Main resume in portrait
\usepackage[margin=0.75in]{geometry}

% Project timeline or wide skills table in landscape
\newpage
\newgeometry{margin=0.5in, landscape}

% Wide content here

\restoregeometry  % Return to original settings

Note: Landscape orientation is uncommon for resumes. Use only for appendices or portfolio pages where wide content (timelines, charts) benefits from horizontal layout.

Understanding Page Dimensions

LaTeX divides each page into multiple regions. Understanding these helps create precise layouts.

Page Layout Terminology

  • Paper: Total physical page size
  • Body: Main text area (excludes margins, headers, footers)
  • Margin: White space around body
  • Header: Area above body for running heads
  • Footer: Area below body for page numbers
  • Head/Foot sep: Space between header/footer and body

Text Width and Height

% Set text area dimensions directly
\geometry{
  textwidth=6.5in,
  textheight=9in
}

% Or calculate from margins
\geometry{
  paperwidth=8.5in,
  left=1in,
  right=1in
  % textwidth automatically becomes 6.5in
}

Viewing Current Dimensions

\usepackage{layouts}

% In document
\currentpage
\pagediagram  % Visualize page layout

% Or print values
\printinunitsof{in}\prntlen{\textwidth}
\printinunitsof{in}\prntlen{\textheight}

Total Body Area

% Specify total body dimensions
\geometry{
  total={6.5in, 9in}  % width, height
}

% With margins
\geometry{
  total={7in, 9.5in},
  centering  % Center body on page
}

Headers & Footers

Control the space allocated for headers and footers, crucial for documents with page numbers or running heads.

Header and Footer Height

% Set header space
\geometry{
  headheight=15pt,   % Height of header
  headsep=10pt       % Space between header and body
}

% Set footer space
\geometry{
  footskip=30pt      % Space from bottom of body to footer baseline
}

% Combined
\geometry{
  headheight=15pt,
  headsep=10pt,
  footskip=30pt
}

No Headers or Footers

% Maximize text area (common for resumes)
\geometry{
  includeheadfoot=false
}

% Or explicitly
\pagestyle{empty}  % Removes page numbers
\geometry{margin=0.75in}

Resume Without Page Numbers

\documentclass{article}
\usepackage[margin=0.75in]{geometry}
\pagestyle{empty}  % No page numbers

\begin{document}

% Your resume content

\end{document}

Resume With Page Numbers (Multi-Page)

\documentclass{article}
\usepackage[margin=0.75in, footskip=30pt]{geometry}
\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}  % Clear default header/footer
\fancyfoot[C]{John Doe -- Page \thepage}
\renewcommand{\headrulewidth}{0pt}  % Remove header line

\begin{document}

% Resume content spanning multiple pages

\end{document}

Header Height Warning

If you see this warning:

Package Fancyhdr Warning: \headheight is too small

Solution:

\geometry{headheight=15pt}  % Or whatever height is recommended

Resume Page Layouts

Optimized page layout configurations for different resume styles and content density needs.

Standard One-Page Resume

\documentclass[11pt]{article}
\usepackage[
  letterpaper,
  margin=0.75in
]{geometry}
\pagestyle{empty}

% Maximize vertical space
\setlength{\parindent}{0pt}
\setlength{\parskip}{0pt}

Tight One-Page Resume (Maximum Content)

\documentclass[10pt]{article}
\usepackage[
  letterpaper,
  top=0.5in,
  bottom=0.5in,
  left=0.5in,
  right=0.5in
]{geometry}
\pagestyle{empty}

% Reduce spacing everywhere
\usepackage[compact]{titlesec}
\usepackage{enumitem}
\setlist{noitemsep, topsep=0pt}

Two-Column Resume Layout

\documentclass{article}
\usepackage[
  letterpaper,
  top=0.5in,
  bottom=0.5in,
  left=0.5in,
  right=0.5in
]{geometry}
\usepackage{multicol}
\usepackage{paracol}
\pagestyle{empty}

\begin{document}

% Name and contact centered
{\huge\bfseries John Doe}

% Two-column body
\begin{paracol}{2}
  
  % Left column (narrow - skills, education)
  \textbf{Skills} \\
  Python \\
  JavaScript \\
  ...
  
  \switchcolumn
  
  % Right column (wide - experience)
  \textbf{Experience} \\
  Senior Developer \\
  ...
  
\end{paracol}

\end{document}

Academic CV (Multi-Page)

\documentclass[11pt]{article}
\usepackage[
  letterpaper,
  top=1in,
  bottom=1in,
  left=1in,
  right=1in,
  footskip=30pt
]{geometry}
\usepackage{fancyhdr}

\pagestyle{fancy}
\fancyhf{}
\fancyfoot[C]{\thepage}
\renewcommand{\headrulewidth}{0pt}

% More generous spacing for readability
\setlength{\parskip}{6pt}

European A4 Resume

\documentclass[a4paper, 11pt]{article}
\usepackage[
  a4paper,
  top=2cm,
  bottom=2cm,
  left=2cm,
  right=2cm
]{geometry}
\pagestyle{empty}

Cover Letter Layout

\documentclass[11pt]{article}
\usepackage[
  letterpaper,
  top=1in,
  bottom=1in,
  left=1in,
  right=1in
]{geometry}

% More generous margins for letter format
% Traditional business correspondence spacing

Advanced Techniques

Changing Margins Mid-Document

\usepackage{geometry}

% Initial margins
\geometry{margin=1in}

\begin{document}

Content with 1-inch margins.

\newpage
\newgeometry{margin=0.5in}  % New margins from here

Content with 0.5-inch margins.

\restoregeometry  % Return to original margins

Back to 1-inch margins.

\end{document}

Binding Offset

% Add extra margin for binding
\geometry{
  left=1.5in,  % Extra space for binding
  right=1in,
  bindingoffset=0.5in
}

Centering Content on Page

% Center text body horizontally
\geometry{
  textwidth=6in,
  centering
}

% Or manually
\geometry{
  paperwidth=8.5in,
  textwidth=6in,
  hcentering  % Horizontal centering only
}

Show Page Layout (Debugging)

% Visualize margins and text area
\usepackage[showframe]{geometry}

% Shows frames around all page regions
% Remove showframe option for final document

Asymmetric Margins (Two-Sided Documents)

% Different margins for odd/even pages
\documentclass[twoside]{article}
\usepackage[
  inner=1.5in,   % Binding side
  outer=1in,     % Outside edge
  top=1in,
  bottom=1in
]{geometry}

Custom Page Size for Printing

% Add crop marks for trimming
\usepackage[
  paperwidth=9in,
  paperheight=11.5in,
  layout=letterpaper,
  layoutoffset={0.25in, 0.25in}
]{geometry}

% Creates letter-size content on larger paper with trim marks

Landscape Page in Portrait Document

\usepackage{pdflscape}
\usepackage{afterpage}

% Ensure landscape page doesn't break badly
\afterpage{
  \clearpage
  \begin{landscape}
    Wide table or figure
  \end{landscape}
  \clearpage
}

Troubleshooting

Content Overflows Page

Problem: Text or elements extend beyond page boundaries.

Solutions:

% 1. Reduce margins
\geometry{margin=0.5in}

% 2. Reduce font size
\documentclass[10pt]{article}  % instead of 11pt or 12pt

% 3. Reduce spacing
\usepackage[compact]{titlesec}
\setlength{\parskip}{0pt}

% 4. Use smaller text in specific sections
{\small
  Content that needs to be smaller
}

Margins Look Wrong in PDF

Problem: PDF viewer adds additional margins or crops content.

Solution: Check PDF viewer settings:

  • Adobe Reader: Print dialog → Page Sizing: "Actual size" (not "Fit")
  • Preview (Mac): Print dialog → Scale: 100%
  • Some viewers add margins automatically—disable "Fit to page"

Geometry Package Options Ignored

Problem: Margin settings don't take effect.

Solutions:

% 1. Load geometry AFTER other layout packages
\usepackage{geometry}  % Should be near end of preamble

% 2. Use \geometry{} command instead of package options
\usepackage{geometry}
\geometry{margin=1in}  % More reliable than \usepackage[margin=1in]{geometry}

% 3. Ensure no conflicting packages
% Remove or reconcile: fullpage, anysize, vmargin

Header Height Warning

Problem:

Package Fancyhdr Warning: \headheight is too small (12.0pt): 
Make it at least 14.49998pt.

Solution:

\geometry{headheight=15pt}  % Or the recommended value

Page Numbers Appear When Unwanted

Problem: Page numbers show on resume despite not wanting them.

Solution:

\pagestyle{empty}  % Add to preamble or after \begin{document}

% Or
\thispagestyle{empty}  % Just this page

Margins Different on First Page

Problem: First page has different margins than subsequent pages.

Solution: LaTeX's default titlepage style may be active:

\documentclass[notitlepage]{article}  % Disable special first page

% Or
\geometry{asymmetric=false}

Text Width Too Wide for Content

Problem: Long lines reduce readability.

Solution: Optimal line length is 60-70 characters:

% For readability, increase margins
\geometry{
  textwidth=6.5in  % Approximately 70-80 characters with 11pt font
}

% Or use larger margins
\geometry{margin=1.25in}

Frequently Asked Questions

How do I set margins in LaTeX?

Use the geometry package:

% Uniform margins
\usepackage[margin=1in]{geometry}

% Individual margins
\usepackage[top=1in, bottom=1in, left=1.25in, right=1.25in]{geometry}

% Or after loading
\usepackage{geometry}
\geometry{margin=0.75in}

Common resume margins: 0.5in (tight), 0.75in (balanced), 1in (conservative).

What are good resume margins?

Standard recommendation: 0.75 inches on all sides balances content space with readability.

  • 0.5in: Maximum content, acceptable but tight
  • 0.75in: Balanced, professional, most popular
  • 1in: Conservative, very readable, traditional
% Recommended resume margins
\usepackage[margin=0.75in]{geometry}

Avoid going below 0.5in—too cramped and may cause printing issues.

How do I change paper size in LaTeX?

Specify paper size in both document class and geometry package:

% US Letter
\documentclass[letterpaper]{article}
\usepackage[letterpaper, margin=1in]{geometry}

% A4
\documentclass[a4paper]{article}
\usepackage[a4paper, margin=2cm]{geometry}

% Custom size
\geometry{paperwidth=8.5in, paperheight=11in}

How do I fit more content on one page?

Reduce margins, font size, and spacing:

% Reduce margins
\usepackage[margin=0.5in]{geometry}

% Smaller font
\documentclass[10pt]{article}

% Reduce section spacing
\usepackage[compact]{titlesec}

% Reduce list spacing
\usepackage{enumitem}
\setlist{noitemsep, topsep=0pt}

% Remove paragraph spacing
\setlength{\parskip}{0pt}

Be cautious—too tight makes documents hard to read.

How do I remove page numbers from my resume?

Use \pagestyle{empty}:

\documentclass{article}
\usepackage[margin=0.75in]{geometry}

\pagestyle{empty}  % No page numbers

\begin{document}
% Your resume
\end{document}

For single page: \thispagestyle{empty}

Can I use different margins on different pages?

Yes, use \newgeometry and \restoregeometry:

\usepackage{geometry}
\geometry{margin=1in}  % Initial margins

\begin{document}

Page 1 content with 1-inch margins.

\newpage
\newgeometry{margin=0.5in}  % New margins

Page 2 content with 0.5-inch margins.

\restoregeometry  % Back to original

Page 3 back to 1-inch margins.

\end{document}

What's the difference between letterpaper and a4paper?

  • letterpaper: 8.5 × 11 inches (215.9 × 279.4 mm) — US/Canada standard
  • a4paper: 210 × 297 mm (8.27 × 11.69 inches) — International standard

Key differences:

  • A4 is slightly narrower and taller than Letter
  • Use Letter for US job applications
  • Use A4 for European/international applications
% US resume
\documentclass[letterpaper]{article}

% European resume
\documentclass[a4paper]{article}

How do I center content on the page?

Use the centering option:

% Center text body horizontally
\geometry{
  textwidth=6in,
  centering
}

% Center vertically and horizontally
\geometry{
  total={6in, 9in},
  centering
}

Or center specific content:

\begin{center}
  Centered text
\end{center}

How do I create landscape orientation in LaTeX?

For entire document:

\usepackage[landscape, margin=1in]{geometry}

For single page:

\usepackage{pdflscape}

\begin{landscape}
  This page is landscape
\end{landscape}

Landscape is rarely used for resumes—consider only for wide tables or timelines in appendices.

How do I see the page layout while editing?

Use the showframe option to visualize margins:

% Shows frames around all page regions
\usepackage[showframe, margin=0.75in]{geometry}

Remove showframe for final document. This helps debug margin and spacing issues.

Alternatively, use the layouts package:

\usepackage{layouts}

% In document
\pagediagram  % Shows page layout diagram

Conclusion

The geometry package is an essential tool for controlling page layout in LaTeX documents, offering intuitive commands for margins, paper size, orientation, and overall page dimensions. For resume writing, mastering geometry settings is crucial for creating professional, well-balanced documents that maximize content space while maintaining readability.

The most popular resume configuration—0.75-inch margins on letterpaper—strikes an excellent balance between content density and professional appearance. For content-heavy resumes, 0.5-inch margins provide additional space without appearing cramped, while 1-inch margins offer a conservative, traditional look preferred in formal industries.

Remember to match paper size to your target market (Letter for US, A4 for Europe), remove page numbers from one-page resumes with \pagestyle{empty}, and use showframe during development to visualize your layout choices. With geometry's powerful yet straightforward syntax, you have complete control over every aspect of your document's page layout.