Closer to pure Notion automation with these updates

Automation in Notion as of 2024

One of the short-term bummers about Notion’s 2021 acquisition of the automation platform Automate.io, was it seemed like more of an acqui-hire than a move to bring automation internally into the app. Not much of the platform really made it into the product and most Notion practitioners are still relying on Make, Zapier, Relay, et al to facilitate automated data workflows in 2024.

That’s looking like it’s gonna change. 😁

Excitedly, when database automations initially shipped, I was able to drop my Make workflow that set Completed at Date propery on tasks when they were moved to Completed status with this beautiful little automation:

Set Completed at date to Now when Status is set to Done
Set “Completed at” Date to “@Now” when Status is set to “Done”

Things like that have been made smoother by Notion Automations, but something’s still missing…

The largest missing piece with automations in Notion is that there’s few ways to pass data from the page that triggers an automation to the action.

For example, we can use the @This page token from the page that triggered the automation to create a page related to the database the page is in, but we can’t use any data from properties of @This page.

My dreams to be able to write Notion Formulas and trigger webhooks from automations aside, today(August 7th)’s updates to database automations is an amazing step in the general direction of being able to do automation purely in Notion.

Aside: I’ve also heard that Notion has an official “Automations” team now (woo!), so I think by the end of 202[4|5] we might be barely using Make and Zapier at Notion Mastery (only for a few key API-driven workflows)!

So let’s check out these exciting new updates (and the gotchas and caveats I’ve observed so far) and cheers to Notion’s renewed interest in making automations a first-class citizen in the Notion ecosystem!

Database Automation Updates

Today’s updates to database automation include three key features:

1. You can now specify conditions for triggers that match All filters.

Previously all our automation triggers were “Any” by default. Now we can use the label to select All of to create a condition that all conditions must match. This brings automations in line with Filters’ AND (All) and OR (Any) conditions.

One caveat to note here is that within some of the property matchers we are still limited to “any” matches. For example, if we select two people, this would match on either of them, but not both:

People default to "any", no "and" available
People default to “any”, no “and” available

It is not currently possible to add a matcher on the same property twice, so there doesn’t appear to be a way to guarantee that…

  1. multiple people are both in the property, nor,
  2. that a person property only contains specific people.

Perhaps that’ll be an update for the next iteration for this new team!

2. Text, Number, Select, Person, and Relation properties now have filter-esque dynamic matchers.

New Text matches

These are also similar to Filters and contain dynamic matchers such as (for Text):

  • Is set to – Exact match
  • Is not set to – Non-exact match
  • Contains – Contains a text fragment
  • Does not contain – Does not contain a text fragment
  • Starts with – Starts with exactly the string
  • Ends with – Does not start with exactly the string
  • Is edited – All edits
  • Is cleared – Content was wiped completed

I’m really excited for Is cleared actually, because I think this is a really nice trigger for observing accidental deletes of properties. Like send a notification to the Owner (a Person property) of a document if a Title property is accidentally cleared. 😅

When Task is clear, send notification to the person in the Owner property.

Message: "Oops, the Task name was cleared? Was that an accident?"
Oops

There could also be an interesting validation option here. For example, my journal entries all start with “Journal: “, so maybe I add a validation automation here that toggles a Multi-Select or Status property if the Title Does not contain that string? (Note here that it’d be great to have Does not start with , but it seems we only have inversions for set to and contains in this iteration of the feature).

3. List properties now have more actions you can perform on them.

Properties that are list-type properties (Person, Relation, Multi-select) now have more actions to perform. This brings database automations a little closer in alignment with button automations, which were slightly more powerful in some ways.

For example, at the top of a Person property, you can now choose one of form actions:

  • Replace with: Entirely replace the list with a new list of people
  • Add: Add the selected people to the list
  • Remove: Remove the selected people from the list
  • Toggle: If the person exists in the list remove them, if they don’t, add them

I love the Toggle option here a lot, especially for Person properties. I’ve been using Toggle in Button properties to add/remove myself as a watcher on certain docs.

For example, in my client builds I sometimes have a “Favorite” button on docs that allows folks to add/remove their Notion account from a doc’s Watched by property, which “sends” the doc to their “Favorites” view on their home page.


Big things are afoot for Notion Automation this year. I’ll be watching this space. I’m always a fan when Notion releases something that I’ve been either been doing manually or writing custom API scripts to make happen. Today’s updates are giving us a beautiful indication of what might be next!

What will you build?

Share This Post

LinkedIn
Twitter
Email

Get 🔥 Notion tips in your inbox

When you sign up, you’ll get tips, perspectives, and opinions on how you can better use Notion. Plus you’ll get a steady drip of Notion updates, videos, interviews, and resources from the Notion Mastery team.

Master your life and business workflows with Notion.