Ever wish your Google Sheet could do some of the work for you — like sending a reminder email, updating a dashboard, or moving data — without you clicking a thing? That’s exactly what Apps Script triggers are for! They let your script run automatically, based on a schedule or an action like editing a cell. If you’re just starting out with Google Sheets, learning how to use these triggers can save you tons of time and manual effort. Let’s break it down in a simple, beginner-friendly way.
What Are Apps Script Triggers?
Apps Script triggers are tools that tell your code when to run — either based on time (like every day at 9 AM) or actions (like opening the file or editing a cell). You don’t need to click a button — it just happens in the background. Pretty neat, right?
Two Types of Triggers
- Time-Driven Triggers: Run scripts on a schedule — like every hour, daily, or weekly.
- Event-Driven Triggers: Run scripts when something happens — like someone opens the sheet or edits a cell.
Why Use Triggers in Google Sheets?
Imagine these benefits:
- Send automatic email reminders to your team.
- Backup your data daily without lifting a finger.
- Clean up or reformat data every time someone edits the sheet.
- Automate reports — no more manual copy-paste!
Real-Life Example: Daily Task Reminder Email
Let’s say you manage a small team using Google Sheets to track tasks. Every morning, you want an email listing all tasks that are still “Pending.” You can set up a time-driven trigger to send that email daily without any manual steps.
Sample Sheet: Task Tracker
Task | Assigned To | Status |
---|---|---|
Update Website | Alice | Pending |
Send Invoice | Bob | Completed |
How to Set Up a Time-Driven Trigger (Step-by-Step)
- Open your Google Sheet.
- Click Extensions > Apps Script.
- Paste your script (like sending an email based on sheet data).
- Click the clock icon on the left panel (Triggers).
- Click + Add Trigger.
- Choose the function you want to run.
- Select event source: Time-driven.
- Choose type: Day timer > 8am to 9am (or your preferred schedule).
- Click Save.
How to Set Up an Event-Driven Trigger
These run automatically when someone edits the sheet or opens it.
- In your Apps Script, write a function named
onEdit(e)
oronOpen()
. - These special function names are recognized by Google — no need to add a trigger manually.
Example: Automatically Highlight Overdue Tasks
function onEdit(e) {
var sheet = e.source.getActiveSheet();
var range = e.range;
if (range.getColumn() == 3 && range.getValue() === "Overdue") {
range.setFontColor("red").setFontWeight("bold");
}
}
Pro Tips for Using Triggers
- Only simple triggers like
onEdit()
andonOpen()
don’t need manual setup. - For sending emails or accessing other services, use an installable trigger (set up through the Triggers tab).
- Debug your function by running it manually first to check for errors.
- Check trigger logs under Apps Script Dashboard > Triggers if something goes wrong.
Trigger Cheat Sheet (Quick Reference)
Trigger Type | When It Runs | Setup Method |
---|---|---|
onOpen() |
Every time the spreadsheet is opened | Write a function named onOpen() |
onEdit(e) |
Every time a cell is edited | Write a function named onEdit(e) |
Time-driven | Scheduled (e.g., daily at 9 AM) | Set up via Triggers panel |
Form Submit | When a Google Form linked to a sheet is submitted | Set up via Triggers panel |
Triggers in Google Apps Script let your spreadsheet work for you — on autopilot. Whether you want to send emails every morning or instantly react to changes in your data, time-driven and event-driven triggers are your go-to tools. They’re simple to set up and powerful enough to handle everyday tasks.
Start small — try setting up a daily email or highlighting edits — and you’ll soon be automating like a pro. Happy scripting!