This question already has an answer here:

Sometimes the symbol := is used to denote a definition. For example, X:=Y+Z means that X is defined to be Y+Z.

When using LaTeX, can I just use $:=$, or do I need to do something special?

marked as duplicate by Ian Thompson, Paul Gessler, Martin Thoma, Werner, user31729 Aug 1 '14 at 20:38

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.


Many do, but then the colon isn't correctly centered. Better to use the package mathtools and \coloneqq. See the mathtools documentation for more information.


Unfortunately, with $:=$, the colon is not centred on the math axis. A solution comes from the mathtools package, which defines \vcentcolon and \coloneqq commands; these lead to two different results, as regards the horizontal spacing between the colon and the equality sign:





Let  $ a:  = b $

Let  $ a \vcentcolon  = b $

Let  $ a \coloneqq  b $


enter image description here

The \coloneq(one q!) symbol exists in mathabx, Mnsymbol and Mdsymbol (at least). It's named \coloneqqin kpfonts and mdsymbol.


It is not necessary to do anything, LaTeX does it for you.

  • 2
    Yes, it does, but incorrectly; in most fonts, the colon is not vertically centred (it sits on the baseline, like a regular . does). This is of course wrong since the = is vertically centred and this assymetry is seriously ugly. – yo' Aug 1 '14 at 20:49

Not the answer you're looking for? Browse other questions tagged or ask your own question.