Costo OCR por 1,000 Páginas8 Motores de Código Abierto, con Benchmark (2026)

Última revisión: 2026-08-18 · Nivel de ejecución: oficial · Benchmark propio · 8 motores × 2 conjuntos de datos de recibos

Qué cubre esta página: Una medición propia y reproducible del costo por 1,000 páginas para 8 motores OCR / de análisis de documentos de código abierto — Tesseract, PaddleOCR, EasyOCR, docTR, Docling, Surya2, Unlimited-OCR, PaddleOCR-VL — ejecutados en la misma NVIDIA RTX 4090 (RunPod, $0.76/hora, precio registrado en los manifiestos de ejecución) contra los mismos conjuntos de prueba fijos de SROIE 2019 (361 recibos en inglés) y CORD v2 (100 recibos en indonesio). Cada cifra se remonta a una fila CSV publicada en el repositorio público de benchmark OCR (ImageToTableai/benchmark-ocr) — datos experimentales reproducibles, no una agregación de informes de terceros.
Qué NO cubre esta página: Cualquier tipo de documento que no sean recibos — sin facturas, formularios, contratos ni documentos largos. Servicios OCR en la nube/API (AWS, Google, Azure y sus precios por llamada), modelos ajustados (fine-tuned), adquisición/amortización de GPU (comprar hardware directamente vs. alquilar por hora), almacenamiento y tráfico de salida, y el costo en dólares de la extracción de campos por LLM (solo conteo de tokens) están fuera del alcance. El resumen completo de precisión/latencia de los 8 motores se encuentra en OCR Tradicional vs. VLMs de Análisis de Documentos.

Declaración de alcance: todas las cifras en dólares en esta página corresponden a un nivel de GPU (RTX 4090) a un precio registrado en un momento dado (agosto de 2026, $0.76/hr, registrado en los manifiestos de ejecución como price_recorded_at_utc 2026-08-13T08:00:00Z). Recalcule a las tarifas actuales antes de presupuestar. Solo conjuntos de datos de recibos (SROIE 2019, CORD v2). Costo = tiempo de ejecución real × la tarifa por hora, incluyendo la inicialización del modelo.

En la misma GPU, los mismos recibos y la misma base de facturación de $0.76/hr, el costo OCR por 1,000 páginas entre los 8 motores de código abierto varía en un factor de 22.2× — desde $0.0479 (docTR) hasta $1.0609 (Surya2) en SROIE 2019. La elección del motor por sí sola varía el costo del OCR de código abierto en más de un orden de magnitud, y el ranking sigue el tiempo real, no la precisión: el motor más barato (docTR) tiene la segunda mejor tasa de error de caracteres, mientras que el más caro (Surya2) tiene la mejor.

Los dos números que los redactores más necesitan: $0.048 por 1,000 páginas para el motor más barato medido (docTR, 449.3 páginas/min) frente a $1.061 por 1,000 páginas para el más caro (Surya2, 12.1 páginas/min) — mismo conjunto de prueba, mismo nivel de GPU, mismo registro de precio. Tesseract es solo CPU: no consume horas de GPU facturadas y su celda de costo está vacía en el CSV fuente por diseño — no es cero, ni es gratuito.

$0.0479
Motor GPU más barato medido: docTR en SROIE 2019, RTX 4090 @ $0.76/hr, costo incl. inicialización del modelo (summary_metrics.csv, cost_per_1000_pages, fila doctr/sroie_2019)
22.2×
Dispersión de costos en SROIE entre el motor GPU más barato y el más caro ($0.0479 vs $1.0609) — misma máquina, mismos recibos, misma base de facturación (summary_metrics.csv, cost_per_1000_pages, filas sroie_2019)
$1.0609
Motor GPU más caro medido: Surya2 en SROIE 2019 — también el de mejor precisión de caracteres (CER 0.1915), el desacoplamiento de costo y precisión en una fila (summary_metrics.csv, cost_per_1000_pages / cer, fila surya2/sroie_2019)

El costo por 1,000 páginas es el tiempo de GPU facturado para procesar 1,000 páginas a la tarifa por hora registrada — tiempo de ejecución real × $0.76/hora, donde el tiempo real incluye la inicialización del modelo. Toda la clasificación de costos de esta página se calcula exactamente de esta manera; el cálculo detallado se muestra en la sección Cómo Estimar Tu Propio Costo y en la línea de fuente de cada tabla.

Como la factura se mide por hora, el costo sigue al tiempo, no a la precisión: un motor que lee una página en 109 ms cuesta ~25× menos que uno que la lee en 2,668 ms a la misma tarifa. El costo de cada motor disminuye aún más a medida que aumenta el tamaño del lote, porque el costo único de inicialización del modelo se distribuye entre más páginas — las cifras $ a continuación reflejan el patrón de ejecución del benchmark (división de prueba fija, medición warm_then_scored) y no serán iguales al costo de tu propia ejecución.

