How to download all your files from Canvas

Canvas has no button that downloads everything. Here is every route that works, what each one really collects, and which to pick.

Short answer

Canvas has no single button for this. It can zip one course's Files tab at a time (open the course, click Files, press Ctrl or Cmd + A, then Download as Zip), and it can export every file you have submitted, from Account then Settings then Download Submissions.

Neither one includes Pages, assignment briefs, announcements, discussions, quizzes or the feedback you were given, and neither covers more than one course at a time. Measured across 33 real courses, that non-file content came to 173 items, against a file-level gap of 3. Getting everything from every course needs a browser extension, a script, or a desktop app that reads the Canvas API with an access token. All five routes are compared below.

There is no button in Canvas that downloads everything from every course. That is the honest starting point. It is why this question gets asked so often. What Canvas gives you is a per-course zip of one particular tab. That tab is frequently not where your slides actually live.

Below is every route that works, what each one really collects, and where each one stops. Four of the five need no software at all, so start there and only go further if they fall short.

What Canvas can do on its own

Canvas has exactly two bulk exports available to a student. They cover different things:

  • A course's Files tab, zipped. One course per zip.
  • Your own submissions, the documents you uploaded to assignments. Not the course material.

Neither one touches Pages, Assignment descriptions, announcements, discussions, quizzes or the syllabus. Nothing built into Canvas exports those in bulk, which is the part most people are surprised by. When a student asked precisely this on the Instructure Community forum in October 2024, the accepted answer ended with "As for Pages and Assignments, I'm not sure of a quick way off the top of my head." That is still the state of it.

"Can't I just export the course?" No. This trips up a lot of people. Canvas does have a full course export that produces an .imscc package containing everything, but it is an instructor permission. As a student you will not see the option, and asking your instructor to run one for you is a real request rather than a formality.

Method 1: Download as Zip, one course at a time

This is the built-in route and it is the right first thing to try.

  1. Open the course in Canvas.
  2. Click Files in the course navigation on the left.
  3. Click once inside the file list, then press Ctrl + A (Windows) or Cmd + A (Mac) to select everything.
  4. Choose Download as Zip from the options that appear above the list.
  5. Wait for the progress bar, then unzip the file on your computer.

You get the files and the folder structure exactly as the teacher arranged them. For a tidy course that is genuinely all you need. This is the route university help desks document, and they agree on the steps - Illinois, Stanford and NCTC all describe the same select-all and zip.

Where it stops

  • One course at a time. Six courses means repeating this six times, then organising six zips yourself.
  • The Files tab can be switched off entirely. This is the big one, and it is bigger than the one everybody warns about. A teacher can disable Files in course navigation, and plenty do. Then this method does not exist for that course at all. Measured across 33 real courses, that was the case in 3 of the 11 that held any material, and those three held 246 files between them.
  • Files uploaded straight into a Module or a Page may not be in the Files tab. A lecturer who attaches a slide deck directly to a module item has put a file in your course that the Files tab never lists, so the zip misses it. Real, and smaller than its reputation: in the same measurement it came to 3 files out of 358, in one course of eight.
  • Nothing else comes with it. No Pages, no assignment instructions, no announcements, no quiz content, no feedback you were given.
  • It is a snapshot. Next month's slides are not in last month's zip, so you repeat the whole thing.

Worth knowing: a file being missing from the Files tab does not mean you cannot open it. It means it is not listed there. You can still reach it through the module, one click at a time.

Method 2: Your own submitted work

Separate feature, commonly confused with the one above because several university help pages describe it under a heading about downloading "your files". This one collects the documents you handed in.

There are two routes. The export is the thorough one:

  1. Click Account in the far-left global navigation, then Settings.
  2. Click Download Submissions in the sidebar, then Create Export.
  3. Wait for Canvas to build it, then download the zip. It covers current and concluded courses, and it expires after 30 days, so save it somewhere permanent the same day.

Or browse them directly under Account then Files then My Files then Submissions, where there is a folder per course. Anything you embedded with the rich content editor sits in Uploaded Media instead.

The export contains the files exactly as you submitted them. It does not include instructor-annotated versions, and carries none of your grades or feedback comments. That is worth knowing before you assume you have saved everything: the annotated copy of your dissertation draft is not in this zip.

Method 3: Browser extensions

Several Chrome extensions scan the page you are currently looking at and offer to download every file they can see on it. Some go a step further and follow links into Pages to find attachments the Files tab does not list.

What they are good at: speed and zero setup. You are already logged in. There is no token to create and nothing to install beyond the extension. For grabbing one messy module quickly, an extension is hard to beat.

What to weigh up: an extension that can read your Canvas pages can read whatever else you have granted it. The permissions it asks for are worth reading before you click Add. They work per page rather than per account, so "all my courses at once" is not normally on offer. They cannot reach anything that is not reachable from a page you have open, and they have no memory of what they downloaded last time, so every run starts from scratch.

Method 4: Scripts and command-line tools

There are good open-source scripts that talk to the Canvas API directly. They tend to be the most flexible option in existence: if you can read the code, you can make it download exactly what you want, in exactly the layout you want, on a schedule.

The cost is Python or Node installed, a terminal you are comfortable in, and the upkeep when something changes. That is a fine trade for some people and a wall for most. If you are studying computer science, this is probably your best option and you should ignore the rest of this page.

Method 5: A desktop app that uses the Canvas API

This is what Canvas Downloader is, and since this is our site you should read this section knowing that. It is free, open source and the entire codebase is public on GitHub, so every claim below can be checked rather than taken on trust.

