# How to attach files to a chat

Attach PDFs, Word and Excel files, images, and source code to any message. GPTree extracts the text in the background so the model can read it, quote it, and answer follow-ups about it.

You can attach files directly to a chat message and ask questions about them. GPTree reads the file, extracts its text, and keeps that text available for the whole conversation, including follow-up questions and branches you open later.

## What you can attach

- Documents: PDF, Word (.doc, .docx), Excel (.xls, .xlsx)
- Text: plain text, CSV, Markdown
- Images: JPEG, PNG, GIF, WebP, HEIC, AVIF, SVG
- Source code: common languages such as PHP, JavaScript, TypeScript, Python, Vue, Go, and many more. Code files are stored safely as text and shown to the model inside a code block so it reads them as code.

Each file can be up to 20 MB, and you can attach up to 10 files per message.

## How document reading works

When you attach a PDF, Word, or Excel file, GPTree starts extracting its text in the background right away, while you are still typing your message. By the time you send, the text is usually ready and flows into the model's context automatically.

Very large documents can take a little longer to process. If you send your message before extraction finishes, the assistant will tell you the file is still being processed and ask you to try again in a moment. Send your question again and the extracted text will be there.

Images work differently: they are passed to vision-capable models as images, so the model can describe charts, screenshots, and photos rather than reading extracted text. If the model you picked cannot read images, a message with an image is answered by a model that can, and the model label on the reply shows which one answered and why. Your picked model stays selected for your next text message. If no model on your plan can read images, GPTree tells you so instead of sending the image to a model that cannot see it.

## Sending several images at once

Images are sent to the model as part of the message itself, so a single message has a budget for all of its images together, not just per file. Large screenshots add up quickly: three full-page captures can be bigger than the whole message is allowed to be.

If you go over, GPTree tells you before it sends anything, with a message saying the images are too large and asking you to attach fewer or smaller ones. Nothing is lost when that happens. Remove an image, or resize the biggest ones, and send again. Cropping a screenshot to the part you actually want also helps the model give a sharper answer.

## A few practical notes

- Extracted text stays with the conversation. You can branch from a message and the new branch still knows what the attached files said.
- Very long documents are trimmed to a generous limit so they fit in the model's context. For huge files, asking about a specific section works better than "summarize everything."
- Spreadsheets are read as rows of values, up to a couple thousand rows per sheet. For very large workbooks, name the sheet or range you care about, and GPTree marks any sheet it had to cut short so nothing looks complete when it is not.
- Want the spreadsheet back with edits? Ask for it as a file (for example "give me the updated worksheet as an Excel file") and GPTree builds a downloadable file. See How to get a Word, Excel, or PDF file from GPTree.
- If a file cannot be read (for example a scanned PDF with no text layer, or a corrupted file), the assistant will say so instead of guessing at the contents.
