Teams Introduces New Attendance Reporting Dashboard

Data Held in Exchange Online Mailbox Available On-Screen and as CSV File

Message center notification MC260565 published on 7 June brings news about a new tab to reveal Teams meeting attendance details. Well, Microsoft calls it a “reporting dashboard,” but in reality, it’s just a way to take the attendance report data and present it in a nice format (Figure 1). Only a meeting organizer can see this information. The new tab is rolling out and should be available in all tenants by the end of June.

Reviewing the attendance report for a Teams meeting

Teams meeting attendance
Figure 1: Reviewing the attendance report for a Teams meeting

The feature works for both regular Teams meetings and webinars run as Teams meetings with the notable difference that information shown for webinars include the registration and attendance data, making it easy for webinar organizers to see how many registered attendees turned up, if any unregistered people attended, and so on.

Building on Existing Data

The attendance report is available after a meeting completes. However, before the existence of the Attendance tab, a meeting organizer had to download the information as a CSV file and use an application like Excel to view the content. Exactly the same data as shown in the attendance tab is available in the CSV file (Figure 2). It just looks nicer when viewed on-screen.

Teams attendance data exported in a CSV file
Figure 2: Teams attendance data exported in a CSV file

The ability to download attendance data to a CSV file remains useful as meeting organizers can load the information into whatever analysis program they wish to use for data slicing and dicing. For instance, webinar organizers could compare registration data to attendance data to look for clues why some registered attendees didn’t show up for an event.

Multiple Instances of Attendance Reports

People can join and leave meetings multiple times. When the organizer leaves a meeting, it finishes. However, the organizer can restart a meeting and people can rejoin it again. Each time the organizer starts a meeting, Teams generates a new version of the attendance report. All versions are available for viewing through a drop-down menu (Figure 3).

Multiple instances of a meeting generate multiple versions of the attendance report
Figure 3: Multiple instances of a meeting generate multiple versions of the attendance report

When downloading the CSV data for attendance report from meeting details, Teams uses data for the latest version of the meeting. To access earlier versions, go to the meeting chat and download the information for the desired instance of the meeting from there.

Where Teams Stores Meeting Attendance Data

It’s always interesting to track down where Teams stores the data used for reports (and could be important from a compliance perspective). In this case, using the MFCMAPI utility to snoop around the folders in the non-IPM (hidden) part of the Exchange Online mailbox of the meeting organizer, we find a folder called /ApplicationDataRoot/93c8660e-1330-4e40-8fda-fd27f9eafe10/AttendanceReportV3Collection. The folder holds mail items (messages), all with a MAPI property called ArtifactEntriesJsonBlob. In this property we can see information about attendees for a Teams meeting (Figure 4).

Teams attendance report data stored in Exchange Online
Figure 4: Teams attendance report data stored in Exchange Online

Other attendance data is stored in the NGCParticipantsActivityCollection folder under the same root. However, the data in the items in the AttendanceReportV3Collection folder are formatted in the way the information appears in the attendance report, so I think this (and the folder name) are clues to the source of the data.

You might ask why does Teams store the attendance data for meetings in Exchange Online? Teams, like other Microsoft 365 applications, already stores many different types of information in Exchange Online mailboxes, including compliance records for chats and channel conversations and the text for meeting transcripts. Storing Teams data in mailboxes makes it available for indexing and searching by Microsoft Search (according to MC260749, transcript text will soon be searchable). Storing Teams data like this is a good example of the Microsoft 365 substrate in action.

Fit and Finish Change

Shipping the GUI to display attendance data some months after launching the new format for the attendance report and introducing the capability to run a Teams meeting as a webinar looks like applying some fit and finish. There’s nothing wrong in that. It makes the lives of people who document how applications work more difficult, but the Office 365 for IT Pros team is up to the challenge!

31 Replies to “Teams Introduces New Attendance Reporting Dashboard”

  1. Ola my friend

    Perfect, thank you so much for this fantastic news, I follow you on LinkedIn and I have a great admiration in your posts that helps us so much.

    I have a question about information.

    My company by default blocks the option to collect attendance reports in teams meetings.
    This new way is how I get the report and how I can access this option as a Teams client and meeting creator, which way to access this function.

    Thank you very much

    1. If your company blocks the generation of attendance reports (through the meeting policy), Teams won’t generate the report and you won’t be able to access it.

  2. Hi Tony, thanks for this, great article. We have a requirement to get attendance data BEFORE the webinars finishes, is there a way we can achieve that? Thanks in advance for your reply.

  3. Hi Tony,
    I am unable to see “Attendance tab” on my teams window. I am trying get attendance,, I am the organiser, In the recurring event I am trying to extract for the month of June21. I am able to download few days, other days when i try to download, current day’s report gets generated. how can I see the history

  4. hi…my meeting lasted 2 hours and 20 minutes, but the attendees are only shown to be in the meeting for 35 minutes. any idea why this happened? thank you

    1. The time shown is when participants join and leave the meeting as noted by Teams. If there’s a problem here, you should report it to Microsoft.

  5. Hi Tony,

    Thank you for this amazing article, I would like to know that recently I being the organizer, downloaded the attendance list during the meeting having 130 attendees, however the list showed only partial list of attendees, means some participants who joined, their name is not reflecting in the list, so any idea why is this happening?

    Thanking you

    1. I have no idea. It’s impossible for me to know because I have no information about how the meeting was run, the roles people had, and how they joined.

      1. The meeting was scheduled in the general channel of the team and therefore started at the scheduled time, all the attendees there, were the members of the team, some of them joined from the join button reflecting in the general channel itself but some of them joined through link because they say that join button doesn’t reflect in their teams.

        Does that make difference?

  6. Hi the attendance report shows a default date format of English US (mm/dd/yyyy) is there a way to change this to show English UK (dd/mm/yyyy) as a default?

    1. I think the date format comes from the language the client is configured in. I could be wrong…

      I just downloaded an attendance report and it shows UK dates (I am in Ireland).

      Meeting Start Time 24/08/2021, 13:46:06
      Meeting End Time 24/08/2021, 13:47:27

      1. Hello Tony

        Can we download teams meeting participant list older than 30 days. in admin center i can only download 30 days old meeting participant list.

      2. The meeting organizer can get information for a meeting for as long as the meeting is in their calendar. Getting the data from the TAC is limited. I don’t know why, but it is.

    1. That will be up to your organization’s data controller to decide. In general, GDPR means that the PII data from external attendees to webinars can be retained, but only with a valid business reason and for a limited time.

  7. Great article – thank you. Have you had any success with automating the export of attendance data?

  8. Is there any way to add another person(s) to be able to access the attendance report without being the organizer of the meeting?

  9. Do you have any suggestions on how to merge multiple meetingAttendanceReports into one data set ?

  10. Hi – when I download the attendance report, there is 2 sets of data. They look exactly the same, but the second set of data is headed ‘in meetings activities’ – what does that mean?

  11. Hi, thank you so much for this fantastic article.
    Is it possible to using power automate to download the attendance report and store into the SharePoint folder?

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.