For teachers running virtual classes, team leads hosting standups, and HR staff running remote training, one Zoom feature quietly does a lot of heavy lifting: attendance reports. Instead of manually noting who showed up, hosts can pull a precise record of every participant — join times, leave times, and total duration — straight from the Zoom dashboard.
This guide covers exactly how to pull those reports, what the data means, and how to turn it into usable attendance records.
## What Zoom Attendance Reports Include
A Zoom attendance report for a meeting lists each participant alongside:
– **Join and leave times** for every session segment (participants who drop and rejoin appear with multiple rows).
– **Total duration** in the meeting, usually in minutes.
– **Email or login identifier**, depending on the account’s settings.
For webinars, a separate attendee report adds registration details. The usage report — available to account owners and admins — aggregates the same data across all meetings, which is useful for tracking attendance trends over a semester or quarter.
## Prerequisites: What You Need Before You Start
Reports are not available on every plan or to every role:
– **A Pro, Business, Education, or Enterprise account.** Basic (free) accounts have limited reporting — the meeting usage report generally requires a paid plan.
– **Host, co-host, or admin access.** Participants cannot pull reports; only the meeting host (or someone with admin rights on the account) can.
– **The meeting must have ended.** Reports generate after the session closes, typically within 30 minutes.
If reports are missing entirely, the account admin should check that usage reports are enabled under Account Management settings.
## Step-by-Step: Pulling a Meeting Attendance Report
### Step 1: Sign In to the Zoom Web Portal
Go to the Zoom web portal and sign in with the host account. The desktop app does not expose full reporting — this must be done in a browser.
### Step 2: Open Reports
In the left navigation, click **Reports**. If the account has usage-report access, this section shows meeting, webinar, and recording analytics.
### Step 3: Select Usage Reports
Click the **Usage Reports** tab, then choose **Meeting**. Set the date range to cover the session — the default view shows recent meetings, and the date picker handles older ones.
### Step 4: Find the Meeting and Open Participants
Locate the meeting in the list and click the participant count in the **Participants** column. This opens the detailed per-person breakdown.
### Step 5: Export the Data
Click **Export** to download the report as a CSV file. The spreadsheet contains one row per participant session with names, emails, join/leave times, and durations — ready for attendance computation.
## Turning the CSV Into Attendance Percentages
The raw export needs light processing before it becomes an attendance record:
1. **Deduplicate participants** who appear on multiple rows (rejoins) by summing their durations.
2. **Set the denominator** — the scheduled meeting length. A participant present for 50 of 60 minutes has 83% session attendance.
3. **Apply the attendance rule** — full credit above a threshold (many schools use 80–90% of session time), partial or absent below it.
4. **Feed the result** into the master register. Teachers who maintain a [Google Sheets attendance sheet](https://attendancepercentagecalc.com/how-to-make-an-attendance-sheet-in-google-sheets/) can paste the CSV directly and let formulas do the rest; the final percentage math is explained in [how to calculate attendance percentage](https://attendancepercentagecalc.com/how-to-calculate-attendance-percentage-2/).
## Webinar Attendance Reports
Webinar reports work similarly but include registration-source data — useful for distinguishing registrants who never attended from actual participants. Hosts should pull both the attendee report and the performance report: the former for names and times, the latter for engagement signals like poll responses.
## Common Problems and Fixes
**”I don’t see the Reports tab.”** The signed-in user lacks the required role. Ask the account owner or admin for reporting access, or have them pull the report.
**”The meeting isn’t listed.”** Check the date range, and confirm the meeting actually ended — reports do not generate for sessions still in progress. Allow up to 30 minutes after closing.
**”Participant names show as phone numbers.”** Dial-in participants appear by caller ID. Ask regulars to join with the app and a display name, or maintain a number-to-name mapping.
**”Durations look wrong.”** Participants who joined early sit in the waiting room — that time typically does not count toward duration. Only in-meeting time is recorded.
**”The export button is missing.”** Some Education and Enterprise accounts restrict exports by policy. The admin can enable it, or the on-screen table can be copied manually.
## Best Practices for Accurate Virtual Attendance
– **Require authenticated join** so every participant maps to a real identity instead of a display name someone typed.
– **Disable join-before-host** for classes where start-time presence matters.
– **Take a manual snapshot** at a random point as a cross-check against the report — technology glitches, and a backup takes ten seconds.
– **Communicate the rule in advance**: students who know that 50 of 60 minutes counts as present will manage their connections accordingly.
– **Archive reports monthly.** Zoom retains reporting data for a limited window depending on the plan; exports stored locally are permanent.
For broader context on running attendance across mixed in-person and virtual settings, see the guide to [tracking attendance with 7 methods](https://attendancepercentagecalc.com/how-to-track-attendance/).
## Privacy Notes Worth Knowing
Attendance reports contain personal data — names, emails, join patterns. Hosts should treat exports like any student or employee record: store them securely, share them only with people who need them, and follow institutional data-retention policies. Informing participants that attendance is recorded is both courteous and, in some jurisdictions, required.
## Automating Attendance With the Zoom API
Organizations running hundreds of sessions a week outgrow manual CSV exports. Zoom’s API exposes the same report data programmatically: a script can pull participant lists nightly, compute durations, apply the attendance rule, and write results straight into the student information system or HR database.
Setting this up requires developer time and an API credential from the Zoom marketplace, so it suits institutions rather than individual teachers. The realistic middle ground for most teams is a scheduled export plus a spreadsheet template with formulas — 90% of the benefit for 10% of the effort. The API route makes sense once the volume crosses roughly fifty sessions a week.
## Sample Virtual-Class Attendance Policy Wording
Teachers publishing expectations can adapt this:
> “Attendance is recorded from Zoom session reports. Students present for at least 80% of the scheduled session time are marked present; those below are marked absent for the session. Technical difficulties should be reported within 24 hours with a screenshot. Repeated connectivity issues will be addressed individually — please contact the instructor before they affect your record.”
Short, specific, and published before the first class prevents nearly all disputes.
## Zoom vs Teams vs Meet: Reporting Compared
| Platform | Report access | Export format | Scheduling automation |
|—|—|—|—|
| Zoom | Reports → Usage (paid plans) | CSV | API available |
| Microsoft Teams | Attendance report in-meeting + admin center | CSV/Excel | Power Automate connectors |
| Google Meet | Attendance tracking (Workspace Education/Enterprise) | Sheets | Apps Script |
The concepts transfer: whichever platform a school uses, the workflow is pull, deduplicate, apply the rule, archive.
## Building a Semester-Long Virtual Attendance System
One-off exports become powerful when systematized. Here is a weekly workflow teachers use across a full term:
– **After each session:** Export the CSV and file it in a dated folder. Thirty seconds while the meeting is fresh.
– **Friday:** Run the week’s files through the spreadsheet template — durations summed, percentages computed, flags raised for anyone below the session threshold.
– **Monthly:** Merge into the master register and reconcile against the school’s official system. Discrepancies get investigated while memories are fresh.
– **End of term:** Archive the semester folder with a summary sheet (sessions held, average attendance, chronic-absence flags). This becomes the evidence base for parent conferences and grade justifications.
The template itself needs only four columns beyond the raw data: total session minutes, minutes attended, percentage, and status flag. Conditional formatting turns the status column into an at-a-glance dashboard — green, amber, red.
## Training Checklist: Teaching Staff to Pull Reports
Rolling out Zoom attendance across a school or department fails most often at the training step, not the technology step. A 20-minute training session covering this checklist prevents the bulk of support tickets:
– [ ] Where the Reports tab lives and which role each staff member has.
– [ ] Setting the right date range before searching for a meeting.
– [ ] Opening the participant count to reach per-person detail.
– [ ] Exporting to CSV and where to save the file (naming convention: `YYYY-MM-DD_CourseCode_Session`).
– [ ] Deduplicating rejoins by summing durations.
– [ ] Applying the session rule (e.g., 80% of scheduled time = present).
– [ ] What to do when the numbers look wrong (waiting-room time, dial-in names, missing exports).
– [ ] Where the master register lives and the weekly filing deadline.
Pair the checklist with one worked example using a real past session. Staff who have completed the workflow once with guidance rarely need help again.
## Glossary: Zoom Reporting Terms
– **Host:** The licensed user who scheduled the meeting; has full reporting access.
– **Co-host:** Assigned during the meeting; shares hosting controls but reporting visibility depends on account role.
– **Participant:** Anyone who joins the session; appears in reports with join/leave times.
– **Registrant:** Someone who registered for a webinar; appears in registration reports whether or not they attended.
– **Waiting room:** The holding area before admission; time here does not count toward duration.
– **Breakout rooms:** Small-group splits within a meeting; time in breakouts counts toward total duration.
– **Usage report:** The meeting-level report with participants and durations.
– **Attendee report:** The webinar-level report with registration and engagement data.
## Frequently Asked Questions
### Can participants see the attendance report?
No. Reports are visible only to the host, co-hosts with appropriate permissions, and account admins. Participants cannot access each other’s attendance data.
### How far back do Zoom reports go?
Retention depends on the plan — typically several months for usage reports on paid plans. Export anything needed long-term; do not rely on the portal as an archive.
### Does Zoom count waiting-room time as attendance?
No. Duration is measured from when the participant actually joins the meeting session, not from when they enter the waiting room.
### Can attendance be automated instead of exported manually?
Yes. Zoom’s marketplace includes attendance-tracking integrations that push data directly into learning management systems, and the Zoom API supports programmatic report retrieval for organizations with developer resources. Full API documentation is at [developers.zoom.us](https://developers.zoom.us/docs/).
### What is the difference between a usage report and an attendee report?
Usage reports (meetings) show who joined and for how long. Attendee reports (webinars) add registration and engagement data. Choose based on the session type.
### Can hosts edit attendance data after export?
The portal data itself cannot be edited, which is actually a feature — it keeps the record trustworthy. Corrections (for example, a student wrongly marked by a glitch) belong in the school’s own register with a note, not in the Zoom export.
### Does Zoom track attention, or just presence?
Zoom’s attention-tracking feature was discontinued. Current reports measure presence and duration only — whether the meeting window was focused is no longer reported. Engagement must be judged from participation, polls, and chat instead.



