What would be your "top 3 tips" for beginners?

Hi all! (and especially those with a few months or more of Roam-experience - )

If you could only choose three tips for a beginner, what would you suggest? (I want you to really pick just the top 3, because honestly, there are probably many more than 3 but think back to when you were a beginner - what would have helped upshift your use the fastest…)

I am aware that there will be no “universal agreement” on what the top 3 are! Different use-cases will probably have different top-3’s - but that’s part of why I am asking … I’m curious how our uses are starting to diverge …



  1. Pages and Tags, Autocomplete, Show/Hide Brackets (Ctrl+cb)
  2. Block embed and Block reference
  3. Sidebar
  4. Hyperlinks, Alias


  1. Roam Tools
  2. Table to CSV


  1. Show/Hide User edit icons (Ctrl+ccs)
  2. Markdown
  3. TextExpanders
  1. You don’t need to start with an organizational plan - don’t overthink it… Just put things in Daily Notes, and move them around to organize them later. There are so many amazing tutorials and YouTube channels on master-level Roam organizers, but the overall number and depth of those led me to (mistakenly) believe the Roam learning curve was steeper than it really is. I found organizing and linking a lot easier when I got some stuff in their to look at and work with.
  2. A text expander is a must if you plan on having standardized pages or meta-data.
  3. Attributes and {{attr-table}} are worth reading up on from day one, otherwise you risk having to backfill some common meta-data fields you wished you collecting in the beginning. (This is a minor exception to the “just go for it already” guidance in #1.
  1. Just start by using Daily Notes, even if it feels awkward.
  2. Don’t invest heavily in other people’s note-taking religion.
  3. That’s all.

I concur. The “temporal sieve” is what really hooked me into Roam and demonstrates the power of Daily Notes. Reflecting back on old notes helps reveal new connections that I didn’t see first time around.


Can you elaborate a bit more on the idea of the temporal sieve and how you implement it? I can’t seem to be able to sort my backlinks in order

  1. Also agree on the power of the temporal sieve. In my daily notes template, I have reminders to check yesterday, one week ago (and I just added one month ago, since I’ve been using Roam for long enough). This is really where the money is made (so to speak).
  2. The big thing that it took me a long time to really grok was the relationship between links/tags and the blocks below them, i.e.: nesting images under a tag/page make it show in the search/references results for that tag
  3. There is a lot of confusion around metadata and Attributes. In response to @christophersw, I tried using Attributes for metadata and eventually ended up undoing all of it and following anonym.s’s example of having all the metadata in one field (broken up by shift-tab’s). My advice would be that Attributes are for specific use cases, and to not worry about them until you find one of those use cases.

yeah, @rky7 I have something similar going on to what you have in your template!

I’m curious, what does “spin the wheel o’ Random Roam” do?

My template has a “retrospectives” section:

@chinat the prcoedure is pretty simple, I just shift-click on each of those retro dates in succession to bring them up one by one in the side window and then skim through each one and review what I was doing, thinking, writing about, and planning on that day.

Each day has an “odds and ends” section as well, and the funny thing is that something that feel loose and unconnected, and belongs in the odds and ends “drawer” on a particular day (lots of Twitter captures fall there) sometimes turns out to be really useful 1, 4 or 12 weeks later. I guess there’s a kind of functional intuition at work or something, because I’ve discovered quite a few interesting things in the “odds and ends” section of the journal entries in the retro section.

(I think there’s some level of conscious or subconscious “seeding” going on - that when I notice something, it creates a “framework” for me to notice more, related things, and then, after a time there’s enough “critical mass” for me to see a trend.)

The other cool thing that emerged out of my “retro” habit is I think I’m getting better at “writing for my future self”, which is a skill that get better the more you realize exactly “what your future self needs.”


@mattbrockwell: Agreed on the ‘seeding’, as well as the ‘writing for your future self’, both of these make a huge difference.

Regarding my ‘Spin the wheel o’ Random Roam’. at some point in the Slack channels I found a bookmarklet that opens a random page in your DB:

javascript:var allpages = [...document.querySelectorAll("div.rm-pages-title-col a")];allpages[Math.floor(Math.random()*allpages.length)].click();

You have to be on your ‘All Pages’ page for this to work. I got this idea from Tiago Forte, and it helps me do more seeding, and even time I touch a note I clean it up or add some highlighting/referencing.


@mattbrockwell love the temporal sieve idea and TextBlaze is super fast, but how do you get hard line breaks with TextBlaze? It keeps wanting to put the whole thing in one block.


@dylancdoherty use {key: enter} in your text snippets in Text Blaze.


Sincerely, thank you. I love the Retrospectives.

For anyone else, here is the TextBlaze command I came up with for this:

**Retrospectives:**{key: enter}{key: tab}Yesterday: {time: dddd; shift=-1D}, [[{time: MMMM Do, YYYY; shift=-1D}]]{key: enter}One week ago: {time: dddd; shift=-7D}, [[{time: MMMM Do, YYYY; shift=-7D}]]{key: enter}One month ago: {time: dddd; shift=-1M}, [[{time: MMMM Do, YYYY; shift=-1M}]]{key: enter}Three months ago: {time: dddd; shift=-3M}, [[{time: MMMM Do, YYYY; shift=-3M}]]{key: enter}One year ago: {time: dddd; shift=-1Y}, [[{time: MMMM Do, YYYY; shift=-1Y}]]{key: enter}{key:shift-tab}

@rky7 I tried copying over the code but seem to be getting some error…
#object[TypeError TypeError: Cannot read property ‘click’ of undefined]
Would you mind clarifying what you mean by ‘All Pages’?

You need to click “All Pages” on the left hand menu so that you are on the page listing all your pages before running the bookmarklet.

Basically what the script does it picks a random link from that page and clicks it.

The error message about being unable to “read the property ‘click’ of undefined” sounds like no links to pages were found (which would result in the collection of links being ‘undefined’).

1 Like

For people having problems during out the Random Roam bookmarklet, I put the bookmarklet code and instructions on Pastebin, in case Discourse is stripping away any of the code. Refer to https://pastebin.com/kYAfwgDj

  1. Just type stuff. Stick with what you know, if you want - Roam will accommodate you. There are no mistakes.
  2. Read as much as you can on how others are using Roam - including the Roam help database. Guaranteed, you will come across techniques, tips, tricks and methodologies, you hadn’t thought of.
  3. Experiment with moving away from what you know. Try stuff and see what resonates with you. Dump what doesn’t. There are no mistakes.
  1. Don’t try to plan your database’s structure. It will emerge organically, and you can always go back and reorganize as needed.
  2. Learn keyboard shortcuts to make moving around in Roam even easier. Roam-Toolkit is good for this if you want to use Vim bindings.
  3. Only watch Roam tutorials on YouTube after you have found a use for Roam.

I feel asleep last night thinking about how to welcome new users in a very simplistic way so that they are not overwhelmed by the master-level tutorials out there. I’m thinking of friends who are busy parents, teachers, book club members - a simple tour of the features with a focus on Daily Notes, bi-directional links and block references would probably be enough to convince lots of people to give it a go.


That’s exactly what I set out to do with the Roam course I’ve written, to introduce it in stages and build upon your knowledge as you use it. What I’m in the process of doing at the moment, is figuring out how it could be done more interactively so you’re not just consuming the content but learning by doing in a way that doesn’t feel overwhelming.

  1. Just start with Daily Notes, don’t overthink it. Try taking all your notes from the day in Roam for a week straight. Don’t try to mold Roam into another tool (Trello, Asana, Notion, whatever). Don’t worry about structure for now.
  2. Start making a few [[backlinks]], even if they link to blank pages for now
  3. Learn how to use Markdown