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

# Supported Files

The Tess chat lets you attach files so the AI can read, analyze, summarize, extract information, transcribe content, or help you work with data and code. You can upload documents, spreadsheets, presentations, media files, images, and many programming formats.

The type of file you upload defines the processing workflow used by the platform.

## What is it?

File support in chat lets you include external content directly in the conversation as context for the AI.

In practice, you can:

* Summarize a PDF or Word document;
* Analyze data from a CSV or Excel spreadsheet;
* Extract information from a presentation;
* Transcribe and analyze audio and video;
* Review, explain, or fix code files;
* Ask questions about images attached to the chat.

After attaching the file, send a **Prompt** explaining what you want to do. Tess will use the available content within the context window and the workflow that matches the format to generate the response.

## How to use it?

1. **Attach a file** to the chat.
2. **Wait for processing** to finish before sending more complex requests.
3. Write a clear Prompt indicating the expected result.
4. If needed, ask follow-up questions in the same conversation to go deeper into the file analysis.

## Supported formats

### Documents and data

| Category         | Supported extensions |
| :--------------- | :------------------- |
| Text             | `.txt`               |
| Word             | `.doc`, `.docx`      |
| PDF              | `.pdf`               |
| CSV spreadsheets | `.csv`               |
| Excel            | `.xls`, `.xlsx`      |
| Parquet          | `.parquet`           |
| Presentations    | `.ppt`, `.pptx`      |
| Markdown         | `.md`                |

These files can be used for tasks such as summarization, information extraction, content comparison, data analysis, and creating responses based on the uploaded material.

### Audio and video

| Category | Supported extensions                                     |
| :------- | :------------------------------------------------------- |
| Video    | `.mp4`, `.avi`, `.mov`, `.mkv`, `.wmv`, `.flv`           |
| Audio    | `.mp3`, `.wav`, `.aac`, `.ogg`, `.flac`, `.m4a`, `.opus` |

Audio and video files are processed with transcription via **Deepgram**. After processing, you can ask questions about the spoken content, request summaries, identify topics, and extract decisions or next steps.

<Info>
  Media processing may consume more credits than text files, because it involves transcription before AI analysis.
</Info>

### Images — available in chat

| Supported extensions                                              |
| :---------------------------------------------------------------- |
| `.jpg`, `.jpeg`, `.png`, `.gif`, `.bmp`, `.svg`, `.tiff`, `.webp` |

In chat, you can attach images and ask the AI to describe them, extract visual information, compare elements, or generate analyses from the displayed content.

### Code files

Tess also accepts several code and configuration file formats. All of them follow the same processing workflow for code.

| Category               | Supported extensions                                            |
| :--------------------- | :-------------------------------------------------------------- |
| Web                    | `.html`, `.htm`, `.css`, `.scss`, `.js`, `.ts`                  |
| Data and configuration | `.json`, `.xml`, `.yml`, `.yaml`, `.sql`                        |
| Scripts                | `.bat`, `.ps1`, `.sh`, `.py`, `.r`, `.pl`, `.php`, `.lua`       |
| Languages              | `.bas`, `.dart`, `.inc`, `.kt`, `.pas`, `.swift`, `.vb`, `.vba` |
| Diagrams and others    | `.vsd`, `.md`                                                   |

With these files, you can ask for explanations, logic review, error identification, documentation, improvement suggestions, and conversion between languages or formats.

## Deeper explanation

Each format accepted by Tess is associated with a **processing workflow**. That workflow defines how the content will be prepared for use in chat.

In general:

* **Documents, spreadsheets, and code** may use `smart_search` mode, which locates relevant parts of the file before generating the response.
* **Audio and video** use transcription via **Deepgram** before analysis.
* **Images** are processed as visual content in chat and in the API.
* The **Web Scrapper** feature is available only in the chat context and does not correspond to a file uploaded by the user.

## Practical examples

### Summarize a contract in PDF

Attach the `.pdf` file and use:

```text theme={null}
Summarize this contract in plain language. 
Highlight obligations, deadlines, penalties, risks, and clauses 
that require attention.
```

### Analyze a results spreadsheet

Attach a `.csv` or `.xlsx` file and use:

```text theme={null}
Analyze the data in this spreadsheet. 
Show trends, outlier values, and improvement opportunities 
in an objective table.
```

### Review a code file

Attach a `.py`, `.js`, or another supported format and use:

```text theme={null}
Review this code, identify possible bugs, and suggest improvements
in readability, security, and performance. Explain each suggestion.
```

### Extract decisions from a recorded meeting

Attach an audio or video file and use:

```text theme={null}
Transcribe and summarize this meeting. List decisions made, owners, 
mentioned deadlines, and next steps.
```

### Analyze an image

Attach an image in chat and use:

```text theme={null}
Analyze this image and describe the main visual elements. 
Then extract any visible text and organize it into topics.
```

<Note>
  **SMART PROCESSING**

  We use smart processing that identifies the same content already processed in Tess to avoid processing it again. So even if the file name is different and the content is the same, once it has been processed once, we will reference the original one.
</Note>

## Important notes

* Uploading and processing files may consume **credits**, especially in tasks that involve advanced models, analysis of large files, audio, and video.
* Very large files or files with a large volume of content may take longer to process and may be analyzed in parts, according to the model's context window.
* For audio and video, transcription quality may vary depending on language, noise, multiple speakers, and recording quality.
* **Web Scrapper** is a chat-specific feature for web content and is not a file format for upload.
