> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gradingpal.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Supported files and size limits

> What you and your students can upload, how big each file can be, and the two rules that aren't sizes.

export const updated_0 = "19 September 2026"

export const page_0 = "/teachers/collect/files-and-limits"

The same limits apply wherever a file goes in: the Instant form, the Guided steps, the upload dialog, and the student's turn-in screen.

## Sizes

| What                                    | Accepted types                                                                 | Limit                                  |
| --------------------------------------- | ------------------------------------------------------------------------------ | -------------------------------------- |
| Student work, documents                 | `.pdf` `.docx` `.doc` `.pptx` `.ppt` `.odt` `.odp` `.txt` `.rtf` `.md` `.html` | 100 MB per file                        |
| Student work, images                    | `.jpg` `.jpeg` `.png` `.gif` `.bmp` `.tiff` `.svg` `.heic` `.heif`             | 100 MB per file                        |
| Student work, video                     | `.mp4` `.mpeg` `.mov` `.avi` `.flv` `.webm` `.wmv` `.3gp`                      | 250 MB per file                        |
| Student work, audio                     | `.mp3` `.wav` `.aiff` `.aac` `.ogg` `.flac`                                    | 250 MB per file                        |
| A batch scan                            | `.pdf` only                                                                    | 250 MB, one file                       |
| The assignment, a rubric, an answer key | Documents and images as above                                                  | 100 MB per file                        |
| Handout materials                       | Documents and images as above                                                  | 10 files, 100 MB each, 300 MB in total |
| Google Docs, Sheets and Slides          | Picked from Google Drive                                                       | Converted on the way in                |

The **Supported file types** link beside any upload box shows the same list.

## The rules that aren't sizes

* **A batch scan must be a single PDF.** The dialog says so if you add anything else: "A batch scan must be a single PDF".
* **One assignment can't mix documents with video or audio.** "Upload either documents or video/audio, not both — they can't be graded together in one assignment."
* **Video and audio assignments accept media only.** A document dropped into one is refused: "This is a video assignment — only video & audio files can be graded."
* **Presentations and art assignments take documents and images**, not media.

## What a student sees when a file is refused

Students get the same size messages you do, worded for the file they chose, such as "Each file must be under 100 MB." They never see a reason to do with your plan or limit; if work can't be accepted for that reason, the student is told to contact their teacher and try later.

## Scanning advice

* A PDF from a scanner beats a photo from a phone. Text the scanner recognised is read directly; a photo has to be read as an image.
* Scan at a normal resolution, not the maximum. A 30-page stack at 600 dpi can pass 250 MB; at 200 dpi it won't.
* Scan pages flat and the right way up. A crooked or shadowed page is the most common reason a handout comes back with no questions found.
* Remove password protection before uploading. A locked file can't be read at all.

## What to read next

<CardGroup cols={2}>
  <Card title="Split one scan into many submissions" icon="scissors" href="/teachers/collect/batch-scan">
    One PDF for the whole class.
  </Card>

  <Card title="Turn in your work" icon="upload" href="/students/turn-in-work">
    The student version of this page, written for them.
  </Card>
</CardGroup>

<hr />

<p style={{ fontSize: "0.875rem", opacity: 0.75 }}>Last updated {updated_0}</p>

<p>
  <strong>Was this page helpful?</strong>{" "}
  <a href={"mailto:support@gradingpal.com?subject=" + encodeURIComponent("Help page feedback (helped): " + page_0)}>Yes, this helped</a>

  {" · "}

  <a href={"mailto:support@gradingpal.com?subject=" + encodeURIComponent("Help page feedback (problem): " + page_0) + "&body=" + encodeURIComponent("Which of these fits? Couldn't find the step / Didn't match what I see / Missing information / Out of date / Other\n\nTell us more:\n")}>No, something's wrong</a>
</p>

<p style={{ fontSize: "0.875rem" }}>
  <a href={"mailto:support@gradingpal.com?subject=" + encodeURIComponent("Problem with help page: " + page_0)}>Report a problem with this page</a>
</p>
