Introduction
Finding the right Attendance tracking software for your Institution can be challenging. Each platform has its own unique benefits and drawbacks. If your Institution uses Moodle, or is considering using it to track attendance university-wide, this blog is for you. We’ll cover why using your existing LMS for attendance tracking has clear benefits. But also where certain limitations lie and how to get around them. In this series, we also look at attendance tracking in Canvas, Blackboard, and Brightspace.
How attendance tracking works in Moodle
Before we look at Moodle specifically, it helps to define what a good attendance system actually needs to do. Building on our guide to choosing attendance tracking software, we’ll focus on four key criteria. A good system should be:

- Fast and easy to use: taking attendance shouldn’t eat into teaching time.
- Accurate: records should reflect who was actually there and be hard to fake.
- Flexible: it should work for a seminar of 15 and a lecture of 300, in person or hybrid.
- Reliable in its reporting: it should produce clean data that’s useful beyond the classroom, for advisors, programme leads or compliance.
With that in mind, let’s analyse how Moodle’s attendance tracking tool performs across these metrics. The first thing to know is that attendance tracking isn’t a core Moodle feature. It comes from the Attendance plugin, which is a free, community-maintained add-on that your Moodle administrator needs to install. Once it’s installed, teachers can add “Attendance” as an activity to their course, just like a quiz or an assignment, and manage all sessions and records from there. This is great particularly for less tech-savvy teachers because it causes less friction than using a separate attendance tool. The plugin also works in the official Moodle mobile app, so teachers and students aren’t tied to a desktop.
Setting up sessions and statuses
Setting up sessions is central to attendance tracking, and the process seems to work well in Moodle. You can create them one by one. But for a regular timetable, the recurring option is the most important time saver every attendance tracker needs to have. In Moodle, you can pick the weekdays, the interval, and an end date, and it generates the whole semester in one go. Each session is marked with a set of statuses. By default, these are Present, Absent, Late, and Excused, and each has a point value that feeds into the student’s attendance score. Explaining the whole process would be out of the scope of this blog therefore we recommend reading St. Olaf and Carleton’s guide to setting up the Moodle Attendance activity for a step-by-step walkthrough with screenshots.
One more tip: it is recommended to agree on one status set across your department before the semester starts. If every teacher invents their own version of “Late”, the data quickly becomes impossible to compare.
Taking attendance
In the Moodle plug-in, there are two ways to record attendance. In the first, the teacher opens the session and marks each student by hand. That works fine in a seminar of 15, but it is much slower than other options and becomes incredibly tedious in a lecture hall of 150. The second option is self-marking, where the teacher shares a session password, and students log in to Moodle and mark themselves present. To make this smoother, Moodle can display a QR code that opens the attendance page with the password already filled in. It can also rotate the code at short intervals, so a photo of the screen doesn’t stay valid for long. If you want an extra layer of control, you can block several check-ins from the same IP address within a set time window, so students can at least not check in directly on their phone for their friends. It is certainly a convenient and fast setup, but it has its security shortcomings, which we will discuss in the next section of the blog.
Reports and grades
So after recording the attendance, the plugin can generate reports for the entire class or for individual students; you can filter this by week or month. Then the records can be exported to Excel or as a text file for further processing. If attendance counts toward the final grade at your institution, the plugin can also generate an attendance grade for the Moodle gradebook, based on the point values you assigned to each status. Keep in mind that all of this lives inside a single Attendance activity. Getting a picture across a whole programme or faculty means combining the exports yourself. This process in particular can become challenging in a big institution.
Where Moodle falls short
Overall, Moodle’s Attendance plugin gets a lot of things right. Setting up a semester’s worth of sessions is quick, the plug-in is well integrated into the Moodle ecosystem, feels intuitive to use, and there have not been many complaints you can find online about technical unreliability. The main criticism would be its accuracy and reporting, which are crucial for determining grades, funding, or compliance.
Accuracy
As mentioned above, self-marking comes with security shortcomings. Whether the student signs in through a password or a QR code, neither of them takes into account the possibility of simply sharing it through a messenger App. This is confirmed in the Moodle Forums by a lecturer with that exact complaint of students sharing the QR codes through WhatsApp. Rotating QR codes make this harder, but not impossible: another teacher described students scanning the code for their classmates, and even the plugin’s maintainer admitted that “the students will probably find a way around it.”
The IP restriction mentioned earlier has a catch too. An IP address usually identifies the network, not the device. On shared campus Wi-Fi like eduroam, hundreds of students can appear to have the same address, so the setting blocks honest students as well, which is why some universities advise turning it off. And it never stopped the student at home in the first place, since their home network has a different address anyway.
Reliability in its reporting
Because every report lives inside a single Attendance activity, Moodle answers “who missed my Tuesday lecture?” well, but struggles with the bigger questions. How does attendance compare across my courses? Which students are missing classes everywhere, not just in mine? For programme leads, student advisors, or international offices that need to monitor visa compliance, those are exactly the questions that matter. In Moodle, answering them means collecting exports from every course and merging them by hand. In practice, that often means warning signs get noticed too late, or not at all.
How to get around the deficiencies
Neither of these problems is unique to Moodle. Any system that relies on a code students can pass on will run into the same issue, and any tool that keeps data inside one course will make the bigger picture hard to see. That’s the gap that the Attendance Radar (AR) integration for Moodle was designed to fill. Instead of giving out a Code or QR code, which are quite easy to share with classmates at home, AR uses a Bluetooth signal sent from the teacher’s phone. So students can only check in when they’re within range of that signal. Importantly, each device can only check in once per session; because this is tied to the device rather than the network, it works just as well on a crowded eduroam connection. There is also the fallback available for online or hybrid sessions, with a six-digit code.

The second major drawback the Attendance Radar integration focuses on is to improve the reporting sufficiency. Attendance Radar shows how attendance develops from session to session, lets you compare attendance across your courses, and gives you the average attendance of each student. You can export everything into a single Excel summary sheet rather than one file per course. Universities can also use our API to push attendance records automatically into their own systems. So programme leads and international offices can analyse attendance centrally without merging exports by hand.
