Sometimes in LaTeX you may want to start content a little lower on the page. This is common for title pages, dedication pages, or custom layouts.

However, normal vertical spacing commands do not always work at the top of a page.

In this guide you will learn different ways of adding vertical space at the start of a page in LaTeX using simple and reliable methods.

Using vspace* command

At the very beginning of a page, the command \vspace may not produce any visible vertical space. This happens because LaTeX often removes spacing at the top of a page to keep the layout clean and avoid unnecessary blank areas.

For this reason, the most reliable method for adding vertical gap at the start of a page in LaTeX is the \vspace* command.

\vspace*{length}
\documentclass{article}
\usepackage{lipsum}
\begin{document}

\vspace*{4cm}

\section*{Introduction to Physics}
   \lipsum[5][1-6]

\end{document}

For most situations, this is the recommended method.

Using null with vspace

Another technique is to place an invisible element before the vertical space. The \null command creates an empty object that prevents LaTeX from removing the space.

\null
\vspace{length}
\documentclass{article}
\usepackage{lipsum}
\begin{document}

\null

\vspace{6cm}
\section*{Science Document}
   \lipsum[5][1-8]

\end{document}

The \null command ensures that \vspace is no longer ignored.

Using vfill command

The \vfill command creates flexible vertical gap. Instead of inserting a fixed size, it stretches automatically depending on the page layout.

\documentclass{article}

\begin{document}
\null
\vfill

This text moves toward the center of the page.

\vfill

\end{document}

This method is commonly used when designing title pages or vertically centered layouts.

Using stretch command

LaTeX also allows dynamic spacing using the \stretch function inside \vspace*. This creates flexible spacing that adjusts automatically.

\vspace*{\stretch{m}}
content
\vspace*{\stretch{n}}
m and n
These values define how the remaining page space is distributed.

If m > n, more space appears above and the content moves downward.

If m = n, the space is equal, so the content becomes vertically centered.

If m < n, more space appears below and the content shifts upward.

\documentclass{article}

\begin{document}

\vspace*{\stretch{1}}

This example places the text roughly in the vertical center.

\vspace*{\stretch{1}}

\end{document}

This technique is useful for balanced page layouts.

Conclusion

Adding vertical gap at the start of a page in LaTeX can sometimes be confusing because LaTeX may ignore spacing commands at the top. The most reliable method is using \vspace* which forces the space to appear.

Other helpful techniques include \null, \vfill, and flexible spacing with \stretch. These commands allow you to control page layout more precisely.

Share tutorial

Leave a Comment

Your email address will not be published. Required fields are marked *