SROIE 2019: Clasificación de Costo por 1,000 Páginas

En 361 recibos en inglés, los motores OCR tradicionales de dos etapas ocupan el extremo barato y los VLMs de análisis de documentos el extremo caro — pero la dispersión dentro de cada familia es lo que sorprende: PaddleOCR-VL, un VLM compacto de 0.9B, se sitúa en $0.2048, dentro de 4.3× del motor más barato, mientras que su hermano VLM Surya2 cuesta 22.2× el más barato — una dispersión de 5.2× solo dentro del clúster VLM.

Costo por 1,000 páginas en SROIE 2019 (RTX 4090 a $0.76/hr, incl. inicialización de modelo): docTR $0.048, EasyOCR $0.110, PaddleOCR-VL $0.205, PaddleOCR $0.221, Unlimited-OCR $0.388, Docling $0.398, Surya2 $1.061. Tesseract es solo CPU (sin facturación de GPU, excluido).

Fuente: summary_metrics.csv — columna cost_per_1000_pages, filas sroie_2019. docTR 0.0479, EasyOCR 0.1098, PaddleOCR-VL 0.2048, PaddleOCR 0.2214, Unlimited-OCR 0.3879, Docling 0.3978, Surya2 1.0609. Tesseract solo CPU: celda vacía en el CSV (sin horas de GPU facturadas). Costo = tiempo de ejecución real × $0.76/hr (RunPod RTX 4090, precio con marca de tiempo agosto 2026), incluyendo inicialización del modelo.

PosiciónModeloTipoCosto / 1K páginasPáginas/minFuente
1docTROCR Tradicional (GPU)$0.0479449.3summary_metrics.csv · fila doctr/sroie_2019
2EasyOCROCR Tradicional (GPU)$0.1098124.5summary_metrics.csv · fila easyocr/sroie_2019
3PaddleOCR-VLVLM de análisis de documentos$0.204868.2summary_metrics.csv · fila paddleocr_vl_vllm/sroie_2019
4PaddleOCROCR Tradicional (GPU)$0.221479.7summary_metrics.csv · fila paddleocr/sroie_2019
5Unlimited-OCRVLM de análisis de documentos$0.387934.4summary_metrics.csv · fila unlimited_ocr/sroie_2019
6DoclingAnalizador de canalización$0.397856.7summary_metrics.csv · fila docling/sroie_2019
7Surya2VLM de análisis de documentos$1.060912.1summary_metrics.csv · fila surya2/sroie_2019
TesseractOCR Tradicional (CPU)n/d (solo CPU, sin facturación de GPU)78.6summary_metrics.csv · fila tesseract/sroie_2019

Tabla: summary_metrics.csv — cost_per_1000_pages / pages_per_minute, filas sroie_2019 (361 muestras cada una, error_rate 0.0). Ejecuciones GPU a $0.76/hr (RTX 4090, precio con marca de tiempo en manifiestos); Tesseract se ejecutó solo en CPU (celda de costo vacía por diseño — sin horas de GPU facturadas, no un costo cero). El costo incluye la inicialización del modelo, por lo que el costo por página disminuye con lotes más grandes.

El costo sigue al rendimiento, no a la precisión

Clasifique los motores por costo y por precisión de caracteres y las dos clasificaciones apenas coinciden. La mejor calidad de texto bruto en SROIE pertenece a Surya2 (CER 0.1915) — el motor más caro a $1.0609 — mientras que la segunda mejor pertenece a docTR (CER 0.1971) — el más barato a $0.0479. El costo es una factura por tiempo: las 12.1 páginas/min de Surya2 compran ~37× menos rendimiento que las 449.3 páginas/min de docTR a la misma tarifa por hora.

La correlación de peso-arquitectura es real pero laxa. Como clase, los VLM de análisis de documentos (Surya2, Unlimited-OCR, PaddleOCR-VL) se sitúan por encima de los motores OCR tradicionales de dos etapas (docTR, EasyOCR, PaddleOCR), con el analizador de canal Docling entre ellos. Pero dentro de cada clase la dispersión es amplia — el clúster VLM abarca 5.2× ($0.2048 a $1.0609) y el clúster tradicional abarca 4.6× ($0.0479 a $0.2214) — y PaddleOCR-VL, el VLM más pequeño de la prueba con 0.9B parámetros, está dentro de 4.3× del motor más barato, mientras que Surya2 está a 22.2×. La conclusión práctica: asuma que "más preciso = más caro" es falso hasta que lo mida en sus propios documentos; en esta referencia, la relación entre la clasificación de costos y la de precisión está efectivamente desacoplada.

