I wonder which changes are made by the draft option?

That means what will be changed by calling it as global class option (\documentclass[draft]{<class>}) or locally for a single package if it is available (\usepackage[draft]){<package>}.

I know that this depends on the loaded packages and if they react on the draft option or not. But I thought it could be helpful to have a overview which packages do what.

I suggest the answers to be CW and using this layout

Package/Class: `name`  

- one
- two

Has `final` option too: yes/no

If you like we can discuss the layout in meta …

  • 8
    While I like your question, I don't see a point in adding several CW answers. Why not write a single answer covering everything you know (with appropriate sections) and let other users add their knowledge either in separate answers (provided your answer was non-CW) or by editing your (CW) answer?
    – lockstep
    Mar 24 '12 at 18:31
  • 3
    @lockstep: Hm … I though it’s a little more tidy in separate answers. And furthermore the answers can be sorted by importance/relevance by upvoting them. If you comment get’s 5 upvotes (do we call it upvotes for comments too?) I’ll merge the CW answers.
    – Tobi
    Mar 24 '12 at 18:38
  • 2
    +1 for introducing me to the draft option; -1 for not actually explaining what it is (not that it was very hard to Google for). Mar 25 '12 at 0:13
  • Several packages for setting someting in the page background, e.g draftmark or xwatermark, have a draft and final option, but I was too lazy to search for, what it means in each case.
    – Speravir
    Mar 25 '12 at 1:17
  • 3
    @IlmariKaronen: The question shouldn’t explain it. For that we have the answers below. And since it depends on the packages one can’t say what the option does in general ;-)
    – Tobi
    Mar 25 '12 at 8:23

18 Answers 18



Please add your answer here in alphabetical order too


Print a box at the end of overfull lines.
See this answer below for a list of classes and details.


The links lead to the answers below.

  • changes (final disables markup of changes, and list of changes)

  • cryptocode (disables syntax highlighting to reduce compilation time)

  • flowfram (show frame, typeblock and margin bounding boxes)

  • graphics (draw frames instead of including images)

  • graphicx (draw frames instead of including images)

  • hyperref (disable all linking features)

  • listings (don’t include external files)

  • listofsymbols (final suppresses printing of macro names and unused symbols)

  • mfpic (assume every latex run to be the first one)

  • microtype (disable all features)

  • pdfcomment (final suppresses the comments)

  • pdfpages (don’t include external file but print a frame box)

  • pgf (similar to graphics/x: all images will be replaced by empty rectangles)

  • pstricks (no native support, but a workaround)

  • showkeys (draft shows the labels, the default option)

  • showlabels (draft shows the labels, the default option)

  • thumbs (thumbs' width=2pt, thumbs' text=black, thumbs' color=grey)

  • todonotes (with obeyDraft package only enabled in draft mode)

  • varioref (turn warnings in error messages)

Related questions:


Package: microtype

  • All microtyping is disabled which may lead to different line breaking

    If the draft option is passed to the package, all micro-typographic extensions will be disabled, which may lead to different line, and hence page, breaks. The draft and final options may also be inherited from the class options; of course, you can override them in the package options. E. g., if you are using the class option draft to show any overfull boxes, you should load microtype with the final option.

Has final option: yes


Document classes

Standard: article, book, report
AMS: amsart, amsbook, amsproc
KOMA-Script: scrartcl, scrbook, scrreprt, scrlttr2
Other: proc, memoir


  • Print a mark for overfull lines

    overfull rule

Have final option too: yes

Related questions:


Package: graphicx

  • Prints frames containing the file name instead of including the images

    draft final

Has final option too: yes

  • 3
    While it wasn't asked for directly, I think the demo option should also be mention where you don't need the actual figure and you get a black box.
    – StrongBad
    Mar 25 '12 at 18:58

Package: showkeys

  • draft is the default setting

Has final option: yes, it disables all package functionality.


Package: varioref

  • Turn error messages into warnings.

Has final option: yes


Package: hyperref


  • Turns all hypertext options off

final option: yes


Package: listings

  • Doesn’t include external file but prints their caption and makes their labels.



Has final option too: yes

  • 2
    How can I suppress this behaviour, or have it render a box of the SAME size as the listing, so that my DRAFT documents layout isn't heavily modified when the input listings disappear... Nov 12 '13 at 12:31
  • 2
    You can pass the final option directly to a package, while the draft class option stays active for the class and other packages without the explicit option. I.e. \documentclass[draft]{article} ... \usepackage[final]{listings} ...
    – Tobi
    Nov 12 '13 at 12:47
  • My experience is that draft mode even inhibits the display of regular lstlisting environment listings; i.e., not only code from external files. Sep 30 '18 at 20:07

Package: pdfcomment

  • Option draft is the default.

Changes with final option:

“PDF annotations will not be typeset and will not influence line breaking.”

(In other words: The lines will change, if inline annotations have been used.)


Package: listofsymbols

  • Option draft is default with this package.
  • Option final removes the macronames from the lists. Symbols that are not used in the document are omitted from the List of Symbols and from the List of Subscripts.

Has final option too: yes (see above)


Package: pdfpages

  • Does not insert pages, but prints a box and the filename instead.

Has final option too: yes

  • That behaviour is probably inherited from graphicx. Mar 24 '12 at 20:53
  • @MartinSchröder Yes, probably. Maybe merge the answers for these two?
    – yo'
    Mar 25 '12 at 5:21

Package pgf (but not TikZ)


  • All images will be replaced by empty rectangles.

final option: yes


package: thumbs


Option draft (not the default) sets the thumb mark width to 2 pt, thumb mark text colour to black and thumb mark background colour to grey (gray). Either do not use this option with the thumbs package at all, or use draft=false, or final, or final=true to get the original appearance of the thumb marks.

final option: yes


Package: changes

  • Option draft is the default.

Changes with final option:

The final-option disables markup of changes, only the correct text will be shown. The list of changes is disabled, too.


Package: mfpic

  • Treats any pdflatex run as the first run, pretending figure files have not been created.

Has final option too: yes


Package: flowfram


  • Shows the bounding boxes with identifying tags for each frame, the typeblock and the margins.





\setstaticcontents{1}{Top Area}


\marginpar{Marginal Note}\lipsum*[1]

\lipsum*[2-3]\marginpar{Margin Note 2}


image of document

Has final option:

image of document in final mode


Package: todonotes

Note: there are no changes while using draft or final unless changes are made to the todonotes package options.

  • option obeyDraft: will display the to do notes (only output the todos/todolist if in "draft mode")

Changes using final:

  • option obeyFinal: will not display the to do notes (suppress output of the todosétodolist if in "final mode")

Package: pstricks

While the package pstricks does not support the class option draft, it is possible to add this behaviour:

  • All pspicture environments will be replaced by white space. PSTricks commands will be ignored.

To do so use LaTeX's internal test for document class options \@ifclasswith (c.f. stackexchange question here):


Change the article in line 3 to whatever class you have in use.

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.