Zoom attendance tracking with automatic no-show follow-ups

By General Input

Every evening we compare who signed up for your Zoom sessions with who actually turned up, log it all in a spreadsheet, and email the people who missed it.

Integrations

  • Zoom
  • Google Sheets
  • Gmail

Type

Agentic Task

Categories

  • Operations

Every day at 6pm, reconcile who registered for my Zoom sessions against who actually showed up, log the result in Google Sheets, and chase the people who missed it.

Start in Zoom with List Meetings using the previous meetings filter, and keep only the sessions that ended today. Skip any meeting that did not have registration enabled, since there is no registrant list to compare against. If List Meeting Registrants comes back empty or unavailable for a meeting, treat that meeting as skipped and move on to the next one.

For each remaining session, pull two lists: List Meeting Registrants for who signed up, and List Past Meeting Participants for who actually joined. Use Get Past Meeting Details for the topic, start time and duration. Zoom meeting UUIDs sometimes contain a leading slash, so double URL encode the UUID before using it in a request, and treat all meeting IDs as strings rather than numbers.

Matching rules. Match a registrant to a participant by email address first, comparing lowercased and trimmed. When a participant record has no email on it, fall back to matching on display name, again case insensitive and trimmed. Zoom writes a separate participant row every time somebody rejoins, so sum every row belonging to the same person into a single total before judging attendance.

Attendance threshold. Count someone as attended only if their total time in the session is at least 10 minutes. A 30 second join does not count. Everyone else is a no-show, whether they never joined at all or dropped out early. The minutes present figure is what tells those two cases apart, so always record it even when it is zero.

Logging. Append one row per registrant to my attendance Google Sheet using Append Values, with the session name, the session date, the person's name, their email, attended or no-show, and minutes present. Before appending anything, read the rows already in the sheet and skip any registrant that is already logged for that session, so a rerun never writes duplicates.

Follow up. Send each no-show one short, warm Gmail message that names the session they missed, offers the recording, and points them at the next available date. If a cloud recording exists for that session, fetch the share link with List Meeting Recordings and include it; if there is no recording yet, say it is on its way. For the next date, run List Meetings again with the upcoming filter and pick the next scheduled session with the same topic. If nothing is scheduled, invite them to reply and say you will let them know once the next one is booked.

One email per person per session, so nobody gets chased twice. The spreadsheet is the ledger: if a registrant already had a row for this session before this run started, they have already been contacted and should not be emailed again. Keep the tone friendly and brief, three or four sentences, no guilt trip.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageWin back LiveChat visitors whose chats went unansweredLet support send one-off Loops emails without an engineerStop cold emails to anyone with a live deal in PipedriveiMessage campaign console with pre-flight checks and delivery boardLinkedIn Ads budget pacing dashboard for every client accountFront desk appointment confirmation board for the next 3 daysGive your team Looker numbers without buying more seatsBuild audience segments from product usage and push to Loops