Páginas por minuto en SROIE 2019: docTR 449.3, EasyOCR 124.5, PaddleOCR 79.7, Tesseract 78.6 (CPU), PaddleOCR-VL 68.2, Docling 56.7, Unlimited-OCR 34.4, Surya2 12.1. El rendimiento es el factor que impulsa el costo por 1,000 páginas.

Fuente: summary_metrics.csv — columna pages_per_minute, filas sroie_2019. Páginas/min en tiempo real incluyendo inicialización del modelo. Tesseract ejecutado solo en CPU (78.6 páginas/min en hardware CPU).

ModeloTipoCER (menor = mejor)Latencia p50 (ms)Páginas/minCosto / 1K páginasCosto vs docTRFuente
docTROCR Tradicional0.1971108.7449.3$0.04791.00×summary_metrics.csv · fila doctr/sroie_2019
EasyOCROCR Tradicional0.2833413.6124.5$0.10982.29×summary_metrics.csv · fila easyocr/sroie_2019
PaddleOCROCR Tradicional0.2045297.079.7$0.22144.62×summary_metrics.csv · fila paddleocr/sroie_2019
TesseractOCR Tradicional (CPU)0.3347670.978.6n/a (CPU)n/asummary_metrics.csv · fila tesseract/sroie_2019
PaddleOCR-VLVLM de análisis de documentos0.3370694.368.2$0.20484.28×summary_metrics.csv · fila paddleocr_vl_vllm/sroie_2019
DoclingAnalizador de pipeline0.5909732.056.7$0.39788.31×summary_metrics.csv · fila docling/sroie_2019
Unlimited-OCRVLM de análisis de documentos0.65521,600.734.4$0.38798.10×summary_metrics.csv · fila unlimited_ocr/sroie_2019
Surya2VLM de análisis de documentos0.19152,668.012.1$1.060922.16×summary_metrics.csv · fila surya2/sroie_2019

Tabla: summary_metrics.csv — cer / latency_p50_ms / pages_per_minute / cost_per_1000_pages, filas sroie_2019. Las razones de costo se calcularon por simple división contra el valor de docTR de 0.0479 (por ejemplo, 1.0609 / 0.0479 = 22.16). El CER de Surya2 debe leerse con la advertencia de normalización de mayúsculas en la metodología (las salidas de VLM se normalizan en mayúsculas; el CER sobreestima el error de VLM). La latencia de Tesseract es con hardware CPU; su celda de costo está vacía por diseño (sin facturación de GPU).

La columna de latencia añade la perspectiva de carga de trabajo interactiva: el costo por volumen y la latencia por página son dos vistas del mismo hecho de tiempo real. El p50 de docTR de 108.7 ms lo convierte tanto en el más barato por 1,000 páginas como en el único motor cercano a una respuesta interactiva; el p50 de Surya2 de 2,668 ms lo convierte tanto en el más caro como en una carga de trabajo solo por lotes en recibos. Los detalles de latencia se analizan en el análisis comparativo de 8 motores complementario.

CORD (Recibos Indonesios): El Costo Depende del Conjunto de Datos

Al cambiar el conjunto de documentos, el ranking de costos se reorganiza — lo que demuestra que el costo por 1,000 páginas no es una constante del motor. En CORD v2, EasyOCR se convierte en el motor más barato ($0.0863) y docTR cae al segundo lugar ($0.0939), mientras que los extremos se mantienen: docTR sigue cerca del fondo y Surya2 sigue siendo el más caro ($1.1616). La dispersión en CORD se reduce a Costo por 1,000 páginas en CORD v2 (RTX 4090 a $0.76/hr, incl. inicialización del modelo): EasyOCR $0.086, docTR $0.094, Unlimited-OCR $0.206, PaddleOCR-VL $0.241, PaddleOCR $0.342, Docling $0.538, Surya2 $1.162. Tesseract solo CPU (excluido).

Fuente: summary_metrics.csv — columna cost_per_1000_pages, filas cord_v2. EasyOCR 0.0863, docTR 0.0939, Unlimited-OCR 0.2063, PaddleOCR-VL 0.2409, PaddleOCR 0.3419, Docling 0.5382, Surya2 1.1616. Tesseract solo CPU (celda vacía). Mismo RTX 4090 @ $0.76/hr (precio con marca de tiempo), costo incl. inicialización del modelo.

