# How can I get bold math symbols?

To make Latin-letter variables bold I can use e.g. \mathbf{a}, but while putting Greek letters or symbols such as \nabla inside \mathbf doesn't cause any errors or warnings, it also doesn't do anything else.

What is the best way to make bold math symbols, in particular Greek letters and \nabla?

• warning: if the default computer modern fonts are used, the weight of bold lowercase greek will not appear as bold as that of bold lowercase roman, and it isn't. default bold math (\mathbf} with computer modern fonts uses the font cmbx* which is an extended font. \boldsymbol or bm use the only cm font that is usually available in bold, cmmib10, which is not an extended font. thus the bold greek letters are indeed not as "bold" as the roman. Aug 26, 2012 at 21:45
\end{document}


• Thanks for the minimal example that works, but in a complicated thesis template, I only get the 2nd type irrespective of the command used. How to identify the conflicting pkg that causes this?
– Elod
Jul 12 at 14:11
• You need to copy all your code to a new .tex file, then start recursively deleting all the unnecessary text (starting with the rest of the body of your thesis). When you have only one paragraph of writing, start removing the packages, while still compiling the file to check the output. There may be one package that swings it. Feel free to share code at pastebin.com , excluding intellectual property. Jul 19 at 7:04

My solution (the one that I use) is the \mathversion{bold} and \mathversion{normal} commands.

This piece of code is not a MWE —however, it shows how to use them:

\mathversion{bold}
\section{Behavior of $f$ as a function of $\lambda$}\label{sec:1}
\mathversion{normal}

And now, imagine that \mathversion{bold}\textbf{we want to put some
text in bold, and that this text contains some inline equation such as
$\sum_{j=0}^{t-1}{{p_\mathrm{y}(\lambda=2)}^j}$.}\mathversion{normal}


Hope it helps.

• Very good option if you want to enable bold math globally. Jan 31, 2018 at 19:20

You can use physics package and write any math symbol in boldface by using command \vb{} inside mathmode, e.g. $\vb{\Psi}$ will yield Ψ.

• It doesn't work for lowercase Greek letters.
– tvk
May 9, 2019 at 17:09

The unicode-math package supports several commands for bold symbols beyond what have been mentioned in previous answers, including \mathbf, \symbf, \symbfup, \symbfit and \boldsymbol. It requires LuaLaTeX or XeLaTeX.

If you load a math font that has a bold version, unicode-math will load it as version=bold. There are now several, including XITS Math, Libertinus Math, and KP Math. It is also possible to load any math font with \setmathfont[version=bold].

Here’s a brief MWE that uses \boldmath, \symbf and \boldsymbol. Note that \mathbf will use the bold weight of the main text font, \symbf will use the mathematical bold letters and numerals defined in the Unicode Mathematical Alphenumeric Characters block, and \boldmath, \mathversion{bold} and \boldsymbol will use the bold math font (if there is one).

\documentclass[varwidth = 10cm, preview]{standalone}
\usepackage{mathtools}
\usepackage[math-style=ISO]{unicode-math}
\usepackage{microtype}

\defaultfontfeatures{ Scale = MatchUppercase }
\setmainfont{Libertinus Serif}[Scale = 1.0, Ligatures = Common]
\setsansfont{Libertinus Sans}
\setmonofont{Libertinus Mono}
\setmathfont{Libertinus Math}

\begin{document}
\section*{\boldmath Reasoning from $$\symbf{A} \vee \symbf{B}$$}

If we have $$\symbf{A} \vee \symbf{B}$$ and $$\symbf{A}$$, disjunctive syllogism
(classically known as \textbf{\textit{modus ponendo tollens}}, and also known
as \textbf{disjunction elimination} or {\boldmath $$\vee E$$}) is the rule
that lets us conclude $$\boldsymbol\therefore \symbf{B}$$.

\end{document}


There are several ways to tweak this behavior. By default, \mathbf renders bold capital letters upright and bold lowercase letters italic, but [math-style=ISO] makes italic the default for everything, including regular-weight uppercase Greek. You can change only the behavior of bold uppercase letters with bold-style=ISO] or [bold-style=upright]. You can also specify \symbfup for bold upright or \symbfit for bold italic.

• Requires LuaLaTeX or XeLateX. Nov 1, 2020 at 9:49
• @BenjaminMcKay Looking back, I saw some things I said had gotten out of date, so I revised that paragraph. It now mentions LuaTeX and XeTeX, in case someone doesn’t already know. Nov 1, 2020 at 16:30
• Huh, I left out a \neg in my example. Nov 1, 2020 at 16:33

Like in some other answers, I use \mathversion{bold}, but I've never had to use \mathversion{normal} to reset the font. In particular, I use the following commands:

\newcommand{\allbf}[1]{\textbf{\mathversion{bold}#1}}


to get bold characters for both text and math.

And with the article class, to get bold math in addition to the usual bold text in any section title (at any section level):

\let\B@startsection\@startsection
\renewcommand{\@startsection}[6]{\B@startsection
{#1}{#2}{#3}{#4}{#5}{\mathversion{bold}#6}}