What is Roam?

Roam is a note taking tool from the people at roamresearch.com that makes it easy to connect thoughts, simply by creating a link from one note to another. It has a strong following with people who are into productivity and getting things done. It is easy to use, but very powerful – easily the most powerful word-based app that I have used (Excel being a powerful number-based app).

People use it for taking research notes, meeting notes, as a contacts database, a journal, habit tracker, memorisation tool, for task management, to-do lists and even bible study. You can call it knowledge management software if you want.

But there are plenty of note taking apps out there – Evernote, Bear, Workflowy, Notion, Tinderbox, etc etc. How is Roam different? Primarily by the way it links and connects individual thoughts.


There are various ways you can link thoughts together, the most common of which is to type the [[note to which you want to link]] in double square brackets, just like that. The moment you open the square brackets, Roam helps you with an auto-complete dropdown of the titles of notes you have already written. It then becomes a hyperlink to that page.

For example, if I am are writing a note about finance and I write a sentence with the phrase [[Quantitative easing]] I can create a link to my quantitative easing page just like that. This creates a link from my current note to the note entitled “Quantitative easing”.

Bi-directional links

The magic – rather, one small part of the magic – is that a backlink will appear at the bottom of linked note too. The Quantitative easing page ‘knows’ it has been linked to. Next time you visit the Quantitative easing page, you will see a link back to the page I had linked from. This is unlike the internet, where if I link to bbc.co.uk, there is nothing on the BBC website that links back to this page on Roamhacks.com. This automatic back-linking concept is called ‘bi-directional linking’.

But that is not all. Roam has extremely powerful search and referencing tools, built in. I consider Roam to be for sentences what Excel is for numbers. To explain this, I will need to introduce some the idea of a block.

Pages and blocks

In Roam, each note is called a page – just like a web page, or a page in your physical notebook. A page has a title, and content. The content is arranged in bullet points called blocks. Bullets can be indented which creates a sort of parent-child hierarchy. Here’s an example.

This is the page title

  • This is a bullet / block which is part of the content of the page
  • This is another block
    • This is an indented block, a sub-block, 2nd level block, or child-block if you want
    • This sub-block is a sibling to the one above
      • You can go as many levels deep as you need
  • Back to a first-level bullets. Depending on your style, you can choose to have a paragraph of text per block, or a single sentence per block, or just a single word or number.

If you have used Workflowy, or you take notes in bullet points anyway, you will be familiar with this.

Roam treats each block as its own entity. I think of each block like a cell in Excel. It’s the smallest atomic unit that you can refer to. This block-level granularity is unlike a lot of other note taking software which work at page-level granularity. It is partly what gives Roam its power.

A difference between Roam and other notetaking apps is the ability to search and refer to text at the block/bullet level instead of at the page level. You can very easily say: “Give me all the blocks in my whole database that contain the phrase “Quantitative easing”, and tell me the name of the page it’s on.”

And more…

Bi-directional links and the ability to search the database at the block level is just the start. You can give your pages and blocks attributes, which opens up another level of categorising your thoughts, and being able to visualise them. You can use block references and pull in a read-only copy of any block in your whole database into a page you’re writing. You can embed another block into your text, which is a live copy (if you change it here it changes on the other page too). There are many other powerful functions, queries, and commands that make traversing your knowledge database not just easy, but delightful.

Roam can be used today, but is under active development. The documentation tends to be behind the product. The purpose of this website is to provide example-led guides of how to get the most out of Roam.

%d bloggers like this: