DEV Community

Cover image for 10 features where Coda is 10X better than Notion in 2022
Al Chen for Coda

Posted on • Edited on • Originally published at coda.io

10 features where Coda is 10X better than Notion in 2022

See the full post with interactive elements here.

Let me be blunt: I work at Coda, and I’m 100% biased. I started using Coda during its stealth phase more than 5 years ago and frequently post videos about Coda on YouTube.

If you are looking for more “un-biased” reviews of Coda or Notion, I’d recommend checking out G2, Capterra, or TrustRadius (although those sites can contain bias as well since vendors typically send gift cards for reviews). There’s also this less-biased article from my colleague. The most unbiased review would just be to ask your colleague what they think about Coda and Notion, browse places like Reddit, or check out this guide from someone who started in Notion and ended in Coda.

Many people ask me and my colleagues what differentiates Coda from Notion and vice versa. As is the case with many SaaS software you use today, every tool has its pros and cons. To understand where I’m coming from, you need to know a little more about me. I have a background in financial analysis and love spreadsheets. So much so that I extend spreadsheets beyond what they were meant to do (balancing ledgers and whatnot for accounting folks). Beyond the simple comparison of features I share below, one key takeaway from this post is this:

You can bend a tool to do what you want, as long as you’re willing to put up with the nuance, tedium, and complexity of bending the tool.

With that preface, let’s get into the top 10 features where Coda is 10X better than Notion. If you prefer to watch a video of the top 10 features, click below:

10 features where Coda is 10X better than Notion

1. Easier-to-write formulas.

Lest you forget: you can bend a tool to any shape you want. For the Excel fans out there, you may think this formula is easy to write:

=VLOOKUP(A2,Raw_Data!A1:C100,2,0)

I’m not going to lie, I do love me a good VLOOKUP when I need to do some quick analysis. Here’s a quick comparison of doing a VLOOKUP between Coda and Notion:

Coda formula for doing a vlookup Coda formula for lookups

Notion's formula is not as intuitive as Coda's formula for doing a vlookup Notion “formula” for lookups

In the “Customers” table, we’re trying to find the total sales for each customer (this comes from the “Sales” table). In Coda, the formula looks like this: Sales.filter(Customer ID=Customer ID).Total Sales. In Notion, you first do a Sales Relation column and then do a rollup column called Customer Sales to get the actual number of sales. This isn’t really a formula in Notion. It’s like the “no code” way of writing a formula.

A more clear example of how writing formulas in Coda is easier might be in this simple example below:

Coda's formula for a basic IF THEN statement is similar to Excel and Google Sheets Coda formula for IF statement

Notion's formula for an IF THEN statement is a little more complicated than Coda's formula since it requires the prop statement Notion formula for IF statement

We’re trying to see if the customer name is equal to “Alice.” In both Coda and Notion, you reference the entire column name instead of cell references (like Excel and Google Sheets). The main drawback with Notion is that you have to add a prop() function around each column name, which makes long formulas more difficult to parse. This could be an easy fix on Notion’s side to make their formulas easier to read.

2. Formulas that just do more in tables.

Stretching formulas to do creative things is what I love about Excel and Google Sheets. That creativity is taken to the max in Coda. In the example above, let’s say we want a column to say “High” if that sales number is is highest of all sales, “Low” if the number is the lowest, and “N/A” for everything else:

Coda's formulas have line breaks, tabs, and spaces to make formulas easier to read and debug Coda formulas look pretty

Notion's formulas don't look as nice as Coda formulas since they are wrapped on one line and are more difficult to read. Notion formulas wrap on 1 line

The Coda formula uses the Switch function which prevents the need to do a nested IF function. The Max and Min functions aren’t super special, but you can sort values in your current table and compare those values with a specific row. In the Notion example, the formula is doable, but requires a few “supporting columns” like the All Sales relation, Max Sales rollup, and Min Sales rollup. Side note: I wasn’t sure if this formula was even possible in Notion until I came across this Reddit thread. Then from there, you can write the nested IF statement to see if that customer’s sales is the highest or lowest.

