Ask Zac
integrations intermediate 15 minutes

How to Save Zoom Recordings to Google Drive

Step-by-step guide to automating Zoom cloud recording uploads to Google Drive — Zapier automation, custom webhook with Apps Script, folder structure, and retention management.

Published February 26, 2026

Zoom stores cloud recordings in its own cloud storage, but many organizations need recordings in Google Drive — for centralized file management, shared drive access, retention policies, or compliance. This guide covers two approaches: a no-code Zapier automation and a custom webhook integration using Google Apps Script.

For the complete picture of all Zoom + Google integrations, see the Complete Guide to Zoom and Google Workspace.

Prerequisites

  • Zoom paid plan with cloud recording enabled
  • Google Workspace with Google Drive
  • Zapier account (for Option 1) or Google Apps Script access (for Option 2)

Option 1: Zapier (No-Code, 10 Minutes)

The fastest way to get recordings into Google Drive.

Step 1: Create the Zap

  1. Sign in to Zapier.
  2. Click Create Zap.
  3. Trigger: Search for Zoom > select Recording Completed.
  4. Connect your Zoom account (authorize via OAuth).
  5. Action: Search for Google Drive > select Upload File.
  6. Connect your Google account.

Step 2: Configure the Upload

Map these fields in the Google Drive upload action:

FieldValue
DriveSelect your Google Drive (or a shared drive)
FolderChoose or create the destination folder
FileMap to the Zoom recording download URL
File NameUse Zoom’s meeting topic + date (e.g., {{topic}} - {{start_time}})
Convert to Google formatNo (keep as MP4/M4A)

Step 3: Add a Filter (Optional)

To only upload certain recordings:

  1. Add a Filter step between the trigger and action.
  2. Examples:
    • Only upload recordings longer than 5 minutes (skip accidental short recordings)
    • Only upload recordings from specific hosts or meeting types
    • Only upload video files (skip audio-only or chat transcripts)

Step 4: Test and Enable

  1. Click Test — Zapier uses your most recent recording as sample data.
  2. Verify the file appears in your Google Drive folder.
  3. Turn the Zap On.

Every future cloud recording will automatically upload to Google Drive.

Zapier Pricing Note

The free Zapier plan supports basic Zaps with limited tasks per month. If your organization generates many recordings, you may need a paid Zapier plan. Check Zapier pricing for current limits.

Option 2: Custom Webhook + Google Apps Script

For more control and no third-party dependency. This keeps everything within Google’s ecosystem.

Step 1: Create the Apps Script Web App

  1. Go to Google Apps Script.
  2. Create a new project.
  3. Replace the default code with a script that:
    • Receives the Zoom webhook payload
    • Extracts the recording download URL and meeting details
    • Downloads the recording file using the Zoom download token
    • Saves it to a specified Google Drive folder

Key considerations:

  • The Zoom recording.completed webhook includes a download_token that’s valid for a limited time
  • Apps Script has a 6-minute execution timeout — large recordings may need a different approach (Cloud Functions)
  • Use UrlFetchApp.fetch() to download the recording and DriveApp or the Drive API to save it

Step 2: Deploy as Web App

  1. In Apps Script, click Deploy > New deployment.
  2. Select Web app.
  3. Set Execute as: your Google account (so it has Drive access).
  4. Set Who has access: Anyone (so Zoom’s webhook can reach it).
  5. Click Deploy and copy the web app URL.

Step 3: Create the Zoom Webhook

  1. Go to the Zoom App Marketplace > Build App.
  2. Choose Webhook Only app type.
  3. Under Event Subscriptions, add a subscription:
    • Event type: recording.completed
    • Notification endpoint URL: Paste your Apps Script web app URL
  4. Activate the app.

Step 4: Verify the Integration

  1. Record a test Zoom meeting (keep it short — 1-2 minutes).
  2. End the meeting and wait for cloud recording to process.
  3. Check your Google Drive folder — the recording should appear within a few minutes.
  4. Check the Apps Script execution logs for any errors.

Folder Organization

Set up a consistent folder structure in Google Drive:

Zoom Recordings/
├── 2026/
│   ├── 01-January/
│   ├── 02-February/
│   └── ...
├── By Host/
│   ├── jane.doe@company.com/
│   └── john.smith@company.com/
└── By Department/
    ├── Sales/
    └── Engineering/

In Zapier: Use dynamic folder paths based on the recording date or host email.

In Apps Script: Create folders programmatically based on meeting metadata.

Retention and Cleanup

Google Drive Retention

Set retention policies on the recordings folder:

  1. In Google Workspace, use Google Vault to set retention rules on the Drive folder.
  2. Or use a scheduled Apps Script to delete recordings older than your retention period.

Zoom Cloud Storage

After recordings are safely in Google Drive, consider deleting them from Zoom’s cloud to free up storage:

  • Manual: Delete recordings in Zoom’s recording management
  • Automated: Add a Zapier step or Apps Script function to delete the Zoom recording via API after confirming the Google Drive upload succeeded

Common Issues

  • Recording not appearing in Google Drive — Check the Zapier task history or Apps Script execution logs. The most common issue is an expired Zoom download token (the file must be downloaded within the token’s validity period). Ensure the automation runs promptly after the trigger fires.
  • File appears but is 0 bytes — The download URL may have expired before the file was fetched. Reduce any delays between trigger and download. In Apps Script, download the file immediately in the webhook handler, not in a deferred task.
  • Google Drive quota exceeded — Video recordings are large (100MB-1GB+ per hour). Monitor Drive storage usage and archive or delete old recordings. Consider using a shared drive with more storage allocation.
  • Apps Script timeout on large recordings — Apps Script has a 6-minute execution limit. Recordings over ~500MB may fail. For large files, use Google Cloud Functions (which have longer timeouts) instead of Apps Script. Or use Zapier, which handles large file transfers.
  • Duplicate recordings — If the webhook fires multiple times (Zoom retries on failed delivery), you may get duplicate files. Add deduplication logic: check if a file with the same meeting ID already exists in the folder before uploading.

Frequently Asked Questions

Can Zoom save recordings directly to Google Drive?

No, Zoom doesn't have a native Google Drive integration for recordings. Cloud recordings are stored in Zoom's own cloud storage. To get recordings into Google Drive, use an automation tool like Zapier, or build a custom integration using Zoom webhooks and Google Apps Script.

What's the easiest way to get Zoom recordings into Google Drive?

Zapier is the simplest option. Create a Zap with trigger 'Zoom: Recording Completed' and action 'Google Drive: Upload File.' Map the recording download URL, set the destination folder, and it runs automatically for every recording. Takes about 10 minutes to set up.

Can I save recordings to a shared Google Drive instead of My Drive?

Yes. Both Zapier and the Apps Script approach support shared drives (Team Drives). When configuring the destination, select the shared drive and folder. Ensure the service account or connected Google account has write access to the shared drive.

Does this work with Zoom Phone call recordings too?

Yes. Zoom Phone call recordings trigger the same 'recording.completed' webhook event as meeting recordings. The automation works for both. You can add a filter step to route phone recordings to a different folder than meeting recordings.

Need help configuring this?

Ask Zac can walk you through the setup step by step, or configure it for you automatically.

Try Ask Zac →