I've setup a template for org-roam-dailies in such a way that

  • There is one file per month, so YYYY-mm.org
  • Inside each file, headlines go with a timestamp
(setq org-roam-dailies-directory "daily/dailiesTest/")
(setq org-roam-dailies-capture-templates
      '(("d" "default" entry
         "* %T: %?"
         :target (file+head "%<%Y-%m>.org" "#+TITLE: %<%Y-%m>\n"))))

I've tried few configurations, and at the moment this setting seems like a sweet spot between

  • One-file-per-day, since the amount files is quickly escalating and slowing down my agenda view
  • One big file with datetree, since I don't like having three more level of nesting to start with for every new headline and I find having just one big file for my entries unnecessary

However, the headlines have no org-roam ID and I miss the ability of navigating through the notes. Is there a way to add this to my custom template?

  • just a note that one file per month also escalates quickly. One big file is not that bad at all. You can also flatten some of the nesting using tricks like described here: emacs.stackexchange.com/questions/48414/monthly-date-tree
    – Daniel
    Apr 11, 2022 at 3:33
  • I'm noticing slowdowns (not major, but noticible) with org-agenda when having a number of files in the order of the hundred: if I can reach that number in less than an year with one-file-per-day, with one-file-per-month I would get 120 files in 10 years (totally reasonable for me, and much of that can be archived by that time). About the weekly granularity, I would just gain one level (I'm probably spoiled by the one-file-per-day flatness :))
    – ezy
    Apr 11, 2022 at 8:25

1 Answer 1


Turns out that the template does enough of what I need. Navigation to previous/next day doesn't really work (or at least just moves between months when necessary), but compared to a normal org-capture template I can at least have a backlink in roam.

(setq org-roam-dailies-directory "daily/")
(setq org-roam-dailies-capture-templates
      '(("d" "default" entry "* TODO %?"
         :target (file+head "%<%Y-%m>.org" "#+TITLE: %<%Y-%m>\n"))))

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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