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

# Límites

> Tamaños y límites que conviene conocer.

# Límites

| Límite                                                       | Valor por defecto | Variable               |
| ------------------------------------------------------------ | ----------------: | ---------------------- |
| Upload crudo (`/convert/raw`, `/convert`, `/convert/stream`) |             12 MB | `RAW_UPLOAD_MAX_BYTES` |
| Descarga `from-url`/`accelerated`                            |            500 MB | `FETCH_MAX_BYTES`      |
| Tope duro de procesamiento                                   |            500 MB | `MAX_INPUT_BYTES`      |
| Páginas máximas en un PDF                                    |              5000 | `MAX_PDF_PAGES`        |
| Archivos máximos dentro de un ZIP                            |                20 | `MAX_ZIP_FILES`        |
| Tamaño máximo del documento dentro de un ZIP                 |            1.5 GB | `MAX_ZIP_MEMBER_BYTES` |

## Dos límites distintos: raw vs storage URL

El **upload crudo** (body de `/convert/raw`) tiene un límite propio y mucho más bajo (12 MB) que el tope de procesamiento (500 MB). El raw viaja entero por la red antes de empezar a convertir, así que un body enorme gasta segundos solo en transferencia. Por eso:

* **PDF pequeño** → `/convert/raw` directo.
* **PDF grande** → súbelo a tu storage y usa [`/convert/from-url`](/docs/public/es/api/convert-from-url) o `/convert/accelerated`, que **no** aplican el límite de raw (siguen `FETCH_MAX_BYTES`, 500 MB).

Detalle y tabla de tamaños en [Raw vs storage URL](/docs/public/es/performance/raw-vs-from-url).

## Qué pasa al superarlos

* Upload crudo por encima de `RAW_UPLOAD_MAX_BYTES` → `413` con un cuerpo JSON útil (`error`, `max_raw_upload_mb`, `why`, `recommendation`, `recommended_endpoint`) que te dice cómo hacerlo bien. El error nunca filtra la URL firmada ni rutas internas.
* Documento o descarga por encima de `MAX_INPUT_BYTES`/`FETCH_MAX_BYTES` → `413`.
* PDF con más páginas del límite → `413`.
* ZIP con demasiadas entradas o miembro demasiado grande → `413`.

El límite de raw se mide sobre los bytes **descomprimidos**: un cuerpo `gzip`/`zstd` que descomprime por encima del límite también se rechaza.

<Note>
  Puedes subir el límite de raw con `RAW_UPLOAD_MAX_BYTES`, o desactivarlo del todo con `ALLOW_LARGE_RAW_UPLOAD=true` (vuelve a `MAX_INPUT_BYTES`). En general no merece la pena: para archivos grandes, `from-url` es más rápido.
</Note>

## Recomendaciones

* Para documentos muy grandes, sube a tu storage y usa [`/convert/from-url`](/docs/public/es/api/convert-from-url): evita reenviar bytes.
* Comprime la subida con gzip o zstd en [`/convert/raw`](/docs/public/es/api/convert-raw).
* Divide documentos enormes en partes lógicas si solo necesitas secciones.

<Note>
  El valor real para un agente está en responder rápido con Markdown útil, no en aceptar el archivo más grande posible.
</Note>