It signs in with an access token you create yourself in Canvas, then uses the same official API the Canvas mobile apps use. Because it works at the account level rather than the page level, it can do the two things the other methods cannot:

  • Every course in one run. Tick the courses you want and it downloads them all, each into its own folder.
  • Everything, not just the Files tab. It walks the modules as well, so a slide deck attached directly to a module item is collected like any other file. Assignments, announcements, discussions, quizzes, the syllabus and the feedback on your own submissions are saved as readable documents if you ask for them.

Two things it adds that a one-off download cannot: it can sync, meaning the second run downloads only what is new or changed and leaves everything else alone, and it can save Panopto lecture recordings as video, audio, a transcript or subtitles, with the transcription running on your own machine.

The honest caveat: it needs an access token. A small number of institutions have turned off students' ability to create one. If your Canvas account settings have no "New Access Token" button, no API-based tool can work for you, and Methods 1 to 3 are your options. Check before you install anything, and see what a Canvas access token is and what it cannot do if you are weighing up whether to make one.

All five, side by side

What you want Download as Zip Submissions Extension Script Canvas Downloader
All courses in one go NoPartly NoYesYes
Files hidden in Modules or Pages NoNo SomeYesYes
Assignments, announcements, quizzes NoNo NoVariesYes
Your grades and feedback NoNo NoVariesYes
Panopto lecture recordings NoNo NoRarelyYes
Only downloads what changed NoNo NoVariesYes
Nothing to install YesYes ExtensionNoNo
Works without an access token YesYes YesNoNo

Which one you should use

One course, tidy Files tab, need it now. Download as Zip. Do not install anything.

One messy module where the files are scattered through Pages. A browser extension will be quicker than anything else, and the tool comparison names the ones worth trying.

You are about to lose access and want everything. This is the case the built-in tools handle worst, because "everything" includes the parts Canvas does not export. See what happens to your Canvas account after you graduate.

You want your course folder to stay current all semester. Only a syncing tool does this. Everything else is a snapshot you have to keep repeating.

You are comfortable in a terminal. Use a script. You will get exactly what you want and you will understand every part of it.

You want the grades and comments you were given. None of the five collects those, and Canvas's submissions export deliberately leaves them out. See how to save your Canvas assignment feedback.

You want the Pages, quizzes, discussions and announcements. None of them is a file. Nothing on this page reaches them. There is one built-in route with a deadline on it - how to save Canvas quizzes, Pages and discussions.

You want the lecture recordings. None of the five above touch them, because the video is never a Canvas file - it belongs to Studio, Panopto or Kaltura. Start with how to download lecture videos from Canvas to work out which you have, then how to download Panopto lecture recordings if it is Panopto. Read the permission section first.

Every course, in one run

Tick the courses you want and Canvas Downloader downloads all of them: the Files tab, the files hidden in modules and Pages that the zip misses, and the categories Canvas has no export for at all - assignments, announcements, discussions, quizzes, the syllabus, and the feedback on your own work. Run it again next month and it downloads only what changed.

Free and open source, for Windows and macOS. Runs on your own computer: no account, no server, nothing uploaded.

Common questions

Can I download all my Canvas courses at once?

Not with anything built into Canvas. Canvas zips one course's Files tab at a time, and that zip leaves out Pages, assignments, announcements and quizzes. Downloading every course in one run needs a tool that talks to the Canvas API with an access token, such as a script or a desktop app like Canvas Downloader.

Why are some course files missing from the Files tab?

Because a file attached directly to a module item or embedded in a Page does not have to appear in the Files tab. The Files tab lists the course file store, not everything the course contains, so "Download as Zip" can miss material you can plainly see in the course.

My course has no Files link in the navigation. What now?

Teachers can hide the Files tab. That removes the built-in bulk download for that course. You can still open each file through the modules, use a browser extension on the module page, or use an API-based tool, which reads the modules rather than the Files tab.

Is it legal to download my Canvas course files?

Downloading material you already have access to, for your own study, is normally fine and it breaks no copy protection. What varies is your institution's own policy, especially about lecture recordings, and redistributing course material is not acceptable anywhere. Check your university's rules and see our acceptable use page.

Does downloading files tell my professor anything?

No. Opening or downloading a file you have access to is not reported to your instructor. Canvas does record page views in its own access logs, exactly as it does when you browse the course normally.

What is a Canvas access token and is it safe to use one?

It is a key you generate yourself in Canvas under Account then Settings, and it grants exactly what your own account can already reach - your courses, your files, your grades. A token cannot reach other students' data, and it is not your password. You can revoke it at any time from the same screen.

Can I download Panopto lecture recordings from Canvas?

Not through any Canvas export. Panopto is a separate system that Canvas links out to, so recordings have to be downloaded from Panopto itself. Some tools handle this; check your institution's rules first, because recordings are the material universities restrict most often.

Will these methods work after my course ends?

Only while you can still open the course. Once a course is concluded or your enrolment ends, the Files tab and the API both stop returning it. That is why the right time to do this is before the semester ends, not after.

Who wrote this

BrkBuilds builds Canvas Downloader, the free open-source app this site is about. These guides are written from the engine side: what Canvas does and does not export is described from having implemented against the Canvas API, not from reading about it. The app's behaviour is documented in Under the Hood and the whole codebase is public on GitHub, so every claim on this page can be checked against the code that makes it.

It is a one-person project with no company behind it. Where a page is uncertain it says so, and where a built-in Canvas feature or somebody else's tool is the better answer, it says that too.