Claude Upload Limit: How to Optimize Files
Learn the current Claude upload limit and how to optimize PDFs, spreadsheets, documents, images, Projects, and API uploads for better results.

The Claude file upload process is simple. Answering questions with larger, more complex files does require a bit of extra work. Size is just one of the constraints. Many factors can affect the result, such as the number of pages, the amount of text extracted, conversation history, image resolution, the selected model, and the model’s context window.
Presently, the Claude upload limit is 30 MB per file. Anthropic has removed its hard limit of 20 files per conversation. Now, you can upload as many files as you want, as long as they fit within Claude’s context window.
This is important to note because a file can still be under the 30 MB limit, but contain too much information to be analyzed properly.
Claude upload limit quick summary
| Feature | Current guidance |
|---|---|
| Claude web file size | 30 MB per file |
| Files per conversation | Unlimited; total content must fit the context window |
| Paid-plan context window | Model-dependent: Usually 200K, 500K, 1M tokens |
| PDF visual analysis | Best for PDFs with <100 pages |
| Project file size | 30 MB for each upload |
| XLSX support | Provided when code execution and file creation are active |
| Files API | 500 MB upload requests |
| Standard API endpoints | 32 MB request-size limit |
These restrictions are expressed in different ways. An allowance of 500MB for the Files API does not give a model a 500MB context window or even imply that a full 500MB file can be uploaded and analyzed in a single prompt.
For now, the most recent iteration of Anthropic’s file-upload documentation supersedes documentation that mentions 20 file uploads as the maximum.
Making Sense of the Three Distinct Limits in Claude
Many users of Claude assume the upload, context, and usage limits are the same. This is not the case.
1. File Upload Limit
This limit pertains only to the upload of a file through the interface. In the case of Claude’s web interface, a file can be no larger than 30MB.
Reducing the size of a 36MB PDF to 29MB may allow the file to be uploaded, but that does not guarantee that Claude can understand its contents.
2. Context or Length Limit
The length limit refers to the amount of information Claude can retain for the duration of an individual request. This may include:
- Contents of the uploaded file
- Your prompt
- Prior messages
- Instructions
- Knowledge
- Reserved space for response
What you get in a paid plan can vary and is dependent on the model you are using. For more on Claude’s usage and length limits, some of the models may support 200K, 500K, or even 1M tokens. Because of this, the 200K token limit is not something that can be repeated for all instances.
Some of the versions of Claude can also summarize the content of the prior exchanges when the chat gets to a certain length. This does come at the cost of losing some of the more relevant information in the older messages.
3. Usage Limit
Usage limits affect how much you can talk to Claude in a fixed period of time. Long prompts, tool use, high response consumption, etc., can affect your limit.
User responses in this Reddit post on hitting Claude limits are a good example of the frustration with the limits, but they are anecdotal and do not describe the official file-upload limit.
Why file size is not the same as token size
A file’s size in MB and the file’s token count represent different things.
An example of a high-resolution file: a high-resolution file scanned and saved as a PDF may be 25 MB and not have a lot of text in it, but a sent file that is 2 MB and is in plain text can have a massive token count.
For English, a rough size would be
Size of plain text in MB ≈ number of characters ÷ 4
A rougher estimate would be 1.3 tokens per word. Numbers, English, code, tables, etc. would not represent this, so the calculations would represent a rough estimate.
A more practical rule is, when using Claude, do not fill in the entire allotted window of response. Leave about 20-30% of the context window so Claude and the history can fit, as well as instructions. This is more a workflow suggestion for Claude than a requirement.
How to Upload Files For Claude
Step 1: State Task Before Uploading
Decide what you want Claude to do. Here are a couple of examples:
- Summarize
- Compare
- Extract
- Analyze
- Find
- Review
- Interpret
Submitting lengthy documents where only a few sections are required provides little context and could lessen the quality of the responses. For this reason, you should extract only the relevant sections.
Step 2: Take out the irrelevant content
You should take out the content that will not help respond to the task. This may include:
-Repeated appendices
- Repeated disclaimer statements
- Pages left blank
- Unused tabs from Excel Spreadsheets
- Web Pages, navigation menus, saved to favorites
- Embedded images/thumbnails
- Revision Histories
- Base64 images that are embedded within text
- Previous/Draft copies of documents
Removing irrelevant content creates less ambiguity and uses fewer tokens.
Step 3: Use the appropriate content for the task
The content of the Claude system needs to be preserved as per the task.
| Task | Practical Format |
|---|---|
| Analyze prose without a complex layout | TXT, Markdown, or DOCX |
| Review layout, charts, or diagrams | |
| Analyze a flat data table | CSV |
| Preserve formulas and multiple sheets | XLSX |
| Process structured records | JSON |
| Analyze a webpage’s main content | Clean HTML or Markdown |
| Read a screenshot or diagram | TXT, Markdown, or DOCX |
Extensions may be added or become unsupported. For updates on new formats, check Anthropic’s current upload page for details on formats that are currently supported.
Optimizing PDFs
Because they can have scans tex, ts cha,rts and text embedded, PDFs can be difficult to extract data from. Complex layouts in a PDF can also add to the difficulty.
Visual PDFs - Limit to 100 Pages
Claude can analyze text and visuals in PDFs that are less than 100 pages long. If charts, images, page layout, and diagrams are relevant, split a larger PDF into smaller, logical sections of less than 100 pages.
Examples include:
01-executive-summary.pdf02-financial-statements.pdf03-market-analysis.pdf04-appendices.pdf
Randomly splitting a document is not helpful. Section-based files give Claude clearer boundaries. This also helps when writing your follow-up prompts.
Use OCR on Scanned PDFs
A scanned PDF can look like a collection of page images. Keep in mind that Claude would not be able to analyze page images. Make your PDF searchable by applying OCR. He will be able to analyze page images.
Look out for:
- Headings
- Tables
- Page Numbers
- Dates
- Decimal Values
- Names and Technical Terms
You can include the original document in your uploads to help give Claude the boundaries he needs to analyze your PDF.
Limit the Number of Pages
If your question only concerns a specific section of a document, include a page range for Claude. The page range that you provide will be considered the entirety of the document. Include a short note to help give boundaries to Claude.
Optimizing DOCX files
Before uploading a DOCX file:
- Accept the changes or reject the changes.
- Remove any comments that have not been resolved unless they are part of the analysis.
- Delete the repeated headers and footers.
- Replace the text boxes with normal paragraphs.
- Use appropriate and descriptive headings.
- Insert images only once and remove any hidden revisions.
- Save a final clean copy.
Convert DOCX files to PDF files when the DOCX files need to be viewed with a specific visual layout. Keep the file as DOCX or plain text when the wording and the structure of the headings are more important than the layout on the page.
Optimizing CSV files and Excel files
Using the CSV format is still an option. Claude supports XLSX uploads. For more information, see the file-upload support article. CSV files are more predictable than XLSX files.
Convert XLSX files to CSV files when:
- Only a single worksheet is important
- The formulas and the formatting do not need to be preserved
- Hidden workbook content needs to be removed
- The task is more complex than simple rows and columns
Leave the file as XLSX when:
- The workbook structure is important
- The cell types are important
- There are Charts or named ranges that need to be preserved
CSV files may have less data, but not every time. In fact, a CSV file may be larger than an XLSX file. An XLSX file is a compressed file, while CSV files are plain text. In most cases, the data is more readable in a CSV file, but there is no guarantee of a smaller file size.
Below is a list of things you can do to optimize your file.
- Remove unwanted empty rows and columns.
- Limit the file to one header row.
- Limit worksheets to one header row.
- Limit worksheets to one table.
- Use descriptive column names.
- Standardize units and dates.
- Remove unused worksheets.
- Avoid merged cells.
- Explain abbreviations in your prompt.
If you have a large file, consider uploading a sample, along with a data dictionary. For a full analysis, partition the data by some other meaningful attribute (e.g., date, region, category, etc.).
Optimizing Other File Types (TXT, Markdown, HTML, JSON)
Generally, text-based files are more efficient and easier to optimize compared to other file types. However, files that are poorly structured still consume unnecessary tokens.
TXT and Markdown
Use consistent headings and clear section boundaries. Markdown works particularly well for files that need to preserve a list and formatted tables, and a document outline.
HTML
Remove all elements that contain no meaningful content.
- Navigation menus
- Advertisements
- Cookie Notices
- All scripts and stylesheets
- Related-post widgets
- Repeated footer links
HTML is particularly useful when you need to present a file in a document, and you need to give a citation.
JSON
Keep valid syntax, but only include fields and records that are relevant to the task. If you have hundreds of thousands of records and repeated field names, you will quickly eat through your tokens.
Please do not embed base64 files, access tokens, passwords, or API credentials. If your JSON data is too large, divide it into valid batches. Explain your data schema separately.
Optimizing Images
For best results, Claude works best with images that are a minimum of 1000x1000 pixels. While Claude can read images with less than 1000 pixels, it is still recommended to use large images.
Before submitting the image, consider doing the following:
- Remove images that have no value, especially margins.
- Remove any user interfaces that do not pertain to the information.
- Make sure text and any image labels are clear and legible.
- Use JPEG images for photographs.
- Use PNG images for diagrams and images that contain text.
- Straighten any images that are skewed.
- For animations, upload images for each frame. In general, upload keyframes.
A diagram that is 1500 pixels and is cropped tightly is preferred over an 8000 pixel screenshot that takes up the entire screen with irrelevant information.
Using Projects for Large Collections
Claude Projects help you keep files and instructions that relate to a single conversation all in one space. Projects are useful for all users, but free accounts only allow a limited number of Projects.
For paid users, Claude will automatically use retrieval-augmented generation (RAG) when the knowledge in a project is close to the context limit. This allows Claude to pull the needed files from the project and use them in the generation context, as opposed to pulling all the files from the project for each generation. For optimal retrieval, consider the following:
-
Use clear names for files.
-
Only include one main idea per file.
-
Use headings in your documents.
-
Remove all duplicate files.
-
Use version numbers and dates on files.
-
Permanent instructions can go in the project instructions.
-
State which references are the most reliable for Claude. RAG makes it possible for a Project to contain more material, but it doesn’t imply that every sentence across every file is available in every response.
For other workflows and other comparisons, check out the latest AI tool guides on Figimi.
The Files API
Developers can use Anthropic’s Files API to upload a file one time and refer to it later with a file_id; therefore, they won’t have to upload the same file with each request.
The current Files API allows uploads of files up to 500 MB. However:
- This is not the Claude web limit.
- It does not expand a model’s context window.
- There is no guarantee that the entire 500 MB will be processed in a single prompt.
- Standard API endpoints still have a 32 MB request-size limit.
- Files may still require preprocessing, chunking, retrieval, or code-based analysis.
The Files API is a great tool for creating repeatable workflows, document pipelines, batch processing, and systems or applications that reuse the same source files.
Upload Issues with Claude
“File is too large”
Files that exceed the 30 MB web limit will most likely throw this error.
Try:
- Compress images
- Remove pages not in use
- Split files by chapter
- Export only needed tabs in a spreadsheet
- Save a new and clean file
- Use the Files API in a developer workflow that is more suited for this use case.
The document uploads, but Claude disregards some information
Here are some possible explanations:
- Information outside the context given
- Poor OCR
- Disorganized structure
- Information concealed in an image
- Different document versions that contradict each other
- A prompt that does not specify the information needed
Request Claude to use filenames, titles, or say which page to refer to. If information is still lacking, upload a smaller segment and ask a specific question.
Claude says the conversation is long
Open a new conversation with just:
- The necessary documents
- The summary of the previous steps
- The question that has not been answered
- The required formatting for the output
You do not need to copy every message from the previous conversation.
Early usage limit reached
This is typically a usage budget issue. Reduce the size and number of attachments, do not upload documents repeatedly, use a concise prompt, and only upload the files necessary to complete the current task.
XLSX file upload unavailable
Ensure that code execution and file creation are enabled on the account. If those options are disabled, export the file as a CSV in UTF-8 format.
Privacy guide before uploading
Remove from any file sent to an AI service:
- Passwords and hidden/private keys
- Personal information that is not required
- Other confidential information that is not required to complete the task.
- Follow your organization’s data policy
- Check your account and retention settings
- Check Anthropic’s current privacy and commercial data terms.
You should evaluate every optimization for security.
Frequently Asked Questions
What is the Claude upload limit?
As per Claude's web interface, the upload limit for each file is 30 MB. However, the amount of content Claude can review will also be limited by the size of the model’s context window.
Is there a limit to the number of files I can upload to Claude?
According to Anthropic’s recent reports, there is no limit to the number of files that can be uploaded, as long as the total content is within the limits of Claude’s context window. Therefore, the 20-file limit, as stated in some of the earlier reports and the referenced Fast.io article, is likely outdated.
Do files uploaded to Claude count towards the context window?
Yes. The content of uploaded files, like prompts, conversation history, instructions, and retrieved information, will use part of the available context.
Can Claude read Excel files?
Yes, files in the XLSX format can be uploaded if the execution and the creation of code are enabled. If analysis of the file in a worksheet is not sufficient, you can upload the file in the CSV format.
Can Claude analyze a PDF file that contains more than 100 pages?
Although larger PDF files can be uploaded, as long as the PDF file is within size and context limits, Anthropic has documented analysis of text and images for PDF files that are 100 pages or less. If a PDF file contains images and needs to be more than 100 pages, you will need to split the PDF file.
Does the Files API allow Claude to analyze a 500 MB file all at once?
Not necessarily. The 500 MB limit is for the upload request. Specifically, the content of the file, the model’s context, the type of file, how the file is extracted, and the workflow will define the limit for the request.
Final Recommendations
Claude has an upload limit for reasons besides compressing files to 30 MB. Optimize for relevance and readability:
- Upload task-relevant files only.
- Divide PDFs with large images into under 100 pages.
- Process scanned files with OCR.
- Upload clean spreadsheets.
- For simple tables, use CSV. Use XLSX to preserve formatting of entire workbook.
- Maintain files without duplicates.
- Leave space for instruction/context in files.
- Use the Files API to make developer workflows more efficient. Do not use the Files API at the expense of managing context.
Smaller source files are more likely to produce accurate results than larger files that contain task-irrelevant information.
Suggested visual
- Featured image "Claude Upload Limit" with PDF, DOCX, CSV, XLSX, and image icons
- Infographic limit context, limit use, file size vs usage
- Flowchart “Compress, Convert, Split, Use a Project, or Use the Files API”
- Comparison graphic PDF, DOCX, XLSX, CSV, file size and context limit vs usability limit.