# Docling vs PaddleOCR

| Attribute | Docling | PaddleOCR |
|---|---|---|
| **Vioscale score** | 59.6 (32% (low)) | 48.9 (16% (low)) |
| activity.commits_last_30d | 100 | 2 |
| adoption.dependent_repos | 0 | 549 |
| adoption.github_stars | 65,599 | 88,309 |
| deployment.options | `{"cloud":true,"on_prem":true,"air_gapped":true,"self_hosted":true}` | `{"cloud":true}` |
| description.long | A Python library that converts documents from multiple formats (PDF, Word, Excel, images, audio, video, etc.) into structured data representations. Offers sophisticated PDF analysis capabilities for layout, tables, and content extraction, plus OCR support and AI framework integration. | PaddleOCR is an open-source OCR library that uses advanced machine learning algorithms to recognize and extract text from images and PDF documents. It offers a free cloud API service with support for large-scale batch document processing. |
| features.capabilities | `{"open_source":true,"pricing_model":"free_open_source","prebuilt_models":true,"table_extraction":true,"architecture_model":"open_source_library","llm_vlm_based_extraction":true,"mit_or_apache_permissive_oss_license":true,"pdf_and_multimodal_image_ocr_parsing":true,"zero_data_retention_privacy_guarantees":true,"native_chunking_and_vectorization_for_rag":true,"fine_tuned_document_layout_analysis_models":true,"tabular_layout_preservation_for_complex_tables":true}` | - |
| integrations.count | 5 | - |
| integrations.list | `[{"name":"LangChain"},{"name":"LlamaIndex"},{"name":"Crew AI"},{"name":"Haystack"},{"name":"OpenContracts"},{"name":"Apify"}]` | - |
| language.primary | Python | Python |
| license.spdx | MIT | Apache-2.0 |
| market.availability | `{"primaryMarkets":[],"availabilityScope":"global","availableCountries":[],"notAvailableCountries":[]}` | - |
| platform.support | `{"cli":true,"mac":true,"web":true,"linux":true,"windows":true}` | `{"web":true}` |
| pricing | `{"type":"open_source","summary":"Open source project, free to use","freeTier":true,"sourceUrl":"https://docling-project.github.io/docling/","retrievedAt":"2026-08-20T16:31:10.636Z"}` | `{"type":"open_source","summary":"Free open-source with cloud API access (20,000 pages/day)","freeTier":true,"sourceUrl":"https://paddlepaddle.github.io/PaddleOCR/","retrievedAt":"2026-08-20T16:36:20.946Z"}` |
| pricing.free_tier | yes | yes |
| pricing.model | open_source | open_source |
| pricing.price_level | free | free |
| pricing.transparent | yes | - |
| release.cadence_days | 2 | 15 |
| release.history | `[{"url":"https://github.com/docling-project/docling/releases/tag/v2.123.0","date":"2026-08-26T16:15:07Z","type":"stable","version":"v2.123.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.122.0","date":"2026-08-25T09:28:52Z","type":"stable","version":"v2.122.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.121.0","date":"2026-08-20T09:05:04Z","type":"stable","version":"v2.121.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.120.3","date":"2026-08-18T07:50:48Z","type":"stable","version":"v2.120.3"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.120.2","date":"2026-08-17T10:00:58Z","type":"stable","version":"v2.120.2"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.120.1","date":"2026-08-14T11:48:42Z","type":"stable","version":"v2.120.1"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.120.0","date":"2026-08-14T09:29:25Z","type":"stable","version":"v2.120.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.119.0","date":"2026-08-10T10:26:09Z","type":"stable","version":"v2.119.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.118.1","date":"2026-08-07T13:56:13Z","type":"stable","version":"v2.118.1"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.118.0","date":"2026-08-03T15:29:51Z","type":"stable","version":"v2.118.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.117.0","date":"2026-07-30T12:22:45Z","type":"stable","version":"v2.117.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.116.0","date":"2026-07-29T11:24:35Z","type":"stable","version":"v2.116.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.115.0","date":"2026-07-23T14:44:10Z","type":"stable","version":"v2.115.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.114.0","date":"2026-07-20T14:05:50Z","type":"stable","version":"v2.114.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.113.0","date":"2026-07-14T10:41:42Z","type":"stable","version":"v2.113.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.112.0","date":"2026-07-11T04:28:02Z","type":"stable","version":"v2.112.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.111.0","date":"2026-07-08T11:23:53Z","type":"stable","version":"v2.111.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.110.0","date":"2026-07-04T13:53:13Z","type":"stable","version":"v2.110.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.109.0","date":"2026-07-03T14:02:41Z","type":"stable","version":"v2.109.0"},{"url":"https://github.com/docling-project/docling/releases/tag/v2.108.0","date":"2026-07-01T10:28:50Z","type":"stable","version":"v2.108.0"}]` | `[{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.7.0","date":"2026-06-11T12:09:14Z","type":"stable","version":"v3.7.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.6.0","date":"2026-05-28T11:42:29Z","type":"stable","version":"v3.6.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.5.0","date":"2026-04-21T08:40:47Z","type":"stable","version":"v3.5.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.4.1","date":"2026-04-14T05:47:27Z","type":"stable","version":"v3.4.1"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.4.0","date":"2026-01-29T11:19:45Z","type":"stable","version":"v3.4.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.3.3","date":"2026-01-20T07:27:09Z","type":"stable","version":"v3.3.3"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.3.2","date":"2025-11-13T14:46:03Z","type":"stable","version":"v3.3.2"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.3.1","date":"2025-10-29T11:49:29Z","type":"stable","version":"v3.3.1"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.3.0","date":"2025-10-16T12:58:29Z","type":"stable","version":"v3.3.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.2.0","date":"2025-08-21T11:11:07Z","type":"stable","version":"v3.2.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.1.1","date":"2025-08-15T08:55:16Z","type":"stable","version":"v3.1.1"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.1.0","date":"2025-06-29T06:57:35Z","type":"stable","version":"v3.1.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.0.3","date":"2025-06-26T10:04:31Z","type":"stable","version":"v3.0.3"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.0.2","date":"2025-06-18T16:38:08Z","type":"stable","version":"v3.0.2"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.0.1","date":"2025-06-05T03:27:00Z","type":"stable","version":"v3.0.1"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v3.0.0","date":"2025-05-20T12:16:51Z","type":"stable","version":"v3.0.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.10.0","date":"2025-03-07T07:03:56Z","type":"stable","version":"v2.10.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.9.1","date":"2024-10-22T05:57:17Z","type":"stable","version":"v2.9.1"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.9.0","date":"2024-10-18T15:43:04Z","type":"stable","version":"v2.9.0"},{"url":"https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.8.1","date":"2024-07-17T10:48:47Z","type":"stable","version":"v2.8.1"}]` |
| security.vulnerabilities | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=go&package_name=github.com%2Fdocling-project%2Fdocling&per_page=100","last_12m":0,"max_severity":null}` | `{"count":0,"source":"https://advisories.ecosyste.ms/api/v1/advisories?ecosystem=pypi&package_name=paddleocr&per_page=100","last_12m":0,"max_severity":null}` |

## Capabilities (Document AI)

| Capability | Docling | PaddleOCR |
|---|:--:|:--:|
| **Capabilities** |  |  |
| Prebuilt models | ✓ | - |
| Custom model training | - | - |
| Table extraction | ✓ | - |
| Handwriting recognition | - | - |
| Id document parsing | - | - |
| Human in the loop review | - | - |
| Confidence scoring | - | - |
| LLM vlm based extraction | ✓ | - |
| RPA ERP integration | - | - |
| Open source | ✓ | - |

*Source: Vioscale. Generated 2026-09-01T14:39:30.311Z. "-" = undocumented, not absent.*
