compare
Benchmarks, feature comparison, and factchecks — everything you need to evaluate both SDKs. We show where Nutrient wins and where Apryse wins, and we back claims with actual test data from March 2026.
| Nutrient | Apryse | |
|---|---|---|
| Core architecture | Optimized PDFium fork — the same PDF engine in Google Chrome,
continuously improved since 2011. Open source base with
proprietary optimizations. | Proprietary engine built in-house since 1998. Single-vendor
dependency with no external audit trail. |
| Annotation data format | ||
| Deployment | ||
| AI capabilities | ||
| Real-time collaboration |
Nutrient Web Viewer SDK is built on an optimized fork of PDFium — the open source PDF engine maintained by Google for Chrome. Security fixes from upstream PDFium are applied to our fork promptly. We are SOC 2 Type 2 audited and conduct annual independent penetration testing. Vulnerability management SLAs and SBOM available for regulated environments.
| Nutrient | Apryse | |
|---|---|---|
| PDF engine | Optimized and well-maintained fork of PDFium (open source,
peer‑reviewed) | Proprietary, closed source |
| SOC 2 Type 2 | | |
| Independent penetration testing | Annual, documented | |
Nutrient’s core engine is based on a heavily optimized fork of PDFium, with emphasis on greater document fidelity and performance. PDFium is the same engine used in Chromium and Android. It’s maintained by Google, continuously fuzzed for security, and peer-reviewed by contributors, including Microsoft and Dropbox. Apryse uses a proprietary engine that only it can audit.
| PDFium PDF engine | Apryse | |
|---|---|---|
| Contributors | Google, Microsoft, Dropbox, Nutrient | Apryse |
| Active users | Billions | <0.1 percent of PDFium footprint |
| Code commits (12 months) | 1,892 | Undisclosed |
| Commercial dependencies | 0 | 2 |
| Open source dependencies | 12 | 50+ |
Viewing, annotations, editing, forms, signatures, conversion, AI, and more — compared feature by feature.
| Nutrient | Apryse | Winner | |
|---|---|---|---|
| PDF rendering | Compact engine with best-in-class performance and fidelity
(backed by benchmark data). | High fidelity proprietary engine. Less performant for typical
documents but has some strengths with certain niche formats. | Nutrient |
| Multi-tab/side-by-side view | Supported, not optimized for high tab counts | Built-in with shared resources, optimized for multidocument
workflows | Apryse |
| Theming | Five themes: light, dark, auto, high contrast light, high
contrast dark | Light and dark themes with CSS customization | Nutrient |
| Accessibility | WCAG 2.2 AA. Screen reader, keyboard nav, high contrast modes. | WCAG 2.2 AA. Screen reader, keyboard nav. | Draw |
| Print control | Auto-print, programmatic printing, with/without annotations,
custom watermarks, disable printing | Standard print with selective page printing | Nutrient |
| UI customization | API-driven: toolbars, sidebars, themes, overlays. Clean upgrade
path between versions. | Open source fork: full source access, component-level overrides.
Requires manual merge on upgrades. | Draw |
| Real-time collaboration | Nutrient Instant — production-ready syncing across Web, iOS,
Android. Includes comments, permissions, offline support, conflict
resolution. Zero custom server code. | Requires custom server implementation. Reference implementations
provided for SQLite and Firebase. | Nutrient |
| Annotation types | 17 types covering all standard document review workflows: text
markup, shapes, ink, stamps, images, files, links, redaction | 30+ types. Additional types are 3D models, sound, and video —
niche features most teams don’t use. Video annotations are
end-of-life for new customers. | Apryse |
| PDF text editing | Client-side, no server required. Character-level rich text
formatting. Highly responsive. | Client-side, no server required. Character-level rich text
formatting. Text alignment options. | Draw |
| DOCX editing | High-performance document editor with AI integration.
DocJSON-based — lightweight, customizable, optimized for
document-to-PDF output and agentic content creation workflows. | Native DOCX editing with track changes and rich formatting.
Designed primarily for round-tripping back to Word. | Draw |
| Forms (create, fill, edit) | Full form creator with drag-and-drop UI. All field types.
Client-side, no server. | Form designer with live field editing. All field types. | Draw |
| Digital signatures | PAdES, CAdES, CMS, LTV, HSM integration, Web Crypto API | PKI, PFX, LTV, custom signature handlers | Nutrient |
| Office to PDF (client-side) | DOCX, DOC, XLSX, XLS, PPTX, PPT, ODT and variants (DOTX, DOCM,
XLSM, PPTM). No server or MS Office required. | DOCX, XLSX, PPTX, DOC, XLS, PPT. No server or MS Office required. | Nutrient |
| CAD viewing | DWG, DXF | DWG, DWF, DXF, DGN, RVT (5 types). Relevant for AEC/construction
workflows. | Apryse |
| Image formats (Web Viewer SDK) | PNG, JPEG, TIFF (multipage). Covers more than 95 percent of
enterprise use cases. 60+ formats available via .NET Server SDK. | JPG, PNG, TIFF, SVG, BMP, GIF | Draw |
| Pattern-based redaction | Preset patterns (credit cards, SSN, emails, phone numbers) and
custom regex | Text pattern, regex, and search-based redaction | Draw |
| AI-powered redaction | Describe what to redact in plain English. AI identifies sensitive
content across the document. | Not available. Pattern matching only. | Nutrient |
| Document comparison | Visual overlay, text diff, and AI-powered summary with change
categories and filtering. Interactive sidebar with jump-to
navigation. | Visual overlay and semantic text comparison. No AI layer. | Nutrient |
| Data extraction (AI/ML) | VLM-enhanced extraction via Python/Java SDKs using Claude,
OpenAI, or local models. Also: KVP, table, and barcode extraction
via .NET SDK. | ML-assisted KVP detection, table extraction to JSON/XLSX,
document structure to JSON | Nutrient |
| Document classification | LLM-powered — classifies any document type using natural language
instructions. No retraining when your documents change. | Limited to 19 pretrained categories. Documents outside those
categories aren’t classified. | Nutrient |
| AI Assistant | Built into the viewer: chat, summarize, translate, compare,
redact. Agentic mode can add annotations, fill forms, and run
multistep workflows. Works with any LLM provider. | Not available | Nutrient |
| Multidocument AI | Cross-document Q&A and analysis across document collections | Not available | Nutrient |
| Measurement tools | Distance, perimeter, area (polygon/rect/ellipse), calibration,
snap-to-page | Distance, perimeter, area, calibration | Nutrient |
Nutrient offers server SDKs in .NET, Python, and Java. Apryse offers a single SDK with bindings for 10 languages (including Go, PHP, Ruby, and Node.js). Nutrient’s SDKs are native to each language ecosystem, while Apryse wraps a C/C++ core.
| Nutrient | Apryse | Winner | |
|---|---|---|---|
| Language support | .NET (C#, VB.NET), Python, Java | C#/.NET, Java, Python, Node.js, C/C++, PHP, Ruby, Go | Apryse |
| Image format support (.NET) | 60+ formats, including DICOM, HEIC, 50+ RAW camera formats | ~30 image types | Nutrient |
| OCR preprocessing (.NET) | Auto-deskew, noise removal, line removal, punch hole removal,
character enhancement, blank page detection | Standard deskew and quality correction | Nutrient |
| Zonal OCR (.NET) | Extract text from specific page regions. Multi-zone parallel
processing. | Not documented | Nutrient |
| VLM extraction (Python/Java) | Use Claude, GPT, or local models (Ollama, LM Studio, vLLM) for
structured data extraction. Local models are the default — no data
leaves your infrastructure. | Not available | Nutrient |
| Barcode reading (.NET) | 30+ types (1D + 2D), AI-powered detection with damaged/blurred
code recovery | QR, UPC, DataMatrix, PDF417, basic preprocessing | Nutrient |
| OMR (.NET) | Process surveys, questionnaires, and ballot forms automatically | Not available | Nutrient |
| MRZ extraction (.NET) | Passport, ID, and driver’s license data extraction | Not available | Nutrient |
| MICR extraction (.NET) | Bank check processing — magnetic ink character line reading | Not available | Nutrient |
| Scanner integration (.NET) | TWAIN and WIA direct scanner integration for scan-to-PDF
workflows | Not documented | Nutrient |
| Smart redaction (.NET) | AI/ML-powered — detects names, emails, phones, addresses
contextually | Regex pattern matching only | Nutrient |
| Template generation | Word templates to PDF and PDF/UA | Word, PowerPoint, and Excel templates via Fluent engine | Apryse |
| CAD conversion | DWG, DXF to PDF | DWG, DWF, DXF, DGN, RVT to PDF | Apryse |
| Document comparison | Visual comparison in .NET SDK. Full visual overlay, text diff,
and AI summary in Web Viewer SDK. | PDF overlay and semantic text comparison server-side | Draw |
| Image processing (.NET) | 50+ filters (blur, sharpen, red eye, color adjustment). Useful
for scan cleanup before OCR. | Basic image manipulation | Nutrient |
Tested on 22 documents across 6 categories (small, medium, complex, industry, large, linearized). WiFi-throttled network, Playwright headless Chromium, mean of 10 runs per document. All tests conducted March–April 2026. Benchmark suite and files available on request.
| Web Viewer SDK rendering | Nutrient | Apryse |
|---|---|---|
| Cold start — first page render (22 documents) | Wins 22 of 22 | Wins 0 of 22 |
| Warm start — first page render | Wins 19 of 22, 3 ties | Wins 0 of 22 |
| Simple PDF — cold start | 1.86s | 3.00s |
| Simple PDF — warm start | 326ms | 500ms |
| Interactive form — cold start | 1.97s | 5.32s |
| Large scanned document — cold start | 8.51s | 9.55s |
| Linearized PDF (remote) — warm start | 2.66s | 6.18s |
| Zoom render (3× magnification) | Wins 13 of 22, 2 ties | Wins 7 of 22 |
| Document Engine (server-side) | Nutrient | Apryse |
|---|---|---|
| OCR — simple PDF* | 569ms | 17,683ms (31× slower) |
| OCR — medium PDF* | 318ms | 63,885ms (200× slower) |
| Text extraction — complex PDF | 12ms | 80ms |
| PDF export — complex PDF | 19ms | 136ms |
| Search — complex PDF | 14ms | 71ms |
| Document upload — complex PDF | 13ms | 196ms |
| Form fill and export | 12ms | 17ms |
*OCR benchmarked on Apple M4 Max (ARM64). Nutrient runs natively on ARM64; Apryse supports x64 only and runs under Rosetta 2 translation. Apryse OCR times may be faster on native x64 hardware.
| PDF/A and PDF/UA compliance | Nutrient | Apryse |
|---|---|---|
| PDF/A — veraPDF pass rate (3,157 files) | 97.2% | 85.3% |
| PDF/A — critical failures | 0 | 1 |
| PDF/A — throughput | 1,754 files/min | 1,839 files/min |
| PDF/A — average output size | 1.06 MB (smallest tested) | 1.48 MB |
| PDF/UA — veraPDF pass rate (3,157 files) | 96.5% | 64.6% |
| PDF/UA — critical failures | 0 | 7 |
| PDF/UA — throughput | 322 files/min | 49 files/min |
Apryse’s comparison page contains several inaccurate or misleading statements about Nutrient. Here are the facts.
| What Apryse claims | What’s actually true |
|---|---|
| “Nutrient has 113 CVEs” | Those are PDFium CVEs — discovered and patched by Google’s
security team through continuous fuzzing. That’s the open source
security model working as designed: Vulnerabilities are found by a
large community and fixed quickly. Nutrient applies upstream
patches promptly. |
| “Only 8 contributions to PDFium” | This counts upstream commits to Google’s repository only.
Nutrient maintains a heavily optimized private fork with
proprietary improvements — the same way most companies don’t open
source their competitive advantages. What matters is the quality
of the engine in the SDK you license. |
| “Cloud required for certain features” | Core features — viewing, annotations, forms, signatures, editing
— run entirely client-side in WebAssembly. No server, no cloud.
Document Engine is optional for OCR, collaboration, and advanced
conversion. AI features work with local models (Ollama, vLLM, LM
Studio) — cloud LLMs are a choice, not a requirement. |
| “Forms use placeholder annotations” | Incorrect. Nutrient includes a full form creator with
drag-and-drop UI and programmatic API for all field types.
Client-side, no server required. |
| “Struggles with large, complex files” | Our March 2026 benchmarks show Nutrient WASM wins cold-start
first-page render on all 22 test documents — including large
scanned documents and complex interactive forms. Numbers are on
this page. |
| “Closed-source UI is limiting” | Nutrient’s API-based customization covers toolbars, sidebars,
themes, overlays, and branding, with a clean upgrade path between
versions. Apryse’s open source UI means forking, and every SDK
upgrade requires manually merging your UI changes. |
| “Nutrient has limited regional coverage” | Nutrient provides global follow-the-sun SLAs with dedicated
solutions engineers. Our team is focused entirely on document
technology — no bloat from acquisitions or unrelated product
lines. |
Chat, redact, extract, compare, and translate — directly in the viewer. Works with any LLM provider, including local models.
Built on PDFium, hardened by Google’s security team and the open source community. SOC 2 Type 2 audited. Annual independent penetration testing.
Nutrient Instant provides real-time syncing across Web, iOS, and Android with zero custom server code.
Component-based pricing. Only license the features your product needs.
Client-side WebAssembly, self-hosted Docker/Kubernetes, or Nutrient-managed cloud. Your call.
Yes. PSPDFKit rebranded to Nutrient in 2024. Same product, same team, same technology. All APIs remain compatible — NutrientViewer (formerly PSPDFKitViewer) is the current name. Any reference to PSPDFKit in documentation, GitHub repositories, or forums points to Nutrient today.
Yes. PDFTron rebranded to Apryse in 2023. Under the hood, Apryse still runs the same proprietary PDF engine that dates back to 1998. Any search for “PDFTron SDK,” “PDFTron pricing,” or “PDFTron alternative” leads to Apryse’s current product line.
In an Apryse vs. Nutrient (or PDFTron vs. PSPDFKit) comparison, the gap is widest in three areas. First, AI: Nutrient ships a native generative AI assistant across its viewers for document chat, natural-language redaction, prompt-based data extraction, AI-powered document comparison, and interactive text diffing with AI summaries — Apryse has no generative AI capabilities at all. Second, architecture: Nutrient is JSON-first with built-in real-time collaboration, and it deploys to Docker, cloud, or fully managed infrastructure; Apryse uses XML-based formats, requires manual server setup for collaboration, and has no native cloud product. Third, the PDF engine: Nutrient builds on PDFium, the open source engine behind Chromium, with contributions from Google, Microsoft, and Dropbox; Apryse runs a proprietary, closed-source engine with 12 public CVEs since 2018. Where Apryse has the edge is multi-tab optimized viewing, XFA legacy form support, and annotation status workflows. The full breakdown is in the comparison table above.
Apryse pricing (and legacy PDFTron pricing) is customized by use case, product scope, and contract structure, so direct public comparisons are difficult. Nutrient pricing is modular — you license only the components you deploy, whether client-side, cloud, or self-hosted. The better comparison is usually overall value: product fit, implementation effort, support quality, roadmap confidence, and long-term commercial predictability. Talk to a solutions engineer to get a direct comparison for your stack.
For teams evaluating an Apryse alternative or PDFTron alternative, Nutrient is the stronger fit in most scenarios. On the client side, Nutrient delivers faster PDF content editing, built-in real-time collaboration, and a generative AI assistant embedded directly in the viewer. On the server side, Nutrient offers capabilities Apryse doesn’t have: natural-language AI redaction that works on scanned documents, pattern-based redaction, prompt-driven data extraction, and AI-powered document comparison. The platform runs on PDFium — the same open-source engine behind Chromium — and supports flexible deployment, from client-side to fully managed cloud. Apryse is the better pick if you need multi-tab optimized viewing, XFA form support, or spreadsheet viewing. See the comparison table above for the category-by-category results.
Yes. Teams moving from Apryse or PDFTron to Nutrient typically evaluate a few key areas first, including viewer replacement, annotation workflows (Apryse uses XFDF/XML while Nutrient uses Instant JSON), UI customization, and any format-specific requirements like XFA forms. In practice, migration is very feasible, but the right path depends on how deeply you rely on custom behavior and document workflows today. Schedule a call with our solutions engineering team to get a scoped estimate for your use case.
Talk to our solutions engineers. Bring your documents, your questions, and your edge cases — we’ll run a side-by-side comparison.