I'm using the package todonotes. How can I disable the todo notes for printing my final document? (I know it's possible, but I can't find it and I don't want to (manually) delete all my notes in the document...)

I've read the documentation, but I still have NO clue on what to type to disable todonotes. This is all I have in my preamble:


but commenting any of those will keep my note's text on the spot and just remove the formatting. I couldn't figure out what to type to fully remove that unless I go one by one and do it.

  • 3
    When you don't want your notes to be visible just change \usepackage{todonotes} to \usepackage[disable]{todonotes}
    – Splashy
    Commented Nov 2, 2010 at 14:17
  • 2
    Using the official methods is better, but you could just redefine the macro: \renewcommand{todo}[2][]{}. Commented Oct 9, 2012 at 1:13
  • how can I restore it easily, then? For me, an environment would work best to temporarily disable todo. Commented Dec 2, 2021 at 20:49

4 Answers 4


I just got it: for notes not to be visible just change:




You can also give it the obeyDraft option (\usepackage[obeyDraft]{todonotes}), so that it will display todonotes if your document is in draft mode and hide them if it isn't in draft mode. However, be aware that the draft mode also only shows bounding boxes for images, so that might be an issue.

  • 13
    My preferred option for todonotes is obeyFinal. With this option, todonotes will be disabled only in final mode. Commented Nov 5, 2013 at 15:28
  • 4
    to have the images displayed even on draft mode, you can use \usepackage[final]{graphicx}
    – carandraug
    Commented Jan 6, 2016 at 14:30

My preferred way is \presetkeys{todonotes}{disable}{} in the preamble, which also works in case todonotes has been loaded by some previous file, and you can't easily change its \usepackage line.


An easy hack is to redefine command \todo somewhere at the top of document, e.g.


This comes handy especially when your document is structured into multiple files, and you can not simply have control over \usepackage.

  • 1
    sometimes, todo has an optional argument, though :-/ Commented Dec 2, 2021 at 20:47

You must log in to answer this question.

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