PosiciónModeloTipoCosto / 1K páginasFuente
1EasyOCROCR tradicional (GPU)$0.0863summary_metrics.csv · fila easyocr/cord_v2
2docTROCR tradicional (GPU)$0.0939summary_metrics.csv · fila doctr/cord_v2
3Unlimited-OCRVLM de análisis de documentos$0.2063summary_metrics.csv · fila unlimited_ocr/cord_v2
4PaddleOCR-VLVLM de análisis de documentos$0.2409summary_metrics.csv · fila paddleocr_vl_vllm/cord_v2
5PaddleOCROCR tradicional (GPU)$0.3419summary_metrics.csv · fila paddleocr/cord_v2
6DoclingAnalizador por pipeline$0.5382summary_metrics.csv · fila docling/cord_v2
7Surya2VLM de análisis de documentos$1.1616summary_metrics.csv · fila surya2/cord_v2
TesseractOCR tradicional (CPU)n/a (solo CPU, sin facturación de GPU)summary_metrics.csv · fila tesseract/cord_v2

Tabla: summary_metrics.csv — cost_per_1000_pages, filas cord_v2 (100 muestras cada una). CORD se mantiene separado del ranking SROIE (diferente idioma, diferente estructura de ground-truth); el punto de la comparación es que el costo por 1.000 páginas varía con el conjunto de documentos, no que un ranking "gane".

Escenarios de Volumen Mensual (Estimaciones Derivadas)

Las cifras por 1.000 páginas se multiplican directamente en los cálculos de volumen que necesitan los redactores de presupuestos. Con 100.000 páginas/mes en la base de costos SROIE, el tiempo de GPU de docTR es de $4.79/mes y el de Surya2 es de $106.09/mes — una diferencia de aproximadamente $101/mes que se amplía a unos $1.013/mes con 1 millón de páginas. Estas son extensiones aritméticas de las cifras medidas por 1.000 páginas, no ejecuciones adicionales.

Volumen mensualTiempo de GPU docTR (aritmético)Tiempo de GPU Surya2 (aritmético)DiferenciaBase
10.000 páginas$0.48 (10 × $0.0479)$10.61 (10 × $1.0609)$10.13summary_metrics.csv cost_per_1000_pages, filas doctr / surya2 sroie_2019; derivado por simple multiplicación — no es una ejecución medida
100.000 páginas$4.79 (100 × $0.0479)$106.09 (100 × $1.0609)$101.30
1.000.000 páginas$47.88 (1.000 × $0.0479)$1.060,85 (1.000 × $1.0609)$1.012,97

Tabla: Estimaciones derivadas en la base de costos SROIE 2019 — no son ejecuciones medidas. Cada celda es una simple multiplicación del cost_per_1000_pages medido (docTR 0.0479, Surya2 1.0609; summary_metrics.csv filas sroie_2019) por el volumen en miles, a la misma tarifa de $0.76/hr para RTX 4090, precio con marca de tiempo de agosto de 2026. Solo tiempo de GPU — sin CPU, almacenamiento, transferencia de datos, orquestación o postprocesamiento con LLM. Con 10 millones de páginas/mes, solo Surya2 alcanza aproximadamente $10.609/mes en esta base (10.000 × $1.0609).

Perfil de Costo Real de Tesseract: Sin Factura de GPU, Pero No es Gratis

Tesseract es el único motor exclusivo de CPU en el benchmark, y su celda de costo está vacía por diseño — no consumió horas de GPU facturadas, por lo que no hay nada que cobrar a $0.76/hr. Eso no es lo mismo que no costar nada: la infraestructura de CPU en la que se ejecuta (tu propio hardware o una instancia de CPU alquilada) es un costo real que este benchmark no cuantifica, y su techo de recuperación de campos puede empujar el gasto hacia adelante.

En SROIE, Tesseract aún mantuvo 78.6 páginas/min en CPU — más alto que cuatro de los siete motores GPU (PaddleOCR-VL 68.2, Docling 56.7, Unlimited-OCR 34.4, Surya2 12.1). A bajo volumen en infraestructura de CPU ya provisionada, eso lo hace genuinamente rentable: sin alquiler de GPU. La trampa aparece cuando los campos, no solo el texto, son el resultado: la base de texto débil de Tesseract limita lo que un LLM posterior puede recuperar — su F1 de campos LLM en CORD es 0.163 con un CER de CORD de 0.9523 (field_method_comparison.csv, fila tesseract/cord_v2) — por lo que los ahorros de GPU pueden compensarse con gastos de postprocesamiento y corrección en otro lugar. El compromiso CPU-vs-GPU es el tema del enfrentamiento dedicado Tesseract vs PaddleOCR; el techo del postprocesador se cubre en Regex vs Extracción de Campos con LLM.

Costo del Pipeline ≠ Costo del Motor: El Límite del Postprocesador LLM

