The siunitx package has a special macro for setting angles in degrees called like \ang{42}, which renders as 42°, i.e. sets no space between the number and the unit as recommended and in contrast to the normal \unit, which inserts a thin space. Unfortunately the \ang macro has no optional argument adding additional units (as in \ang{42}[\per\second]), which leads to the following question:

Having an angular velocity in degree (unit: degree per seconds; I do not want to use rad/s here), what is the recommended way to have a nice (correct) output and what is the recommended way with siunitx?

I have two suggestions:



resulting in and second


which looks like enter image description here. Both look unfamiliar, but the output of the latter might look a bit more familiar than the first one, altough the code of the former is nicer than that of the second one.

Does anyone know what is officially correct?

  • 1
    The degree is a "Non-SI unit accepted for use with the International System of Units" (The International System of Units, tab 6), so you're officially allowed to use it. There are no examples of the use of the degree symbol with other units in that brochure, but there are books (particularly in astronomy) that use it: No space between quantity and symbol: books.google.com/books?id=BAihdjtLZXcC&lpg=PA132, eq. 4.7; thin space between quantity and symbol: books.google.ca/books?id=UC_1_804BXgC&lpg=PA60, eq. 5.12. You choose
    – Jake
    Commented May 27, 2013 at 20:35
  • 1
    @Jake Thanks for the clarification and the links. Interestingly both versions are different than my two suggestions, as they are different between the degree symbol and the following unit. The first source (eq. 4.8) does not seem to have a space between ° and the following unit, whereas the second source uses a lower dot between both. Commented May 27, 2013 at 20:49
  • 2
    Looking at the SI brochure again, it states quite explicitly that "for the unit symbols for degree, minute, and second for plane angle, (...) no space is left between the numerical value and the unit symbol" (section 5.3.3), so I would say that your second suggestion is more correct. You can type that a little more elegantly using \SI[number-unit-product={}]{24}{\degree\per\s}.
    – Jake
    Commented May 27, 2013 at 21:03
  • @Jake Thanks again, this is very welcome. Can you collect your comments into an answer? I will not accept it immediately, but this is already a valuable answer. Commented May 27, 2013 at 21:05
  • 2
    Glad it helps already, but experience shows that Joseph Wright will probably come up with a definitive answer once he sees this.
    – Jake
    Commented May 27, 2013 at 21:08

3 Answers 3


One possibility to keep being flexible would be to redefine \ang with an xparse argument signature like the following {omo} to add the optional unit in the third argument. This macro then could easily be redefined.

Unfortunately this would either include a call to \SI and thus loosing the possibilities of anglular minutes and angular seconds of the original \ang macro or include a call to the old \ang macro. The latter is to my knowledge not possible without code duplication, as neither the \let nor the \LetLtxMacro commands can cope with macros defined by xparse (which is the case for \ang defined in siunitx).

As a workaround it is possible to use the following definition until there is a better solution:


Then it is possible to write




and add spacing as \, to the macro definition later, if that should be needed.


I contacted Joseph Wright (siunitx package author) and he proposes


according to the NIST standard:

There is a space between the numerical value and unit symbol, even
when the value is used in an adjectival sense, except in the case
of superscript units for plane angle.

So that's the way to go, which can be achieved by


First, load the siunits package:


Then this command:


in math mode, will give you:

  • Welcome to TeX.SX! This is no answer as the question asks about siunitx.
    – TeXnician
    Commented Nov 30, 2017 at 5:28
  • 3
    @TeXnician If the answer is: "Use siunits instead of siunitx" it is an answer. Whether or not this is a good answer is not another point (and could be declared by up and down votes). Commented Nov 30, 2017 at 7:55

I currently encountered the same problem of typesetting an angular velocity. I used the following style:


Another option should be to use


I don't know if that's the "official" way to go, though.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .