15 min read

How automations work and what they do

Let Coda manage your repetitive tasks.

Do less busy work. Boost efficiency.

We’re surrounded by repetitive tasks: sending out meeting notes, recurring tasks, sending reminders, updating status, and the list goes on. With Coda’s automations, you can do more than just manipulate how you see the information in a doc. You can put your repetitive tasks on autopilot—you can change the content of a doc and take actions.You can, in essence, make your doc a responsive, customized piece of software, for whatever your use case. In other words, you can build exact solutions for your least favorite and/or hyper-specific chores, be they:
  • Automatically handing off tasks from one team to another.
  • Notifying the same two people every week before the team meeting.
  • Reminding yourself to water the office plants.
  • Sending a welcome message after a potential client fills out an intake form.
  • Send a summary of meeting notes as a follow up.
In this guide, we’ll walk through how to think about automations and how to build the most common (and helpful!) automations, so you can start saving time right away.

What’s in here

What you’ll get in this guide:
  • An introduction to automations.
  • Step-by-step instructions to build the most common automations.
  • An exploration of common automation-related mistakes.
  • Steps for troubleshooting errors.
Features you’ll use in this guide:
  • Automations
  • Step 1 Result
  • Packs

1. The structure of an automation.

Coda automations have two required parts: when and then. By understanding these two parts of an automation, you’ll be on your way to giving your doc the rules it needs to do your repetitive tasks for you

1. When triggers Coda to start the automation.

You can choose from:
  • Row changed: The automation will start when a column in a row changes.
  • Time-based: The automation will begin on a certain day of the week at a certain time.
  • Form submitted: The automation will begin when someone submits a form to a table.
  • Webhook invoked: The automation will begin when a POST request is made to the URL you choose.

2. Then is the action you want Coda to take when the automation is triggered. These results run the gamut:

  • Making changes to tables by adding, modifying, deleting, or duplicating rows.
  • Duplicating pages.
  • Pushing buttons and changing control values.
  • Manipulating the data you’re receiving from other sources via Pack actions.
  • Notifying people in the doc through Coda’s notification tool or other sources like Slack and Gmail.

3. While Coda requires a when and then, you can customize automations even further by adding:

  • If is a condition that determines whether or not the automation continues once triggered.
  • And Then can include multiple results in sequence after an automation is triggered. You have access to the same results as the standard then menu. You can add as many and then’s as you like.

4. The last step of building an automation is deciding who should be taking the action.

You can choose yourself if you want it to have your name associated or the generic Automation Bot for a more general approach. Note: Some Packs require you to take actions as yourself.
Now that you got the structure of an automation down, let’s put all those whens and thens to work. Here are a few ways you can use automations.

2. Example: Notify teammates.

One of the most common type of automations is a notification. As we go about our day, as things change we might want to make sure our teams are aware. Let’s walk through this simple automation.

Table structure:

For this automation, we just need a single table with a column that can signal a status change. In this case, there is a completed checkbox column.

The components:

  • When: The Completed? column for a row changes in the table Party Planning table.
  • If: The value of the Completed? column of the changed row is checked, in other words, equal to true.
  • Then: Post a celebratory message to the team. When you choose Notify user, you can select from a few options:
    • Sending a Coda notification.
      • Or, using a Pack like Slack, Gmail, or Teams.
      • For this automation we’re posting the message to the “general” Slack channel under Mary’s name.
  • Since we want to customize the message with the completed task’s name, we’ll use the Step 1 Result to craft the message. By typing "Step 1 Result.Task", Coda will only pull out the name of the task rather than the entire row’s details. This makes for a cleaner look and feel when the message arrives in Slack.

3. Example: Remind people when a task is overdue.

Sometimes we need to send reminders about overdue tasks. So in this automation example, we’ll combine both time and If conditions.

Table structure

For this automation, we have a single table with a due date column, a people column, a status column, and a button column.

The components

  • When: Rather than a row-changed trigger, we choose the time-based trigger so Coda checks for overdue tasks every day at 10 AM.
  • Then: Press the notify button.

The Button

The magic of this automation is in the button configuration. If you prefer, you could write a formula to notify, but the button gives a bit of a shortcut. Under the button options, you can configure it to notify people. The button has the following settings:
  • Action: Notify user.
  • To: Task owner of this row.
  • Message: "The following task is overdue "+ [thisRow.Task]
  • Disable If: The due date is after Today() and the Status is not done.
Now every day at 10:00am Coda will check to see if the button is turned on. If it is, Coda will push it and send out notifications to every overdue task owner.

4. Example: Send emails when a form is submitted.

People who fill out forms will see a confirmation message from Coda, but sometimes we want to provide even more of a follow-up. Enter the form automation.

Table structure:

All you need to get started with this automation is a Coda form with a field for the person’s email. Create a table with these columns, and then click Options on the upper right hand of the table. From here click the three-dot menu in the right-hand panel and then select form.

The components:

When: The trigger for this automation is Form submitted. If: For this automation, you won’t use an if condition.
Then: Choose the Send Email option once you connect the Gmail Pack.
  • Account: User’s private Gmail account. This will use your email as the sender.
  • To: [Step 1 Result].[Email]
  • Subject: Whatever text you’d like to include
  • Content: You can include a custom message here. Remember that you can use Step 1 Result to reference what they entered into the form.

5. Common mistakes.

Now that you understand the structure of an automation, let’s review some of the most common mistakes new automation builders make so you can avoid them.

Mistake #1: Not turning an automation on.

It may seem silly, but an automation needs to be turned on in order to work. Make sure you’ve toggled on the automation.

Mistake #2: Not selecting the column in the trigger.

If you choose to start an automation with a row changed trigger, make sure to select the column that you’re interested in. Otherwise the automation will run any time any part of a row changes. For example, if you only want the automation to run when a task’s status column changes, make sure to choose that column in the dropdown menu.

Mistake #3: Not using Step 1 Result.

If you want to add an if condition or build a message using the details from the rows that meet the criteria of your when trigger, you’ll need to use Step 1 Result in your formula.

6. Troubleshooting automations

Here’s how to figure out why an automation isn’t working.

Tip #1: Use the test function.

After you build your automation, you can press the test rule button to make sure each of your steps is configured correctly. When you run the test, look for:
  • Green check marks, which means the automation can move forward.
  • The results let you see what each step returns to make sure that the automation is picking up the right information.
Tip: For row change automations, the best way to test is by turning on the automation and doing a manual test.

Tip #2: Check the activity menu.

The activity menu is the audit trail of every time the automation runs (including tests). If there was an error, you’ll see a red exclamation mark. You can click on any of those entries to see more details. This will help you know where to make corrections. In this example, the error occurs because of the lack of Step 1 Result. Coda is expecting a row for this to automation to continue, but the automation builder has just included a text value instead.

Tip #3: Break it down.

If you have a big automation, try building step-by-step and test at each one. This will help you figure out which part of the automation is failing.

Now what?

Now that you have an idea of what automations can do, it’s time to think about where you would like to save some time. Think about what repetitive tasks currently fill up your day. Chances are, you can automate!

Was this helpful?