Cada número en esta página es la factura de GPU del motor OCR y nada más. Los pipelines de extracción en producción comúnmente añaden un paso de extracción de campos con LLM sobre el texto OCR — el benchmark ejecutó uno (deepseek-v4-flash) en las 16 ejecuciones — y ese paso es un costo de API separado por token que no aparece en ninguna cifra de motor aquí.

El CSV de comparación registra los conteos de tokens para el paso de postprocesamiento en SROIE — por ejemplo, el texto OCR de docTR costó 151,131 tokens de prompt + 25,377 tokens de completado para extraer los cuatro campos del recibo — y esos conteos de tokens son la base para estimar el gasto adicional. Esta página deliberadamente no convierte tokens a dólares: los precios de LLM varían por proveedor, plan y modelo, y cualquier cifra en dólares quedaría obsoleta de inmediato. El costo del motor y el costo del pipeline son dos líneas en el presupuesto; la línea del LLM es una función de tu diseño de prompt y proveedor, no del motor OCR.

Motor (fuente de texto OCR)Tokens de prompt LLM (SROIE)Tokens de finalización LLM (SROIE)Fuente
Tesseract128,28524,561field_method_comparison.csv · fila tesseract/sroie_2019
PaddleOCR134,74626,059field_method_comparison.csv · fila paddleocr/sroie_2019
EasyOCR138,68925,607field_method_comparison.csv · fila easyocr/sroie_2019
docTR151,13125,377field_method_comparison.csv · fila doctr/sroie_2019
Surya2130,26226,372field_method_comparison.csv · fila surya2/sroie_2019
Docling157,19126,087field_method_comparison.csv · fila docling/sroie_2019
Unlimited-OCR185,70525,876field_method_comparison.csv · fila unlimited_ocr/sroie_2019
PaddleOCR-VL148,97326,301field_method_comparison.csv · fila paddleocr_vl_vllm/sroie_2019

Tabla: field_method_comparison.csv — llm_prompt_tokens / llm_completion_tokens, filas sroie_2019; llm_model = deepseek-v4-flash. Los recuentos de tokens cubren un pase de extracción de campos (cuatro campos de recibo) sobre la división de prueba SROIE de 361 páginas. Estos son la base para estimar el gasto de posprocesamiento LLM; no se proporciona conversión a dólares porque los precios de LLM varían según el proveedor y el plan.

Cómo estimar su propio costo

No necesita volver a ejecutar un benchmark de 8 motores para obtener una estimación de costo defendible para su propia carga de trabajo. El método del benchmark — tiempo real × su tarifa por hora — se reproduce en cuatro pasos y un ejemplo práctico.

  1. Elija su motor y su rendimiento medido. Use la columna de páginas por minuto como proxy para un mismo tipo de documento (por ejemplo, docTR 449.3 o Surya2 12.1 páginas/min en SROIE; filas de summary_metrics.csv sroie_2019). Para su propia mezcla de documentos, mida su propio rendimiento en una pequeña muestra — la clasificación anterior muestra que el costo por 1,000 páginas depende del conjunto de datos.
  2. Convierta el volumen a horas de tiempo real. hours = (model init + N / pages_per_minute) / 60 para N páginas. La inicialización del modelo se paga una vez por proceso/lote, por lo que debe aparecer en el numerador.
  3. Múltiplique por su tarifa por hora. cost = hours × rate. La tarifa del benchmark fue de $0.76/hr (RunPod RTX 4090, precio con marca de tiempo de agosto de 2026). Ejemplo práctico del propio benchmark: la ejecución de docTR SROIE tomó 81,867 ms de tiempo real para 361 páginas (performance.run_wall_time_ms en su manifiesto censurado) → 0.0227 hr × $0.76 = $0.0173 para la ejecución → × 1,000 / 361 = $0.0479 por 1,000 páginas, coincidiendo exactamente con la fila del CSV.
  4. Tenga en cuenta la amortización de la inicialización y el tamaño del lote. Los 81,867 ms anteriores incluyen la inicialización para un lote de 361 páginas; con 1,000,000 de páginas, la misma inicialización se diluye ~2,770× y el costo por página se acerca al rendimiento en estado estable puro. Los lotes pequeños pagan el costo de inicialización repetidamente — un lote de 10 páginas paga la misma inicialización que una ejecución de 10,000 páginas, por lo que el costo por 1,000 páginas aumenta drásticamente con lotes pequeños. Si su carga de trabajo es intermitente, aumente el tamaño de los lotes o acepte una economía con alta inicialización.
  5. Agregue los costos del pipeline en líneas separadas. La extracción de campos por LLM cobra por token (recuentos de tokens en el CSV de comparación), el almacenamiento y la transferencia cobran por byte, y las pilaas de CPU exclusivas estilo Tesseract cobran por tiempo de CPU — ninguno de estos está incluido en las cifras por 1,000 páginas de esta página.

