Creating Approval Workflows Using Google Sheets and Forms/Apps Script

Setting up approval workflows using Google Sheets, Forms, and Apps Script is a simple and powerful way to streamline decisions in your team or organization. Whether you’re managing leave requests, purchase approvals, or content submissions, having a structured system helps everyone stay informed and accountable. With a bit of setup, you can automate notifications, track responses, and log approvals — all without needing complex software.

In this guide, we’ll walk through a real-world example of creating a leave approval system using Google Forms, Sheets, and Apps Script. Don’t worry if you’re new — we’ll explain each step like we’re walking through it with a friend!

Creating Approval Workflows Using Google Sheets and Forms/Apps Script

Why Use Google Sheets for Approval Workflows?

Approval workflows are simply a process where someone requests something, and someone else approves or denies it. Google Sheets works great for this because:

  • It’s free and cloud-based
  • It integrates seamlessly with Google Forms for input and Apps Script for automation
  • It keeps everything logged and timestamped in one place

Real-Life Scenario: Leave Request Approval

Let’s say your team wants to digitize its leave request process. Right now, people email or message their manager, which often gets lost or delayed. With a simple Google Form linked to a Sheet and an automated script, requests can go straight to the manager’s inbox with one click to approve or reject — and the Sheet keeps track of it all.

Sample Leave Request Table

Employee Name Leave Start Leave End Status Manager Response
Jane Doe 2025-05-01 2025-05-03 Pending
John Smith 2025-05-10 2025-05-12 Approved Approved by Alice

Step-by-Step: Creating an Approval Workflow

1. Create the Google Form

  • Go to Google Forms and click Blank.
  • Add questions like: Name, Email, Leave Start Date, Leave End Date, Reason for Leave.
  • Link your form to a Google Sheet (click Responses > Link to Sheets).

2. Set Up the Google Sheet

  • Open the linked Sheet. You’ll see form responses flowing in automatically.
  • Add new columns like Status and Manager Response next to the form data.

3. Add an Apps Script to Automate Notifications

  1. Click Extensions > Apps Script in the Sheet.
  2. Paste this sample code:
function sendApprovalEmail(e) {
  const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Form Responses 1");
  const lastRow = sheet.getLastRow();
  const row = sheet.getRange(lastRow, 1, 1, sheet.getLastColumn()).getValues()[0];
  const name = row[0];
  const email = row[1];
  const startDate = row[2];
  const endDate = row[3];

  const subject = `Leave Request from ${name}`;
  const body = `Leave Request Details:
  
Name: ${name}
Start Date: ${startDate}
End Date: ${endDate}

Approve: https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID/edit#gid=0
`;

  MailApp.sendEmail("manager@example.com", subject, body);
}

function onFormSubmit(e) {
  sendApprovalEmail(e);
}
  1. Save and name the project.
  2. Click the clock icon (Triggers) and set onFormSubmit to run on form submission.

4. Update Approval Status Manually

When the manager checks the Sheet, they can update the Status column with “Approved” or “Rejected.” This way, everything stays tracked in one place.

Key Benefits of Using This Workflow

  • Centralized system: All requests and decisions in one Sheet
  • Automatic alerts: No more lost requests in email threads
  • Transparency: Employees can check status anytime
  • Scalable: Works for small teams or entire departments

Pro Tips

  • Use data validation in Sheets to limit status options (Approved, Rejected, Pending)
  • Use conditional formatting to color-code rows based on approval status
  • Create separate tabs for archived or completed requests

Cheat Sheet: Approval Workflow Setup

Step Action
1 Create a Google Form to collect requests
2 Link the form to a Google Sheet
3 Add “Status” and “Response” columns in the Sheet
4 Write Apps Script to email the manager on submission
5 Manager reviews Sheet and updates status

Automating approvals with Google Sheets, Forms, and Apps Script is a beginner-friendly way to stay organized and responsive without investing in expensive tools. With just a few simple steps, you can build workflows that notify managers, track statuses, and keep teams informed. It’s efficient, flexible, and perfect for anyone looking to bring structure to everyday tasks.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top