I put these formula features as #1 and #2 because they show where Coda is better than Notion the most. Notion could come up with more flexible formulas that allow dynamic sorts and filters, but in the meantime the rollup and relation features will have to suffice. Again, you can always bend your tool to do what you want.

3. Automations to handle recurring tasks & reminders.

For most people out there, Coda’s automation feature is like the robot that does things for you every day or every week. It sends an update email, shows you your recurring tasks for the week, and can even send Slack messages. For the developers out there, it’s like a crontab. One of my favorite examples of automations being used in the wild is this Robot PM template by Mick Niepoth who set up a system to send reminders to his team on overdue tasks.

Coda's Automation feature allows you to schedule tasks to start at certain times. This means you can easily do recurring tasks and reminders. Coda’s Automation panel

Watch for 20 seconds starting at 1:00 to see how automations work:

Coda Automations

General automations aren’t available in Notion, but there are some creative workarounds for setting up recurring tasks and reminders. This one from Thomas Frank and this video from Marie Poulin are worth checking out showing how they tried to build automations into their Notion workspaces:

4. Full Integrations with 3rd-party services.

In Coda, 3rd-party integrations are called Packs. In Feb 2022, we announced the open Packs platform where anyone can create their own Pack and extend the power of Coda. The main difference between Coda’s Packs and Notion’s integrations is the ease of use. This is akin to Coda applying a “no code” layer on top of integrations. What does that mean?

If you scroll up to bullet #1 where I mention the VLOOKUP example, Coda lets you write a formula to do something similar to VLOOKUP. Notion, on the other hand, abstracts the formula writing away and lets you click through menus to create relations and rollups to do something similar to VLOOKUP. This is like Notion applying “no code” to doing a VLOOKUP, where “no code” is a general term for making something a little more abstract.

Both Coda and Notion have APIs, and it’s up to makers and builders to create integrations that the masses can use. In the case of integrations (that interact with the API), Coda has applied a “no code” approach to integrating with 3rd party apps. This means simple drag-and-drop to get your data into Coda and less fiddling with APIs. Watch for 30 seconds starting at 0:50 to see how you might integrate with Gmail:

Coda Packs

Coda’s Packs are standardized and the ease of using the GitHub Pack would be the same as using the Gmail, Twitter, and yes, even the Notion Pack. This table below shows the Yelp Pack in action. It allows you to see info about a restaurant with only the Yelp URL (see the Coda doc to interact with the table):

Yelp Coda Pack

Even I was able to publish a Pack. My colleague and I published this Pack which simply shows you a live feed of all remote jobs from We Work Remotely.

Notion’s integrations include Asana, GitHub, and a few others created by the community. The main difference is that the extent of the integration is a “live preview” of a card in Trello or issue in GitHub when you copy and paste a link into Notion (see “Link Previews” in this help article). This screen in Notion shows all the “connected apps” available and it seems like you can see a table of your Trello cards or GitHub issues in a database in Notion, but this feature simply let’s you embed rich previews of your 3rd party data:

Notion's integrations aren't truly integrations as they only let you see rich previews of your data from other 3rd party apps. In Coda, you can interact with your 3rd party apps and view data in a structured table. Notion’s integrations only allow for rich previews & embeds

Bottom line: Integrations (or Packs) in Coda are “full” integrations where you can view and sort your data from 3rd party apps, and take action in those apps by pushing a button in Coda (see the next bullet on buttons). Notion’s integrations are simply rich previews of your data (although this will change as Notion announced synced databases in March 2022).

Community-driven directory sites do exist like NotionIntegrations. You could integrate Notion with GitHub through this integration created by BeyondCode (letting you see all your GitHub data in a database), but this isn’t an “official” Notion integration. If there are any issues with the integration, you have to reach out to the BeyondCode team.

5. Buttons that look like buttons and do stuff.

Combined with formulas in bullets #1 and #2, buttons are one of the most powerful features in Coda. The main problem they solve for teams is accidental or incorrect data entry in a table. Coming from the Excel or Google Sheets worlds, you typically create buttons by using Form Controls which requires you to know how to write macros. In Coda, once you’ve become familiar with a few formulas, you get the added benefit using that same formula language in a button.

For instance, look at this example table below of tier 1 customers you might have set up for your sales team to call:

coda table