Este es un método aproximado derivado de la propia base de costos del benchmark (tiempo real × tarifa, incl. inicialización del modelo); no es asesoramiento financiero y sus números exactos varían según el hardware, la mezcla de documentos, los tamaños de lote y la utilización. La tarifa de $0.76/hr es un precio bajo demanda con marca de tiempo de agosto de 2026 — recalcule con las tarifas actuales.

Preguntas Frecuentes

¿Cuánto cuesta el OCR por 1.000 páginas?

Entre $0.048 (docTR) y $1.061 (Surya2) por 1.000 páginas en SROIE 2019, medido en una RTX 4090 a $0.76/hr con el precio registrado en agosto de 2026 (summary_metrics.csv cost_per_1000_pages, filas sroie_2019). El costo incluye la inicialización del modelo, por lo que el costo por página disminuye a medida que aumenta el tamaño del lote. En CORD v2, los mismos motores van desde $0.086 (EasyOCR) hasta $1.162 (Surya2).

¿Qué motor OCR de código abierto es el más barato de ejecutar?

docTR fue el motor GPU más barato medido, con $0.0479 por 1.000 páginas en SROIE (449.3 páginas/min, fila doctr/sroie_2019 de summary_metrics.csv) — y la advertencia sobre la dependencia del conjunto de datos es importante: en CORD v2, EasyOCR ($0.0863) superó ligeramente a docTR ($0.0939). La respuesta a "más barato" depende de su conjunto de documentos; los puntos de referencia (docTR cerca del mínimo, Surya2 alto) se mantuvieron en ambos.

¿Por qué el motor más rápido también es el más barato?

Porque la factura se basa en las horas de reloj a $0.76/hr: el motor que termina una página en 109 ms (docTR) paga ~1/25 de las horas que paga un motor de 2.668 ms (Surya2) por página (summary_metrics.csv latency_p50_ms / cost_per_1000_pages, filas sroie_2019). Con la facturación por uso de GPU, el rendimiento es costo — por lo que la clasificación de costos y la de rendimiento son casi imágenes especulares.

¿Es Tesseract OCR gratuito?

No — Tesseract es solo CPU, por lo que no consume horas de GPU facturadas y su celda de costo está vacía en el CSV de referencia por diseño, pero eso no es un cero: la infraestructura de CPU en la que se ejecuta es un costo real, y su techo de recuperación de campos (CORD LLM field F1 0.163, fila tesseract/cord_v2 de field_method_comparison.csv) puede aumentar el gasto en el postprocesamiento posterior. A bajo volumen en hardware CPU ya provisionado, puede ser realmente rentable — 78.6 páginas/min en SROIE, más rápido que cuatro de los siete motores GPU — pero "sin factura de GPU" y "gratuito" son afirmaciones diferentes.

¿Por qué Surya2 es tan costoso por cada 1.000 páginas?

Porque es el motor más lento del benchmark: 12,1 páginas/min en SROIE significa las más horas de tiempo de ejecución por 1.000 páginas a la misma tarifa de $0,76/hora (resumen_metrics.csv pages_per_minute / cost_per_1000_pages, fila surya2/sroie_2019). Cabe destacar que también tiene la mejor precisión de caracteres (CER 0,1915) — el ejemplo más claro del benchmark de que el costo sigue al tiempo, no a la precisión.

¿Disminuye el costo de OCR por página a medida que aumenta el volumen?

Sí, hasta un límite. El costo aquí incluye la inicialización del modelo, que se paga una vez por proceso/lote; la ejecución de docTR del benchmark pagó la inicialización dentro de 81.867 ms para 361 páginas (rendimiento.manifest.run_wall_time_ms), por lo que a 1 millón de páginas esa inicialización se diluye casi a cero y el costo se acerca al rendimiento en estado estable puro. El límite es el costo en estado estable en sí — los $0,0479/1K de docTR en SROIE ya están cerca de su límite; los $1,0609 de Surya2 reflejan una inferencia en estado estable genuinamente lenta, no solo la sobrecarga de inicialización.

¿Qué no está incluido en estas cifras por cada 1.000 páginas?

El postprocesamiento con LLM (un costo por token de API separado; recuentos de tokens en field_method_comparison.csv), la infraestructura/CPU para pilas estilo Tesseract, almacenamiento y transferencia de datos, orquestación, brechas de utilización de GPU y servicios de OCR en la nube/API — ninguno de los cuales está en la factura de GPU del motor que representan estas cifras. Las APIs en la nube también facturan por llamada con precios dependientes de las características, un modelo de costo diferente al del tiempo de ejecución en GPU alquilada; no se evalúan en esta página.

