Why Attendance Data Looks Wrong

By the end of this article you will be able to explain any figure in an attendance report, including the ones that look like mistakes and are not.

The meeting is in your dashboard, but something in the report does not look right. Almost every case is one of the six below, and most of them are the report being correct in a way that is not obvious.

Scheduled Time Is Blank

You open a meeting and Scheduled time shows a dash, while Actual time is filled in.

This means the call did not come from a Google Calendar event. Somebody started a Meet directly, so there is no scheduled time to show and no invite list, which is why nobody is marked Absent. Present and Late are unaffected.

Everything else still works. You get actual times, durations and attendance percentages. What you lose is the scheduled versus actual comparison.

Meeting report with no scheduled time
A meeting started outside Calendar shows no scheduled time and no invitation status.

To get scheduled times, create the meeting from Google Calendar and use the Meet link on the event.

There Is No Invitation Column

The Participant logs table normally has an Invitation column showing Accepted, No response or Declined. Sometimes it is not there.

Invitation status comes from the calendar invite. No calendar event means no invitation data, so the column is hidden rather than filled with dashes.

Same fix: schedule from Google Calendar.

Someone Is Marked Late but Attendance Still Says 100%

This one looks like a bug and is not.

The ring at the top of a meeting answers "how many people attended", not "how many were on time". Late arrivals attended, so they count toward it.

The breakdown underneath the ring is where on time and late are separated. A meeting can honestly read 100% on the ring and 1 present, 3 late, 0 absent below it.

Attendance ring at 100% with late arrivals in the breakdown
The ring counts turnout; the breakdown underneath separates late from on time.

Read the ring for turnout and the breakdown for punctuality.

Someone's Duration Is Lower Than You Expected

Open the meeting, find the person, and click the arrow at the end of their row to expand the Activity timeline.

The timeline shows every join and leave with exact times. If they dropped out and came back, you will see all four events, and the time they were disconnected is not counted.

Attendance percentage is time connected divided by the length of the meeting. Somebody who was present the whole time but disconnected twice will be below 100%, and the timeline shows exactly why.

The Same Person Appears Twice

They joined with two different Google accounts, usually a work address and a personal one.

AttendKit identifies people by the Google account they signed in with, so those are two separate participants with two separate histories. Check the email column to confirm.

Ask the person to use one account consistently. Existing records cannot be merged.

The Present and Late Split Does Not Match Your Expectations

Statuses are set by your Late threshold, which is the number of minutes after the meeting actually started before someone counts as late.

The default is 10 minutes, so for a meeting scheduled at 10:00, someone who joins at 10:08 is Present and someone who joins at 10:12 is Late. You can set anything from 1 to 30 minutes under Tracking preferences in Settings.

Late threshold dropdown in Tracking preferences
Set the late threshold anywhere from 1 to 30 minutes.

A tight threshold suits exams and formal sessions. A longer one suits standups where people drift in.

Two things to know:

  • The threshold measures from the actual start, so late detection works even on calls started directly in Meet. Only Absent needs a Calendar event.
  • The threshold is applied when a report is displayed, so changing it re-evaluates past meetings as well as future ones. Files you have already exported keep the values they had when you downloaded them.

Frequently Asked Questions

How is attendance percentage calculated?

Time the person was connected, divided by the length of the meeting, across all their sessions.

Why is a participant marked Absent?

They were invited through Google Calendar and never joined. Without a calendar invite there is nobody to mark absent, because AttendKit only knows about people who turned up.

Can I change someone's status by hand?

No. Statuses come from recorded join and leave times. Adjust the late threshold if the rule is wrong for your meetings.

The actual duration is shorter than the scheduled duration.

Actual time runs from the first join to the last leave. A meeting booked for an hour that ran 52 minutes is recorded as it happened.

Someone joined before the start time. How are they counted?

As present. The threshold only marks people who arrive well after the meeting actually started.

Does the attendance percentage include time before the meeting officially began?

It is measured against the actual meeting window, from first join to last leave.

Still need help?Contact Support