It’s a pretty basic table and if an Account Exec calls the customer, they would check off the checkbox in the Called? column. There’s some basic conditional formatting so that it’s clear which customer has been called.

If you’ve set up a Google Sheet or Notion workspace for your team, the checkbox is probably the most advanced you’ve gotten with making your spreadsheet or workspace “user friendly” to your teammates. Let’s look at the same table now with a button instead of a checkmark:

coda table

That green button just makes the list of customers a little easier to interact with versus checking off the checkbox column. We could even hide the Call check column from view to de-clutter the table some more. Behind the scenes, formulas in the Called? button column control the text that shows up on the button and the checking of the checkbox in the Call check column. Maybe you want to have a giant button outside the table that checks off all customers in one go:

big coda button

If you need a more lightweight button without all the formulas (but still want a nice looking button), you can add a simple reaction button into your tables or doc. These reaction buttons are nice visual indicators letting your teammates know that you’ve approved, acknowledged, or read something.

Coda reactions

The template button is the only native button in Notion that lets you make copies of a template you’ve built. There are work arounds for creating button-like images in Notion like this example where you create actual images in a gallery database view. Apparently there’s also a button widget you can use via Indify (3rd party), but it’s not a native Notion feature.

6. A formula editor with new line breaks, spaces, and tabs.

If you’re a heavy spreadsheet users, you’ve probably had to write a long nested IF formula with multiple true and false branches. IF functions exist in Coda and Notion too! However, in Coda there is a big formula editor that lets you see your formulas more clearly. This is a feature that is similar to bullet #1 where formulas in Coda are just easier to write.

If we go back to the example from bullet #1, here’s a comparison of what a long-ish formula looks like in Coda and Notion:

Coda's formula editor can be expanded to show a really long formula. Line breaks and spaces make formulas easier to read and debug if there are mistakes. Coda’s formula editor

Notion's formula editor is just one box and the formula is wrapped on one line, making it less easy to use and read compared to Coda's formula editor. Notion’s formula editor

These are the formulas for Coda and Notion for figuring out the “high” and “low” sales from bullet #1. The Coda formula could’ve been written in one long line like the Notion formula, but aren’t things just nicer when you have line breaks and indents? It makes debugging formulas your colleagues write way easier when everything is not written on one long wrapped line.

If you are writing super long formulas, another added benefit in Coda is you can pop open a big window while you’re editing the formula. This gives your more whitespace to see where your formula goes:

Expand Coda's formula editor to give yourself more whitespace to write and edit your formulas. Coda’s formula editor can be expanded

7. Detailed layout when expanding rows in tables.

You can already customize the look and feel of individual pages in both Coda and Notion. Embed images, dragn-and-drop elements, and multi-column layout are some of the common features for customizing pages. But what about tables?

The use case here is when you have a really wide table with a lot of columns. When you want to “view” a specific row in the table, you don’t want to force your teammate to scroll endlessly to the right to view all the data. When you “expand” the row, you want to see more details about that specific row in a user-friendly way. Here’s a comparison of what a detailed row layout looks in Coda and Notion using the “Customers” table example from bullet #1:

Coda's detail layout for a row can be customized with columns and images. This makes the row detail easier to read and more user friendly for your teammates and colleagues. Coda’s detail layout for a row

Notion's row detail for a row in a table is pretty limited compared to Coda. You can only organize column names up and down. Notion’s detail layout (page) for a row

The customizable row layouts allow you to view the columns in your table in a multi-column layout. If you have pictures in your table, those pictures can show up in the row layout as a “cover” image or a “profile picture” (in the use cases where you have a list of people). These custom layouts were modeled off of other popular websites that show lists of data like Yelp:

Coda's custom layouts for row details. This allows you to make row layouts similar to websites and makes your row layout easier to read. Quick custom layouts for viewing expanded rows in Coda.

Back to the “Customers” table in Notion, expanding the row gives you a detailed layout, but the most you can do in terms of customization is moving columns up and down:

You can only move columns up and down in Notion's row detail layout making the layout more restrictive compared to Coda. Only move columns and up and down in Notion’s row detail layout

