Showing results for 
Search instead for 
Did you mean: 
Community Advocate
Community Advocate

I'm looking to quiz across multiple courses. How should I go about this?

I have an instructor that would like to give a quiz to multiple different courses and have the results all pool in the same place (combining the results of all of the courses for this one quiz). I don't believe that Canvas Quizzes has the functionality to help with this (across courses). Any advice on the tool to use? Should I just tell him to use the Quizlet integration? 

Tags (2)
11 Replies
Community Coach
Community Coach, you are correct that Canvas can't do this, but it wouldn't be that hard to download the csv file for each course and then combine them together; so just a quick copy and paste.

As for suggestions of other technology that can do this, I'm going to share this with the‌ group in the Community to see if they have any suggestions!


Come on now, you know better than this ...

it wouldn't be that hard

It's not as bad as saying "it's easy", but in this case, it actually could be difficult -- depending on what's in the quiz. If there are any kind of question groups at all, it becomes difficult to do this as the questions in one course are going to be in a different order than ones from another course. There have been a few threads in the Community about combining the CSV files and the difficulty with it.

Some of these are in cold storage, which you'll need to join the group to read, but they may shed more light on things.

And somewhere out there is a script someone wrote for R that would some of this, but I can't find it right now.

Community Coach
Community Coach

Ouch, yep, you got me! Famous last words... "it wouldn't be that hard"

I'd just been working on a simple exam (no question groups) and was thinking of that when I commented on the easy copy and paste.


How hard could it be??

Highlighted, I hope that's rhetorical. It's finals week and I don't have time to explain.

If there are no question banks and no multiple answers questions (not sure about multiple fill in the blanks), and the first student who completes the quiz answers every question, then it could be relatively easy -- that is if you think it's relatively easy to go into each course, find the quiz, download the student analysis, open it in Excel, and copy/paste the results into a master file while skipping the headings, and repeat for each course.

Granted ... much of that could be automated through the REST API and programming.

I did check, though, and copying a quiz from one course to another changes the question IDs, so you would have to match off the position of the question (hoping the first student always answers all questions), or by matching the text of the question.

You may be able to get the answers directly using the API: . That's an approach I haven't tried yet and there is definitely going to be a lot of programming involved there. I believe it also requires that you have the Quiz Audit log turned on. You'll need to be really careful there, as well, to make sure you take the last answer provided as it records answers along the way. For example, I wrote an essay question. The event log recorded my original answer, my answer as I was changing it, and my final answer as three separate events.

A great solution would be to have the final quiz responses available through Canvas Data, but Chris Ward wrote that it's not possible. 


Sorry, James.  I should have typed

<irony>How hard can it be?</irony>

If I've learned one main thing over the past 4.5 years working in software it is that sometimes the hardest, most complicated design projects look the most simple on the surface and visa versa.


I figured it was a comment poking fun at -- I mean, who doesn't like to do that? That's why I didn't take the time to give a full answer.

Community Advocate
Community Advocate

Thank you all for your responses! It sounds as difficult as I thought it would be. I don't believe the instructor is looking to add anything other than basic questions. I'm not sure about question groups, but he did mention using a textbook lms to pull in questions so it's a possibility. I'm thinking he can either a) use quizlet or b) just download the quiz analysis and combine on a spreadsheet.  

I guess at this point I'm more interested in putting to use an external integration (a). I do not have the 'know how' or resources available to me to dig into an API.

Thank you for the deep explanation,! I plan on getting after what you shared. I have a lot to learn. The items you shared will be put to use!

Community Advocate
Community Advocate do your students have a standard pattern for usernames? If so, using the same Google Form with each of the instructor's classes would create a single place to store all those attempts :smileycool: but it requires some effort to get those results back into Canvas Smiley Sad

I had a different issue outside of Canvas and did something with a Google Form that might be useful in your instructor's situation. I wanted to collect data from coworkers (elections for Academic Senate, requests for sandbox courses in Canvas, etc.) that required me to know who was filling out the form. We are a Google Suite for Education institution, so one solution would be to limit the form to users in our Google domain, which records the form-filler's username. However, there is a particular pain point with Google Forms that does not allow pass-through authentication like it does for Google Docs, etc. For those items, if a user is logged in with another Google account, there is a link to switch accounts and thus gain access. For Google Forms, the equivalent link is one of those "request access" links that is confusing.

For a solution, I use the Short answer text question type in the Google Form and the response validation to force each form-filler to type a username that matches our pattern. I also ask for the form-filler to type a name and email address. Our usernames are publicly available, but the chances of someone knowing all three pieces of information about someone else are pretty slim. This can work in an institution that is not a Google Suite client. All that is required is some unique identifier with a pattern.

Creating a form like this and then sharing the link with students in each of those classes might meet your instructor's needs. It would not port automatically to the grades in Canvas, but at least all of the responses would be in the same Google Sheet. Formulas in Google could be used to create a column with the results of the test. The instructor can then take that Google Sheet, export it as a .csv file, and then import that column into each course's gradebook. The file does need a couple of columns added as listed in the Canvas Guides document How do I upload changes to the Gradebook? I did some testing and discovered that *each* unrecognized student has to be indicated as such, so adding a question that asks which class the student is enrolled in will create a sortable column to ease selecting the students for each class. The good news on an import is the column to be imported can be created as a new grade item or added to an extant grade item.

Top Kudoed Authors