¿De dónde provienen estos números?

Cada cifra es una fila de los CSV publicados del benchmark de primera parte — results/summary_metrics.csv (costo por 1.000 páginas, rendimiento, latencia, precisión) y results/field_method_comparison.csv (tokens del postprocesador LLM y F1 por campo) — alojados en ImageToTableai/benchmark-ocr, con un manifest.json por ejecución que registra la tarifa de $0,76/hora, la marca de tiempo de precio de agosto de 2026, las versiones del modelo y los hashes del entorno.

Metodología y Fuentes

Protocolo

Esta página reporta la dimensión de costo de un benchmark independiente y reproducible (nivel oficial) — no una encuesta de afirmaciones de terceros. Solo se usaron divisiones de prueba fijas: SROIE 2019 test (361 recibos en inglés, campos planos empresa/dirección/total) y CORD v2 test (100 recibos en indonesio, campos anidados menú/sub_total/total); las divisiones de entrenamiento nunca se evaluaron. Cada par (motor × conjunto de datos) reutilizó las mismas imágenes, la misma verdad de terreno y el mismo protocolo de medición (warm_then_scored: un pase de calentamiento fijo precede al pase puntuado). Las 16 ejecuciones completadas tuvieron error_rate 0.0 (columna error_rate de summary_metrics.csv).

Entorno de Ejecución y Base de Costos

  • Hardware: todas las ejecuciones en GPU se realizaron en una NVIDIA RTX 4090 (24 GB); el costo de GPU se calculó con la tarifa bajo demanda de RunPod de $0.76/hr, con la marca de tiempo del precio (price_recorded_at_utc 2026-08-13T08:00:00Z) registrada en el manifiesto redactado de cada ejecución. Tesseract se ejecutó solo en CPU y no tiene costo de GPU (celda de costo vacía en el CSV — por diseño, no un cero).
  • Fórmula de costo: costo por 1,000 páginas = tiempo de ejecución real × $0.76/hr × (1,000 / páginas procesadas), incluyendo la inicialización del modelo. Verificado por el ejemplo resuelto de docTR en la sección Cómo Estimar (81,867 ms → $0.0479/1K).
  • Motores: todos los modelos se ejecutan listos para usar, sin ajuste fino. Versiones bloqueadas según los manifiestos de ejecución (Tesseract 5.3.4, PaddleOCR 3.7.0, EasyOCR 1.7.2, docTR v1.0.1, Docling 2.119.0, Surya2 0.22.1, Unlimited-OCR atendido por vLLM, PaddleOCR-VL 1.6).
  • Postprocesador LLM: deepseek-v4-flash vía API a temperatura 0 (la columna llm_model en field_method_comparison.csv); sus conteos de tokens se reportan como base para el costo separado del pipeline — las cifras de costo del motor OCR nunca lo incluyen.
  • Postprocesamiento de campos: las métricas de campos de SROIE son postprocessed_sroie_receipt_regex_* / variantes LLM — campos extraídos del texto OCR, no de la salida estructurada nativa.
  • Advertencia CORD: el texto de verdad de terreno de CORD incrusta la estructura de anotación, lo que infla el CER crudo para cada motor; por lo tanto, las filas de CORD se mantienen separadas de los rankings de SROIE. Las cifras de costo (basadas en tiempo real) no se ven afectadas por la advertencia del CER, pero ambos conjuntos de datos siguen siendo solo recibos.

Definición de Métricas

  • Costo por 1,000 páginas: horas de GPU facturadas por 1,000 páginas a la tarifa registrada de $0.76/hr, tiempo real incluyendo la inicialización del modelo. Vacío para Tesseract solo con CPU.
  • Páginas por minuto: rendimiento en tiempo real incluyendo la inicialización del modelo.
  • Latencia p50/p95: tiempo de inferencia por página en estado estable (calentado y luego evaluado, excluye la carga del modelo).
  • CER/WER: distancia de edición (inserciones + eliminaciones + sustituciones) sobre caracteres/palabras de referencia. Sensible a mayúsculas/minúsculas y convenciones de formato — las salidas de VLM se normalizan en cuanto a mayúsculas, por lo que el CER sobreestima el error de VLM (ver la página de resumen).
  • F1 de valor de campo: media armónica de precisión/recall sobre valores de campos extraídos, por postprocesador (regex o LLM).