It’s small feature in the grand scheme of things, and Notion could probably easily add this feature in the future to their detailed row layouts. This feature may not be that interesting for the power users and makers out there since you’re familiar with the shape of your data and might be used to scrolling through your tables. This feature is geared towards teams where you need a way to show a ton of data to your teammates and:

  1. Want to show the relevant columns to a teammate in a user-friendly way.
  2. Don’t want to show all the columns from the table that don’t matter for the teammate’s job.

8. Sorting animation during Zoom meetings.

Sorting and filtering data in a table is pretty standard. How that data gets sorted is the feature that’s worth calling out in Coda. This is where a simple sorting animation makes your data alive as your teammates interact with the data Let’s consider this scenario:

You are leading a project retrospective and want to figure out what went well/didn’t go well last quarter with your team. You’ve set up a table for people in your meeting to add their ideas. In the Zoom meeting, you discover your teammate has already added a few of her ideas on what could go better this quarter to the table. These ideas end up getting looked at first which biases what people think about during the meeting. During the meeting, your other talkative teammate hogs the Zoom and rambles about their ideas for what didn’t go well last quarter. Most people in the Zoom are silent.

To even the playing field, people should be able to add their ideas and silently vote on them. This allows the best ideas to bubble to the top which have the most “votes.”

Coda’s voting table template is one of the simplest and most useful templates to use for synchronous meetings that happen over Zoom, Teams, etc. See the example below where a bunch of questions have been added. As the meting leader, you want to know which ideas are the most important to your teammates.

Coda sorting table

You’ll notice a slight animation as the table resorts and puts Idea #2 to the top of the table. Imagine 10, 50, or 100 people voting on ideas at once and seeing the table re-sort in real-time. This is exactly what Shipt did with their team retro template.

You don’t have to re-sort the table like you would in Google Sheets or Excel. This slight animation shows people on the Zoom meeting that stuff is happening during the meeting and encouraged to participate.

In Notion, sorting just kind of happens as values are being updated in your table. Going back to our “Customers” table, I’ve set up a sort on the Customer ID column to always sort from least to greatest:

When sorting in a database in Notion, the rows get sorted quickly and abruptly making them less engaging during a meeting. Notion’s rows get sorted abruptly after you change values

As I change the Customer ID column number, the table gets sorted from least to greatest. The sorting happens abruptly. All of a sudden, you see Alice at the bottom and then Bob at the top. With a simple animation, the sorting feels more interactive and less jarring.

Worst case scenario: Small features like this make whatever tool you’re using during meetings a little more enjoyable and interesting.

Best case scenario: You get to hear what’s actually on the minds of your teammates since the feature encourages everyone to vote, participate, and get their “voice” heard.

9. Native forms (and support for them).

This feature is similar to bullet #4 on integrations and #5 on buttons.

The use case here is you want your teammates (or external vendors) to fill out a form to populate a table. That teammate or vendor most likely is not a Coda or Notion user yet so you just need a simple form that they can load on their computer or phone.

Forms are a native feature in Coda. This means you get the best support if you have any issues with your Coda forms. Native forms in Coda

Forms in Coda are a native feature which means our support team can help you troubleshoot any and all issues relating to creating and publishing your form. Prior to the forms feature, makers would create forms in Google Forms or Typeform and connect the responses to their Coda doc with Zapier. With native Forms in Coda, there’s no more overhead with setting up (and paying for) a 3rd party service like Zapier to connect things together. This is a simple form created in Coda with one question embedded (responses will show up in the Feedback page):

In Notion, there are 3rd-party add-ons for creating forms. Some of the popular add-ons include NotionForms, Form to Notion (Google Workspace add-on for Google Forms), and Chilipepper.

For most use cases on a small team, NotionForms’ Basic plan may be fine for your use case (it’s free). For bigger teams who need forms for multiple workspaces, you’ll need to sign up for their $15/mo plan. Again, for larger enterprises this cost is probably negligible. If you or your teammate wants to build out a complex form or run into issues with your form, who do you turn to for support? Someone from Notion’s customer support team may be able to assist you with the form. But since this is a 3rd-party add-on, you’re most likely going to contact the support team at NotionForms.

10. Cost savings on a team plan for bigger teams.

