Built-In Self-Entered Attendance


We have a university policy that requires that we take attendance every class.  The unique nature of this master's-level lab class means that I have 60+ students spread across multiple rooms.  It is neither practical nor desirable to stand in front of each room and take a roll call.  

We've worked around this by creating a simple one-question quiz ("Are you here?") that requires a daily pass code written on the whiteboard.  This works, but it would be vastly improved if Canvas supported this feature better.

Current challenges include:

  • You cannot duplicate a quiz in Canvas, so each quiz must be created manually.  The lab meets daily, which means that I have approximately 75 unique quizzes to create.  This is obviously time consuming and error prone.
  • Once created, the 75 quizzes blow out my grade sheet and make scrolling sluggish and glitchy.
  • Attendance isn't graded like a normal grade.  Students can accumulate a certain number of unexcused absences, and then, per policy, their grade drops by two levels (e.g. A- to a B, B+ to a B-, etc.) for each unexcused absence thereafter.  This means at the end of the term, I must export the attendance quizzes to Excel, calculate the thresholds and manually delete each of the 75 quizzes from Canvas.

So the better way would be a built-in module within Canvas that does the following:

  1. Lets me set up class days in Canvas (e.g. M-F, 9:30am-12:30pm from Sept 1 to Dec 1)
  2. Lets me set up attendance "quiz" open times (e.g. 9am), close times (e.g. 9:45am) and, optionally, tardy grace period (e.g. 15 mins) 
  3. Add holidays and no-class days
  4. Have Canvas autogenerate access codes for each class day
  5. Let me establish a grading policy (e.g. 5 unexcused absences, 2 letter grade drop thereafter)
  6. Lets the students log in and enter the attendance code from their phones or computers
  7. Lets me go in and mark absences or tardies as excused
  8. Lets students know how many unexcused absences they have remaining before taking a grade hit
  9. Rolls this up in a *single* column in the grade sheet

A fancy version of this feature would send out notifications and nag-o-grams to students.

I realize this is a highly specific requirement, but surely, ours is not the only program that works this way.  If you share this need, please upvote this feature idea.

Instructure Alumni
Instructure Alumni

Thanks for sharing this idea,  @sstringer1 ‌. It's open for voting. In the meantime, you might want to take advantage of the quiz duplication capability of the Quizzes.Next LTI: https://community.canvaslms.com/docs/DOC-11793-4152768840 

Community Novice

Thanks.  I do know how to duplicate an assignment, but these are quizzes which cannot be duplicated.

Instructure Alumni
Instructure Alumni

Yes—but unlike Canvas Quizzes, Quizzes.Next LTI quizzes are predicated on the assignment type, and those can be duplicated.

Community Novice

I had a similar idea for a large format (450 students), in-person class that I teach and thought I'd chime in with a variation on this idea. I don't want to spend a lot of time on attendance, and have solved this problem with mini-quizzes in smaller classes (up to 90) but I think the logistics of doing this each day in such a large class is prohibitive.

I do like the idea of rolling the attendance into some other kind of class activity though. If there was a way to issue a single-use code in the class to each student that I could incorporate into a quiz question that I could then check for duplicate answers (to discourage them sharing their code with a buddy - I could make a policy that using the same code among 2 or more students results in a 0 grade for the activity for anyone caught sharing) that might be close enough to workable. I can even write the python script to generate the unique single use codes, I would just need a smoother way to get them to be recognized as valid codes by a quiz. Some kind of question pool with these validation questions set up before the start of the semester would be ideal, so I could just draw a validation question and add it into a quiz.

Community Explorer

I agree with Silvia that there needs to be some kind of way to prevent students from texting their friends the password--which they will invariably do (some of them, anyway). 

Community Champion

If canvas generated those single use codes internally, then it could also recognize the specific code issued to a student as an accurate response for only that student.  (I wonder if something close to this is already happening in formula questions for math quizzes.)  This would save you from comparing responses, and allow you to automate the grading.  However, students would be "present" from anywhere they could access the canvas quiz.  For accurate attendance in a F2F course you would need to limit the IP address pool to match the classroom(s) students need to attend.  (This is already possible in old quizzes - I'm not sure about quizzes.next)


This function is so specific to attendance, that it seems reasonable to make these "quizzes" a separate assignment type as part of the attendance tab.  This would move the attendance quiz clutter from your gradebook.  Also, since every answer is simply a code copied from the random number generator.... why not just have a button to click labeled "present" that can only be clicked from the classroom IP addresses?

Community Member

I concur with sstringer.  I am a high school teacher now on-line, and I need an efficient way to track attendance without taking the time to create a quiz or have a one question assignment for every day of the week (and clutter up the gradebook and slow it down).  Some form of self check-in would be really helpful.  Students in our district should be able to be tracked by their login.  Anything, just as long as individual self-attendance is tracked anywhere but directly in the grade book.

Instructure Alumni
Instructure Alumni
Comments from Instructure

New Analytics includes an Attendance tab, which updates according to criteria set at the account level. This change allows criteria to update attendance information for individual courses and remove manual attendance tracking. 

For more information, please read through  Canvas Release Notes (2021-08-21).

Status changed to: Archived
Comments from Instructure

As part of the new Ideas & Themes process, all ideas in Idea Conversations were reviewed by the Product Team. Any Idea that was associated with an identified theme was moved to the new Idea & Themes space. Any Idea that was not part of the move is being marked as Archived. This will preserve the history of the conversations while also letting Community members know that Instructure will not explore the request at this time.