Back to AutomationsNonprofit

How a Google Script Slashed 20 Hours Per Fundraising Event

A custom Google Apps Script automated the end-to-end event workflow for a nonprofit, eliminating manual tasks across registration, communication, and follow-up.

December 26, 2025

Difficulty

Intermediate

Time Required

8-12 hours

Technologies

4 Tools

The Challenge

The nonprofit lost over 90 hours annually to manual processes like calendar updates, email outreach, and data entry, leading to delayed donor engagement.

The Solution

A single Google Apps Script was built to automate form responses, calendar invites, email confirmations, reminders, check-in tracking, and thank-you emails within Google Workspace.

The Outcome

Saved 20 hours per event—240 hours annually—while improving donor response time with same-day thank-yous and error-free data management.

Technologies Used
nonprofit fundraising event management systemGoogle Workspace automation for nonprofitsApps Script event registrationnonprofit donation tracking spreadsheet

How a Google Script Slashed 20 Hours Per Fundraising Event

The Grind Before Automation

Twelve events a year. Same chaos every time:

  • 3 hours/event rebuilding calendars and forms — 36 hours lost annually
  • 5 hours/event copy-pasting emails — 60 hours on manual outreach
  • Paper check-ins caused delays, errors, and double data entry
  • Thank-yous sent 3-5 days late — donors noticed
  • Data scattered across sheets — year-end reporting took days

Burnout was real. So was donor drop-off.

The Fix: One Script, Full Workflow

No third-party tools. No extra cost. Just Google Apps Script automating the entire event lifecycle — from registration to thank-you. Everything runs inside Google Workspace. Secure. Scalable. Silent.

How It Works (in 60 Seconds)

Submit form → auto-calendar invite + confirmation email.
7 days out → reminder. 1 day out → reminder.
Check-in live via Sheet.
24 hours post-event → thank-you with donation link.
All automatic. Zero clicks.

Build It: Tools & Setup

Required

  • OAuth Scopes:
    • https://www.googleapis.com/auth/calendar - manage events
    • https://www.googleapis.com/auth/gmail.send - send emails
    • https://www.googleapis.com/auth/spreadsheets - store data
  • Permissions: Google Workspace account, editor access to master Sheet
  • Config: Store settings in a Config tab or PropertiesServiceEventID, Title, Date, Capacity, CalendarID. No code changes needed for new events.

Core Script

// Pseudo code for the application 
FUNCTION onFormSubmit(event)
  TRY
    GET Registrant Sheet
    GET Submission Row Data [Name, Email, Title, Date]
    
    VALIDATE Data
    
    GET Calendar Event by Title & Date
    IF Event Not Found:
      CREATE Calendar Event
      
    ADD Email as Guest to Event
    
    SEND Confirmation Email
      SUBJECT: "Confirmed: {Title}"
      BODY: "Registered for {Date}..."
      
    UPDATE Sheet Status to "Confirmed"
    
  CATCH Error
    LOG Error to 'ErrorLog' Sheet
    THROW Error
END FUNCTION

Setup in 7 Steps

  1. Create master Sheet: Tabs — Registrants (Name, Email, Event, Date, Status), Events, ErrorLog
  2. Link Google Form: Match fields to columns. Set destination to master Sheet
  3. Deploy script: Extensions > Apps Script. Paste code. Authorize (click “Advanced” → “Go to [project]”)
  4. Install trigger: Triggers > Add trigger → onFormSubmit, “From spreadsheet”, “On form submit”
  5. Add reminders: Create sendReminderOneWeek and sendReminderOneDay. Use time-driven triggers (daily at 6 AM)
  6. Build check-in dashboard: Check-In tab with =FILTER(Registrants!A:E, Registrants!C:C=[Event Name]). Use onEdit to timestamp check-ins
  7. Set post-event emails: sendThankYou runs 24h after event. Include donation link. Trigger via time-based event

Fix Common Issues Fast

  • Script not running? Verify trigger setup. Check OAuth scopes. Look for error emails from apps-scripts-notifications@google.com
  • Emails failing? Quota: 100/day (Gmail), 1,500/day (Workspace). Gmail Quotas. Use BCC batching or upgrade. Retry from ErrorLog
  • Duplicates or missing guests? Script matches events by title + date. Enforce naming. Max 200 guests per event. Validate email format

Need This for Your Team?

Skip the weekend build. We’ll deploy it in your nonprofit by Friday — branded, tested, and team-trained.

Book a 30-minute call. Get a 30-day code warranty. If it breaks, we fix it — free.

Use Case 1: Automated Attendee Communication

A Google Script triggers personalized confirmation emails and calendar invites immediately upon form submission, replacing manual follow-ups for hundreds of guests. ROI: Saves 12 hours of administrative data entry and email correspondence per event.

Use Case 2: Real-Time Auction & Raffle Management

The script automatically calculates winning bids from a spreadsheet and randomly selects raffle winners based on weighted ticket quantities, instantly notifying winners via SMS or email. ROI: Reduces manual tallying and winner verification time by 5 hours.

Use Case 3: Instant Digital Tax Receipting

Upon payment confirmation, the script pulls donor data into a Google Doc template, converts it to a PDF, and emails the official tax receipt to the donor. ROI: Eliminates 3 hours of manual document creation and reduces clerical errors by 95%.

Related Industry Guides

Donation Tracking Automation | Mereth

Automate donation tracking with Google Workspace. Record donations, generate receipts, and create financial reports automatically.

Donor Management Automation | Mereth

Automate donor management with Google Workspace. Track donations, send thank-you letters, and manage donor communications efficiently.

Nonprofit Event Management Automation | Mereth

Automate event management with Google Workspace. Handle registrations, send reminders, and track attendance automatically.

Volunteer Coordination Automation | Mereth

Automate volunteer coordination with Google Workspace. Schedule shifts, track hours, and communicate with volunteers automatically.

Need a Custom Automation Solution?

We specialize in building tailored Google Workspace automations for businesses of all sizes. Let us help you eliminate repetitive tasks and streamline your workflows.