If you work for a big enterprise or well-funded company who doesn’t care about their SaaS and software bills, this bullet point might be irrelevant. For the other folks out there who are cost-conscious and making a considered decision about which tool to put through the gauntlet of your IT and Security teams, this bullet point might resonate.

Let’s take a look at the Team plans for both Coda and Notion (straight off the pricing page):

Coda's team pricing plan allows for unlimited editors and viewers. You only pay for users who create docs. Coda’s team pricing plan

Notion's team plan is a traditional SaaS model where you have to pay for every user of Notion. This makes Notion more expensive for bigger teams. Notion’s team pricing plan

If we look at the true monthly cost (not the monthly cost after buying an annual plan), it’s Coda’s $36/user vs. Notion’s $10/user. That seems like a lot for Coda. But of course, it’s all in the details.

If you are just testing Coda or Notion out on a team of <10, I think Notion may actually be the more economical choice. Here’s a breakdown of what costs might look like for two types of teams:

  1. Small team of 2 marketing ops leads and their 5-7 marketing colleagues
  2. Multiple teams in a company of 200+ people where 75 people need to be able to create and edit pages and the remaining 100+ just need to make light edits or view stuff

Coda vs Notion pricing

Bottom line: The key distinction here between Coda and Notion is that in Coda, an editor has more powers than a guest does in Notion. A Coda editor can create pages, edit formulas, and do all the things a doc maker can do except for creating Coda docs. Most people in a company may not need to create Coda docs. Notion is inexpensive to use for small teams, but Coda is a more economical option in the long run for serious cross-functional and company-wide usage.

100 other features not mentioned.

As I stated at the top, I’m biased. There are hundreds of other features in Coda and Notion I didn’t mention. There are also features that make Notion better than Coda. It all depends on your team use case and how much time you want to put into bending the tool to do XYZ for your team.

For more unbiased reviews and feature comparisons, I’d consider taking a look at this Reddit collection from the r/Notion reddit (shout out to /u/ben-something) for compiling!).

While this Notion vs. Coda comparison is old (from 2020), this thread in the collection confirms some of the features I mentioned in the post (see this response from /u/makaike) like buttons, better formulas, and detailed row layouts. If you’re on Notion and thinking about trying Coda, check out the Notion Pack and this accompanying template!

Have any comments, questions, or corrections? Leave them in this Twitter thread.

Top comments (2)

Collapse
 
digital_hub profile image
hub

Hi there i love this thread.

btw - a new tool is here.

AFFiNE is the Next-Gen Knowledge Base to Replace Notion & Miro. Open-source, privacy-first, and always free. Built with Typescript/React/Rust
github.com/toeverything/AFFiNE

AFFiNE live demo has been released, please click and have a try: affine.pro
github.com/toeverything/AFFiNE/
[quote]Before we tell you how to get started with AFFiNE, we'd like to shamelessly plug our awesome user and developer communities across official social platforms! Once you’re familiar with using the software, maybe you will share your wisdom with others and even consider joining the AFFiNE Ambassador program to help spread AFFiNE to the world.
Features
Privacy focussed — AFFiNE is built with your privacy in mind and is one of our key concerns. We want you to keep control of your data, allowing you to store it as you like, where you like while still being able to freely edit and view your data on-demand.
Offline-first - With your privacy in mind we also decided to go offline-first. This means that AFFiNE can be used offline, whether you want to view or edit, with support for conflict-free merging when you are back online.
Clean, intuitive design — With AFFiNE you can concentrate on editing with a clean and modern interface. Which is responsive, so it looks great on tablets too, and mobile support is coming in the future.
Seamless transitions — However you want your data displayed, whichever viewing mode you use, AFFiNE supports easy transitions to allow you to quickly and effortlessly view your data in the way you want.
Markdown support — When you write in AFFiNE you can use Markdown syntax which helps create an easier editing experience, that can be experienced with just a keyboard. And this allows you to export your data cleanly into Markdown.
Choice of multiple languages — Thanks to community contributions AFFiNE offers support for multiple languages. If you don't find your language or would like to suggest some changes we welcome your contributions.[/quote]

Collapse
 
max_kray profile image
Max Kray

Thnx for the summary! Never heard of Coda before, looks like worth a try.