Lista de Fuentes

  1. summary_metrics.csv (GitHub raw). 16 filas = 8 motores × 2 conjuntos de datos de recibos (sroie_2019, cord_v2). Columnas: model, compute_type, dataset, cer, wer, field_f1_regex, field_acc_regex, latency_p50_ms, latency_p95_ms, cost_per_1000_pages, pages_per_minute, error_rate. Cada cifra de costo, rendimiento, latencia y CER en esta página se remonta a una fila aquí.
  2. field_method_comparison.csv (GitHub raw). 16 filas; columnas model, dataset, llm_model (= deepseek-v4-flash), precisión y F1 de valor de campo regex/LLM, document-fields-exact, llm_median_latency_ms, llm_prompt_tokens, llm_completion_tokens. Cada conteo de tokens y cifra de F1 de campo LLM se remonta a una fila aquí.
  3. Repositorio ImageToTableai/benchmark-ocr. Repositorio público que alberga los CSV de resultados, manifiestos de ejecución redactados, protocolo congelado y listas de muestras de datos (divisiones de prueba fijas) para reproducción.
  4. results/manifests/ (GitHub). Un manifest.json redactado por cada ejecución publicada (16 ejecuciones) con la huella del entorno, versiones del modelo, metadatos de costo (gpu_hourly_usd, price_recorded_at_utc), tiempo real y hashes de artefactos.
  5. Huang et al., "ICDAR2019 Competition on Scanned Receipt OCR and Information Extraction" (2019). Definición del conjunto de datos SROIE 2019, estructura de tareas y licencia (CC-BY-4.0).
  6. Park et al., "CORD: A Consolidated Receipt Dataset for Post-OCR Parsing" (2020). Definición del conjunto de datos CORD v2, esquema de campos anidados y licencia (CC-BY-4.0).

Limitaciones

  • Un solo nivel de GPU y un solo registro de precios: todas las cifras de GPU provienen de una RTX 4090 a $0.76/hr, precio registrado en agosto de 2026. Los precios de GPU spot/bajo demanda cambian — recalcule con las tarifas actuales; otras GPUs, servidores multi-GPU y programación por lotes alteran el rendimiento y el costo.
  • Solo recibos: recibos de SROIE (inglés) y CORD (indonesio). El costo, el rendimiento y la precisión en facturas, formularios, contratos o documentos largos no se han medido; las clasificaciones anteriores no son generalizables más allá de los recibos.
  • El costo incluye la inicialización del modelo — dependiente del tamaño del lote: las cifras reflejan el patrón de ejecución del benchmark (divisiones fijas de 361/100 páginas, calentamiento y puntuación). Lotes más pequeños pagan la inicialización repetidamente y cuestan más por 1.000 páginas; lotes más grandes se acercan al límite de estado estable.
  • Asimetría CPU/GPU: Tesseract (CPU) se compara con motores acelerados por GPU. Su ventaja de costo refleja la ausencia de facturación de GPU, no un costo cero — la infraestructura de CPU, la energía y el tiempo del personal no se cuantifican, y su techo de recuperación en campo (CORD LLM campo F1 0.163) puede trasladar el gasto al postprocesamiento.
  • Sin modelos en la nube/API: AWS Textract, Google Document AI, Azure AI Document Intelligence y APIs de OCR/VLM alojadas no se incluyen; su tarificación por llamada y por características difiere fundamentalmente de la facturación por tiempo de ejecución en GPU alquilada y no se implica comparación.
  • No se modela la utilización y el tiempo de inactividad: las cifras asumen que la GPU se factura por el tiempo de ejecución y está inactiva en caso contrario; los despliegues reales con GPUs inactivas, multiinquilino o subutilizadas tienen costos efectivos diferentes.
  • El costo del postprocesamiento con LLM no se convierte a dólares: los recuentos de tokens (field_method_comparison.csv) son la base; la tarificación de LLM varía por proveedor y plan y se deja intencionalmente al lector.
  • Los escenarios derivados no se miden: la tabla de volumen mensual es aritmética simple sobre la base de costos de SROIE, etiquetada como estimaciones derivadas — no como ejecuciones adicionales del benchmark.
  • Tamaño de la muestra y fijación de versiones: 361 + 100 muestras; los resultados son válidos para las versiones de modelo de agosto de 2026 listadas arriba. Versiones más nuevas de los motores pueden alterar el costo/rendimiento; diferencias de un solo dígito porcentual deben tratarse como ruido.

Referencias relacionadas: OCR Tradicional vs VLMs de Análisis de Documentos · docTR vs Surya2: Empate en CER, Brecha de Costo · Tesseract vs PaddleOCR: Perfil de Costo en CPU · Regex vs Extracción de Campos con LLM · Desglose de Costos de Procesamiento de Documentos

Lecturas relacionadas: Precios de Extracción de Documentos con IA (2026) · Precisión de OCR con IA vs OCR Tradicional · Extracción de Datos de Imágenes con IA vs OCR Tradicional

📮 contact email: [email protected]