How to upload a file to Claude so it can read it
MarkdownClaude in the browser accepts PDFs, spreadsheets, images, and code. All the formats, how large a file can be and how many fit in a chat, and what to do when an upload fails.
Read full article
Key points
Claude in the browser accepts files right in the chat: drag a file into the window, click the plus in the lower-left corner, or paste an image from the clipboard. It supports many formats - PDF, Word, spreadsheets, images, code. Below, I show all the formats, size and quantity limits, how a file in a chat differs from a file in a project, and why a large file sometimes fails earlier than you expect.
Ailoot documentation — reference materials for using the service.
How do you upload a file to Claude?
Key points
There are three ways, and they are all in the same place - the field where you write your message. You can drag a file with your mouse right into the chat window, click the plus button in the lower-left corner and choose a file from your drive, or copy an image and paste it with Ctrl+V. The file is attached to the message and goes along with the text when you send it.
First, you'll look for this button in the header or settings. It isn't there. It's right in the input line, to the left of where you type.
Anthropic's help page lists three ways.
Click the “+” button in the lower-left corner of the chat field, drag files directly into the chat window, or copy and paste images from the clipboard.
Here are the steps:
- Open the chat where you plan to work with the file.
- Drag the file into the window, or click “+” at the lower left and choose it from your drive, or, if it's an image, paste it with Ctrl+V.
- Wait for a badge with the file name to appear next to the field. That means the file is attached.
- Write what you want done with the file and send the message. The file will go along with the text.
Now, where does the file live? Uploading it to a chat attaches it to a specific conversation. It won't be there in a new chat, and Claude won't know anything about it. If you need the file all the time, across all conversations, that's what projects are for; there's a separate section about them below.
What file formats does Claude understand?
Key points
Claude accepts two broad groups: documents and images. Documents include PDF, Word in DOCX format, CSV and XLSX spreadsheets, plain text TXT, HTML and JSON markup, EPUB books, and ODT and RTF formats. Images include JPEG, PNG, GIF, and WebP. Claude reads code as plain text; files in almost any language will work. One exception: XLSX spreadsheets require the analysis tool to be enabled in settings.
Here are the formats in a table; I'll go over the finer points in the sections that follow.
| Group | Formats | What Claude does with them |
|---|---|---|
| Documents | PDF, DOCX, TXT, HTML, JSON, EPUB, ODT, RTF | Reads the text; for PDFs, also images inside |
| Spreadsheets | CSV, XLSX | Analyzes the data and calculates with it (XLSX - after enabling analysis) |
| Images | JPEG, PNG, GIF, WebP | Sees the content: text in a screenshot, a diagram, a chart |
| Code | .py, .js, .ts, .html and others | Reads as text, analyzes and edits |
Anthropic publishes the list of document formats on its upload page: PDF, DOCX, CSV, TXT, HTML, ODT, RTF, EPUB, JSON, and XLSX. Images include JPEG, PNG, GIF, and WebP.
Code has no special status. A file in Python, JavaScript, or any other language is uploaded as text: Claude opens it, reads it line by line, and works with it as code. It looks at the contents; the extension doesn't matter.
The only catch in this list is XLSX. For Claude to calculate using an Excel spreadsheet, you need to enable the analysis tool in your account settings. Without it, the XLSX upload may fail, or the spreadsheet may arrive as an unintelligible jumble of characters. There's a separate section below on a workaround using CSV.
How large can a file be, and how many files can you upload?
Key points
According to Anthropic's help page, one file in a chat can be up to 500 megabytes, and a chat can hold up to 20 files in total. An image can be up to 8000 by 8000 pixels. Those are generous figures, but the real ceiling is different: the context window. A dense text file will fill it long before it reaches five hundred megabytes, and then either part of the file won't be read or the upload will fail. What matters more than its weight in megabytes is the meaning inside the file.
The official figures from Anthropic's upload page, updated April 22, 2026: up to 500 megabytes per file in a chat, up to 20 files at a time, an image up to 8000 by 8000 pixels, and a PDF up to 1000 pages.
But the figure 500 is misleading: megabytes aren't what you'll actually run up against. Claude puts everything you upload into the context window, and that has a limit: around 200 thousand tokens for the models, roughly 150 thousand words for the entire conversation, including files. A text file with several megabytes of dense text can fill the whole window, and you'll never get anywhere near the formal limit of five hundred megabytes.
That's why large files sometimes fail even when they're within the formal limit. There's one reason: there's more meaning inside than the window can hold. I explained how context is used and where it goes in detail in an article about where tokens go in Claude.
Claude can easily handle one or two documents for a specific task. A dozen reports at once or one enormous file already pose a risk that some of it simply won't be read, and you won't know it.
Uploading files is context engineering in miniature: Claude works with whatever you put in its window; to it, everything else doesn't exist.
Does Claude really see images and charts in PDFs?
Key points
It depends on the PDF's size. Claude processes files up to 100 pages in full - both the text and the images, charts, and diagrams inside. For PDFs from 101 to 1000 pages, it reads only the text; the images inside disappear from view. A file with more than 1000 pages won't upload at all; you'll get an error saying the file is too large. The rule is stricter for ordinary documents such as Word files: Claude takes only the text and can't see embedded images.
PDF is a special format, and Claude can do more with it than with other formats. The threshold is based on the number of pages.
Claude analyzes both text and visual elements - images, charts, diagrams - in PDFs up to 100 pages. For PDFs from 101 to 1000 pages, Claude processes only the text and does not analyze visual elements.
The difference is noticeable in practice. Upload a 30-page contract with seal scans and a table, and Claude will see both the seals and the table. Upload a 400-page technical report with charts, and it will ignore the charts and analyze only the text. A PDF over a thousand pages will return the error “Uploaded file is too large,” and you'll have to split it by hand.
It's stricter with non-PDF documents. With Word, EPUB, and HTML, Claude extracts only the text; images embedded inside don't exist as far as it's concerned. So if all the meaning is in a diagram inside a Word file, it's safer to take a screenshot of it and upload it separately as an image.
If you work with large PDFs through the terminal, tokens are a different story there. That's another tool with its own rules; I covered it in an article about PDFs in Claude Code without losing tokens.
How is a file in a project different from a file in a chat?
Key points
A file in a chat lives only in one conversation: close the chat, and it won't be there in a new one. A project is a separate space with a persistent knowledge base: upload files there once, and Claude can see them in every chat in the project. On the free plan, you can create up to five projects, with files in the knowledge base up to 30 megabytes. On paid plans, when the knowledge base grows beyond the window, retrieval mode turns on and capacity increases.
These are two different mechanisms, and I see people confuse them all the time.
| Feature | File in a chat | File in a project |
|---|---|---|
| Where it's visible | Only in this conversation | In all chats in the project |
| Available in a new chat | No; remains attached to the original conversation | Yes, in other chats within the same project |
| File size limit | Up to 500 MB | Up to 30 MB |
| Number of files | Up to 20 at a time | No count limit, within the window |
| For | One-off task | Persistent document collection |
Create a project when you need the same set of files again and again: a price list, a sample contract, a rules database, your past writing. According to Anthropic's help page, you can have up to five such projects on the free plan, with files in the knowledge base up to 30 megabytes. Add them to the project's knowledge base once, and every chat inside the project will know them from then on.
Paid plans have an additional feature. When the project's documents exceed what fits in the window, Claude automatically changes how it works with the files.
When a project's knowledge base approaches the context window limit, Claude automatically turns on retrieval mode to expand the project's capacity.
A project as a knowledge base is the first step toward a Second Brain: a structure that holds everything about your work and that AI can consult on its own. I showed how I build the whole structure in an article about the Second Brain.
How do you pull in a file from Google Drive?
Key points
In addition to uploading from your drive, Claude can take a document directly from Google Drive and always works with its latest version. According to Anthropic's help page, this connection is available on all plans, including the free plan; in Team and Enterprise, an owner must first enable it at the organization level. Start from the same plus button in the chat: choose “Add from Google Drive,” find the document, or paste its link. Authorize access to your Google account once, and after that files are just a couple of clicks away.
There's one difference from an ordinary upload. A file from your drive becomes a static copy as of the moment you upload it. A document from Google Drive syncs: edit it in Google, and Claude will read the new version next time; you don't need to upload it again manually.
Here's the process:
- Click “+” in the chat field and choose “Add from Google Drive.”
- Find the document in the recent files list or paste its link.
- The first time you connect, authorize access to your Google account.
There are limits to the connection. Claude can find, read, summarize, and compare files with one another. It won't change your files in Google - edit them, rename them, or move them between folders - it has read-only access. Claude takes only the text from the documents: it doesn't analyze embedded images here either. Full instructions are on Anthropic's page about Google Workspace connectors.
Why doesn't Claude “see” an uploaded file?
Key points
Almost all complaints like “I uploaded it, but it won't read it” come down to five reasons. The most common is that the file went to the wrong place: you put it in a project but are asking about it in a regular chat. Next most common are a format that requires analysis to be enabled, embedded images in a Word document, an overloaded context window, and an oversized PDF. Below, each reason and what to do about it, in order.
Listed by frequency, starting with what happens most often:
- The file is in a project, but the question is in a regular chat. You uploaded the document to a project's knowledge base but are asking about it in a chat outside the project. Claude can't see it there. Check which space you're in, and ask the question inside the project.
- XLSX without analysis enabled. An Excel spreadsheet requires the analysis tool. If it's turned off, the file either won't upload or will be read as garbage. Enable analysis in settings or save the sheet as CSV.
- Images inside the document. In Word and other non-PDF formats, Claude takes only the text. For PDFs over 100 pages, it also takes only the text. If the meaning is in an image or chart, take a screenshot of it and upload it separately.
- The context window is full. The file is large or the conversation is long, and there's no room left in the window. Claude reads the file only partially or cuts off. Start a new chat and upload only what you need for the current question.
- The file is too large. A PDF over 1000 pages or a file exceeding the size limit returns the error “Uploaded file is too large.” Split the file into smaller parts and upload them one at a time.
If you've gone through the list and nothing helped, the most reliable check is to open a new, clean chat and upload one file with a direct question about it. That quickly shows whether the problem is the file or the accumulated clutter in the old conversation.
How do you upload an Excel or CSV spreadsheet so Claude can calculate with it?
Key points
CSV works right away: it's plain text with delimiters, and Claude reads it without any settings. XLSX is more complicated - it's a binary format, and for Claude to calculate with its formulas and build summaries, you need to enable the analysis tool in your account settings. Without it, the XLSX upload may fail or the spreadsheet may open as a jumble of characters. If the data is simple, the fastest route is to save the sheet as CSV and upload it.
The difference between the two spreadsheet formats is bigger than their extensions suggest.
CSV is text. Rows, commas, values, nothing more. Claude opens a file like that and sees the data right away; no setup is needed. For a CRM export, an order list, or an expense table, it's the most hassle-free option.
XLSX is Excel's binary format, with formulas, formatting, and multiple sheets. For Claude to do more than just read such a spreadsheet and calculate with it, it needs the analysis tool, which you enable separately in your account settings. Until it's turned on, there's little point in uploading XLSX.
My practical advice, if the data doesn't depend on complex formulas: open Excel, save the sheet you need as CSV, and upload it. Five seconds of work, and the file can be read on any plan without fiddling with settings.
How many files should you keep in one chat?
Key points
The formal limit is 20 files per chat, but the practical ceiling is lower and comes down to the same context window. Every uploaded file stays in the conversation and takes up space in the window to the very end. When there are many files, Claude starts getting confused and losing details from earlier ones. The simple rule of thumb: one chat, one task, with two or three files. When the topic changes, start a new chat and don't bring the old attachments along.
You may want to put ten documents in one chat and ask all sorts of questions about them. That works against you. Files don't disappear from the conversation; the model answers each new question with all of them in the window, and the more files there are, the more diluted the answer becomes.
What actually helps:
- One chat for one task. If you're reviewing a contract, keep it to the contract and its appendices.
- When the topic changes, start a new chat. Old files won't carry over and won't take up space.
- Keep permanent documents you always need in a project. You don't have to drag them into every chat again.
The mechanism is the same as with the limits: everything comes down to the context window. I explained what context is and why it's worth managing yourself in a separate article about context engineering.
What else do people ask?
Key points
Six short questions come up most often: do you need a paid plan to upload files, can you upload files from a phone, why has the upload button disappeared, can Claude read a scanned PDF, where do files go after you close a chat, and can you upload an entire folder at once? Short answers to each are below.
Frequently asked questions
Do you need a paid plan to upload files to Claude?
No. Uploading files to a chat, projects with a knowledge base, and connecting Google Drive are available on the free plan. Paid plans add retrieval mode, which expands the capacity of large projects.
Can you upload files from a phone?
Yes. The mobile app has the same plus button in the input field. You can take a picture with the camera and attach it right away, or choose a document from your phone's files.
Why has the file upload button disappeared or stopped working?
There are three common reasons. The format isn't on the supported list. The required tool isn't enabled - for example, analysis for XLSX spreadsheets. Or you're in a conversation mode where attachments aren't available. Check the format and settings, then open a fresh chat.
Can Claude read a scanned PDF where the text is an image?
Yes, if the PDF is up to 100 pages. In this range, Claude processes the pages as images and extracts the text from them. A scan with several hundred pages will be handled in text mode, and recognition won't work there.
Where do files go after I close the chat?
Attachments remain linked to the conversation where you uploaded them. They won't be in a new chat. To always have a file on hand, put it in a project's knowledge base. It won't be saved in a separate chat.
Can you upload an entire folder at once?
No, not an entire folder. You upload individual files, up to 20 at a time in one chat. For a permanent document collection, create a project: files are added there once and remain available in all its chats.
Sources
More materials are available on Ailoot.
More details
Questions about How to upload a file to Claude so it can read it
Does closing a chat delete its uploaded attachments?
No. The attachments remain associated with the original conversation. They do not automatically become available in a new chat; use project knowledge for documents needed across that project’s chats.
What is a useful first check when Claude cannot read my upload?
Open a fresh chat, attach one file, and ask a specific question about it. Check the file format and size, whether you are inside the correct project, and whether the required analysis tool is enabled.