Skip to content

Key Concepts

AttendFlow uses a few key terms and concepts. Understanding these will help you use the app effectively and interpret your attendance records.

Attendance Records are the permanent, exportable output of a meeting. They capture:

  • Who attended: Full participant list with names and person IDs.
  • Timeline (Events): When each person joined, left, and re-joined.
  • Status outcomes: Whether each person was full present, seen, late, absent, left early, returned, or marked as a guest.
  • Manual attendance records (optional): Manual checkpoints you capture during the meeting.
  • Metadata: Meeting ID, start time, duration, mode (generic or roster), and reconciliation notes.

After the meeting, you can export attendance records in JSON format (machine-readable, for import or archival) or CSV format (spreadsheet-ready, for reports).

See Attendance Records Management for browsing and exporting. See Attendance Records JSON Fields and Attendance Records CSV Columns for exact field and column definitions.

AttendFlow “Auto Attendance” feature has two operating modes, determined by whether you’ve want to use a roster.

In Generic Mode, AttendFlow simply tracks who is in the meeting and who left early.

  • No expectations: You’re not comparing against a roster, so everyone who shows up will be in the table, and there’s no concept of “absent” or “unmatched”.
  • Use case: Ad-hoc meetings, public seminars, or any context where you don’t have a pre-defined attendee list.

In Roster Mode, you have a predefined list of expected attendees (your roster). AttendFlow then compares meeting reality against expectations.

  • Expectations enforced: AttendFlow knows who should have been there, so it can label statuses like “Absent” (expected but never appeared), or “Unmatched” (showed up but not on roster).
  • Use case: Classroom attendance, certification courses, required organizational meetings, or any formal context where you have a defined attendee list.

Example:

  • Generic Mode: You see 50 people in the meeting. You export a list of all 50 with join/leave times.
  • Roster Mode: You have a roster of 60 expected attendees. After the meeting, you see that 48 were full present, 2 arrived late, 8 were absent, and 2 showed up but had no roster entry (unmatched guests).

See Generic Mode Workflow and Roster Mode Workflow for how to set up and use each.

Name Matching is the process of mapping Zoom display names (what people actually typed in Zoom) to canonical roster names (your official roster records).

Zoom display names are freeform—people type whatever they want. Your roster has clean, official names. Example:

Zoom Display NameCanonical Name (Roster)Match Status
john robertsJohann RobertsMatched
李明Li MingUnmatched
PM (Bob Smith)Bob SmithUnmatched

Without Name Matching, “john roberts” in Zoom and “Johann Roberts” in your roster look like two different people.

You create Name Matching rules (in the Settings Panel or in Meeting Panel with a Manual Name Match) that say: “Whenever you see Zoom name john roberts, treat it as Johann Roberts from the roster.” This bridges the gap between real-time Zoom names and your official records.

Once Name Matching is configured, Attendance Records become much more accurate:

  • Matched entries show the canonical roster name + metadata (person ID, group, etc.).
  • Unmatched entries (no rule found) are flagged so you can review them and add rules if needed.

See Name Matching Workflow to set up and refine your rules. See Technical Reference: Name Matching Import Fields for CSV format details.

An Attendance Profile is a set of rules that define how attendance is calculated for a specific meeting or meeting series.

  • Included subgroups: Which roster groups to expect (e.g., if your roster has “Team A”, “Team B”, and “Managers”, a specific profile might only expect “Team A”).
  • Late threshold: How many minutes after meeting start before someone is marked “Late” (e.g., 10 minutes).
  • Return window: How long someone can be away before re-joining is marked “Returned” vs. re-entry is ignored (e.g., 30 minutes).
  • Meeting hints (optional): Keywords to match Zoom Meeting Topics or IDs to auto-apply the profile.

You might create a profile called “Weekly Team Standup” with:

  • Included subgroups: “Team A”
  • Late threshold: 5 minutes
  • Return window: 15 minutes
  • Hints: “standup”, “weekly”

Then every time you run a meeting with “standup” or “weekly” in the title, this profile auto-applies, so anyone from Team A who joins after 5 minutes is marked “Late”, and anyone absent for more than 15 minutes is marked “Returned” if they re-join.

See Attendance Profiles Page to create and edit profiles. See Workflows to apply profiles to meetings.

During a live meeting, participants have real-time statuses. Understanding these helps you know what’s happening and what actions might be needed.

StatusMeaningNext Steps
Full PresentParticipant is in the meeting right now, is not late, has not been away beyond the return window.None needed; standard observation.
LateParticipant joined after the meeting start time + late threshold.Note the lateness; may affect attendance policy.
AbsentParticipant was expected (roster) but has never appeared in this meeting.Follow up during or after meeting.
Left EarlyParticipant was present at some point but left before the meeting end and is not currently present.Verify if early departure is expected.
ReturnedParticipant was away for longer than the return window, then came back.Note the re-attendance; may affect attendance policy.
SeenParticipant has been in the meeting at some point (even if currently absent).Useful for tracking overall engagement.
UnmatchedParticipant is in the meeting but no Name Matching rule exists to connect their Zoom name to a roster entry.Need to take action during the meeting and add Name Matching rule if needed.
GuestUnmatched participant, then explicitly marked as a guest (out-of-scope attendee).N/A

In Generic Mode (no roster), only simpler statuses apply:

  • Full Present
  • Late
  • Left Early
  • Returned
  • Seen

Statuses like Absent, Guest, and Unmatched require roster comparison to be meaningful.

Here’s how these concepts work together:

  1. You decide on a mode: Generic (no roster) or Roster (with roster file).
    1. You can still use Generic Mode if you have a roster. But you need Roster Mode to get the full power of roster-based statuses and Name Matching.
    2. You cannot use Roster Mode without entries in the roster.
  2. If Roster Mode: You create a roster and create Name Matching rules so Zoom names map to roster names.
  3. You create or select an attendance profile: This defines the attendance rules for this specific meeting (late threshold, return window, included groups).
  4. During the meeting: You monitor live statuses (Full Present, Late, Absent, etc.) and optionally take manual attendance records.
  5. After the meeting: You export Attendance Records, which capture the full timeline, final statuses, and metadata.
  6. Later (optional): You import Attendance Records into another system or archive for audit.