[Rubrics] Export aggregate rubric scores to identify strengths and weaknesses of class as a whole

I'd like Canvas to be able to generate a single table that shows the rubric line item scores for all students.  Then I would easily be able to tell which items students struggled most with, and plan subsequent lessons accordingly.

Added to Theme

Community Explorer

This would be a valuable assessment strategy- please add it!

Community Novice

We need to be able to see averages for rubric items just as much as we need point and question data from quizzes.

Community Participant

I agree - this would be a beneficial feature in Canvas.

Community Member

It would be incredibly helpful to have data analytics connected to our Canvas rubrics. It would drive meaningful conversation in our teams and help us more effectively improve our instruction. 

Community Explorer
I came up with a PoC Python script that can download itemized rubric reports for all assignment submissions. 
To test, you (one with Teacher role in a Canvas course) can:
  • Follow the above GitHub link, click on the icon to open it inside Google Colab, which provides a Python runtime in your browser window.  You may want to "Save a copy in Drive" first.
  • Follow the instructions in "Step #1" section to get your Canvas access token. 
  • Replace the values for those 'replace_with_*' fields as indicated in the script
  • Click on the run button next to each cell, and you will get itemized csv files downloaded to your local machine in the end

The script uses the canvasapi library from University of Central Florida (thanks to the UCF team!)

Please give it a try, and let us know if you have any questions/suggestions.

Community Member

Count us as another school that really wants RUBRIC data

Community Member

YES please! For all those reasons and more

Community Member

Add my vote (i have 5 starred the idea). I am a first time (teacher) user of canvas and was horrified to learn that i cannot export the rubric marks only the aggregate. this is going to be a pain for me as i will have to go in to each individual student rubric and MANUALLY transfer the marks to a spreadsheet so i can report on our individual criteria.

I noticed a GitHub thing on page 4 of the comments, i will explore that but i'm not confident with python.

Community Member

Hi @zqian1 , i am trying to use your code but have already come across an issue: i don't know how to find the Assignment ID (i THINK i found the Course ID, but nothing in the course settings is actually called Course ID, it's either Course Code or SIS ID - both of which appear to be the same in my case).

I took a punt and used the number at the end of the URL for the Assignment ID, but when i ran the first part of the code i got the following error:


ModuleNotFoundError                       Traceback (most recent call last)
<ipython-input-1-06d262f52669> in <module>()
----> 1 from canvasapi import Canvas
      2 from canvasapi.assignment import (
      3     Assignment,
      4     AssignmentExtension,
      5     AssignmentGroup,

ModuleNotFoundError: No module named 'canvasapi'
NOTE: If your import is failing due to a missing package, you can manually install dependencies using either !pip or !apt. To view examples of installing some common dependencies, click the "Open Examples" button below. ---------------------------------------------------------------------------

Edit: additional info

Also this is what my variables look like under my personal security token, perhaps someone can see if these don't look right:

CANVAS_URL = 'https://aurora.instructure.com'
COURSE_ID = '2022-09SCI'
Community Explorer

Hi, @MsWiklendt :

Thanks for trying the script. 

In Canvas, you can navigate to the Assignment tool, and click on the assignment title to enter the view for that assignment, where you should have the URL of format https://<your  institution Canvas site>/courses/<COURSE_ID>/assignments/<ASSIGNMENT_ID>

Then you can retrieve the values for COURSE_ID and ASSIGNMENT_ID, and insert those into the script. 

To execute the script in Google Colab, you will need to execute all the code sections sequentially, especially the first "Install Python Libraries" section with all !pip commands. That should have the required canvasapi library installed

HTH! Please let me know if you have further questions.

- Zhen