I'm using the TeX Live distribution and I've noticed that there are a lot of document class files (291 actually) for different things (books, math, thesis, presentations, etc).

What are your preferred ones and in which case would you use each of them?

  • 11
    I think this should be community wiki.
    – Caramdir
    Oct 17, 2010 at 16:09
  • 2
    Seems like this question should have been titled something like "What is a good document class for Math and Physics articles" as you were looking for something specific. The current title implies a much more open ended and subjective question.
    – Sharpie
    Oct 17, 2010 at 21:29
  • You were right. Title changed!
    – Tomas
    Oct 17, 2010 at 21:51
  • 1
    On the whole, I prefer such questions as "community wiki" and with no accepted answer. If you want it to stand "as is", make the question much more personal. At the moment, I could answer the question (I have a class that I prefer) but the presence of an accepted answer indicates that my contribution would not add anything. Oct 18, 2010 at 10:41
  • 1

8 Answers 8


Call me old fashioned, but my favorite classes are things like book, article and report. The "do-it-all" classes like Koma-script and memoir are great when you actually need all those features, but I'm more of a Unix-philosophy person myself: a piece of software should do one thing and do it well. A document class should only be a document class, A package for doing X should only be a package for doing X. That way, things are modular. I can load exactly as many packages, and use exactly as many resources, as I need: nothing more. And almost all packages are made and tested on the core document classes, so while you may need to worry about packages clashing with each other (--though not so much if they follow the UNIX philosophy, though), you don't need to worry about packages not working with your document class.

There's the added benefit that most advice and samples you find online use them too. ;)


The KOMA-Script classes, specifically scrartcl for articles, are well-made in my opinion. They have nice options, for example for customizing the style of figure captions. They also have a nicer use of white space on the page than the default classes, and they don't try to cram too many characters onto a line.

However, if you're writing an article for publication in a journal, always check first what their requirements are. Often they will have a document class for you to download; if so, then you should always use that.


I think Memoir is the bee's knees. It aggregates and integrates a bunch of packages that I would otherwise use to control or extend document layout options. This considerably reduces the amount of \usepackage statements I need and the excellently written Memoir Manual gives me one-stop shopping for advice and information on how to lay my document out.

  • 1
    Never heard of the Memior class ;) Oct 18, 2010 at 11:58
  • 3
    Heh. Community wiki, you could have fixed it :-) Oct 18, 2010 at 23:39

Recently I discovered the Tufte-LaTeX classes (for books and handouts). It is designed basing on the layout of the Feynman's Lectures on Physics and on the style of Edward R. Tufte. It's really well designed and produces a very good output.

I also recently started to use KOMA documentclasses, which are covered in another answer below


Since you say you are writing physics articles: the most popular class for physics articles is REVTeX (use latest version by \usepackage{revtex4-1}, which is now sufficiently bug-free to be recommended over the previous version). It is the class for APS an AIP journal submissions, since it hooks directly into their internal workflow for metadata extraction, draft versions for referees, reference checking, and so on and it allows the distinctive features of those publishers' journals (such as the RMP reference formatting, the PRB superscript citations, combining and collapsing multiple citations into one reference (using proper journal style for 'ibid' etc), two-column-wide equations when necessary, and so on). It also allows accurate length estimations (important for PRL submissions).

It's also possible to use revtex with some tweaks for submissions to other journals (Nat. Phys., NJP and others), but check if the journal you want to submit to has its own preferred documentclass because using it will smooth the process and get your article into print that much more quickly and with fewer mistakes introduced during copyediting. Some of the journal-specific documentclasses do not exist on CTAN and need to be searched for and downloaded from the publishers' web sites.

Generally it's best to keep it simple: avoid fancy TeX tricks such as defining your own macros that do more than just save keystrokes; avoid non-standard packages (things like natbib, amsmath (not with the IOP class), bm are probably OK, but something like cleveref may not be).

This FAQ answer has general advice (not physics-specific) for using latex for article submissions.


Use the standard LaTeX article class. It works with all the packages, and there shouldn't be any trouble turning it into whatever bizarre class your journal requires. Memoir is a great, but it's more intended for the writing of books, and for people who want to tweak their style a lot.

Added: the above answered the original question, which asked about math and physics articles. I use the standard LaTeX article class for articles and Memoir for longer works.


I usually roll my own class. Since most of my documents fall into one of several categories, I’ve developed a set of document classes for each of them. Since they don’t share many definitions, I find this more apt than using (common) packages.

Internally, I use the KOMA-Script classes since they include a few really useful definitions missing from the standard classes.

On the other hand, I think that the main feature of KOMA-Script and Memoir is way overhyped: why do they aggregate so many packages? I don’t get behind this. How is that supposed to be a good thing? It completely destroys modularity and takes away control from the user. Granted, it reduces conflicts between packages but I’ve actually found that serious conflicts are growing really rare lately.

I much prefer using a bespoke set of packages (and actually including those explicitly into my document) over loading a whole set of packages via the document class, and using only a tiny subset of those.


For math articles, I typically use amsart.

But really, it doesn't matter what you use---journals usually have their own style file, so if you know where you're planning to submit to and can get access to that class file, use that, so you get a head start on formatting for the journal. And if you can't get access to the class file (Springer journals, I'm looking at you), then you don't want to be mucking about with fancy classes that probably will have features your journal won't support, so just stick with one of the basic ones, like article or amsart.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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