DEV Community

Cover image for SelectPdf vs IronPDF in 2026, measured on Windows and Linux
Florentin Badea
Florentin Badea

Posted on

SelectPdf vs IronPDF in 2026, measured on Windows and Linux

Most comparisons still describe the Windows-only SelectPdf of 2025. Here is what changed, and what an open benchmark measured on the same machine under both systems.

I'm the founder of SelectPdf. The numbers below come from an open benchmark that anyone can re-run, and this article also says where IronPDF comes out ahead.

Search for "SelectPdf vs IronPDF" today and most results will tell you that SelectPdf runs only on Windows, renders with WebKit and cannot redact PDFs or convert Word files. Until October 2026 that was a fair description of the classic SelectPdf library. It does not describe the current one, so this article compares the two libraries as they stand in October 2026, with measurements instead of adjectives.

What changed in SelectPdf in 2026

SelectPdf 26.4, released in October 2026, introduced SelectPdf.Universal, a new library on NuGet:

  • It runs on Windows (x64 and x86), Linux (x64 and ARM64), macOS and in Docker.
  • It targets .NET 8, .NET 10 and .NET Standard 2.0.
  • It renders HTML with Chromium only: Chromium 154 in version 26.5.
  • Besides HTML to PDF, it creates, merges, splits and edits PDF documents, fills forms, extracts text, redacts text, images and form fields, and signs with certificates, USB tokens, smart cards and HSMs, with long-term validation. It also converts Word documents to PDF and produces PDF/A and PDF/UA output.

Version 26.5 added a remote engine, so the library also runs on Alpine Linux and in Kubernetes.

The classic SelectPdf library is still maintained for Windows projects, with its WebKit, Blink and Chromium engines. One license covers both libraries.

The same task in both libraries

Converting an HTML string looks much the same in both:

// SelectPdf.Universal
using SelectPdf.Universal;

HtmlToPdf converter = new HtmlToPdf();
PdfDocument doc = converter.ConvertHtmlString(html);
doc.Save("output.pdf");
doc.Close();
Enter fullscreen mode Exit fullscreen mode
// IronPDF
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf");
Enter fullscreen mode Exit fullscreen mode

The differences show up in the details. SelectPdf sets margins in points where IronPDF uses millimetres, and its page-number placeholders are {page_number} and {total_pages} rather than {page} and {total-pages}. Moving a project across is mostly renaming and converting units; a migration guide on GitHub shows each change on a working project.

Both libraries render HTML with Chromium, but not the same version. SelectPdf.Universal 26.5 ships Chromium 154, which has been stable since September 2026. IronPDF 2026.10.3 ships Chromium 109, stable since January 2023, according to the libcef binary in its native packages. CSS and JavaScript features added to Chromium since then will not appear in IronPDF's output.

How it was measured

The numbers come from an open benchmark of ten .NET PDF libraries, run on 2026-10-15. It used SelectPdf.Universal 26.5.0 and IronPdf 2026.10.3, the latest versions on NuGet that day.

  • One machine (Intel Core Ultra 9 275HX, 24 logical cores) ran Windows, and Ubuntu 24.04 under WSL2 on the same hardware.
  • Speed is the median of 9 conversions per page in a warm process, over 18 test pages, with the libraries interleaved so that machine drift is spread out.
  • Throughput is the number of conversions a minute, measured for 60 seconds with 8 conversions running at once.
  • Memory is measured across the library's whole process tree, so a browser engine's helper processes count too.
  • Fidelity compares each PDF, tile by tile, with a Chrome screenshot of the same page (SSIM, where 1.0 means identical).
  • Every PDF/A and PDF/UA file is validated by veraPDF.

The harness, the test pages and the raw results are all public, and the links are at the end.

On Windows, IronPDF is faster

Windows SelectPdf IronPDF
HTML to PDF, average over 18 pages 212 ms 186 ms
Pages converted faster 4 of 18 14 of 18
Cold start (new process, one page) 714 ms 657 ms
Conversions a minute, 8 at once 1,078 1,735
Memory, 8 conversions at once 467 MB 788 MB
Memory over 1,000 conversions (MB) 140 → 156 226 → 630

On Windows, IronPDF converted most pages faster, started faster and completed more conversions a minute. SelectPdf was faster on four pages: long documents, HTML strings, web fonts and CJK text. It also used less memory, and its memory barely grew over 1,000 conversions in one process.

On Linux, SelectPdf is faster

Linux (Ubuntu 24.04, WSL2) SelectPdf IronPDF
HTML to PDF, average over 18 pages 134 ms 169 ms
Pages converted faster 14 of 18 4 of 18
Cold start (new process, one page) 745 ms 1,090 ms
Conversions a minute, 8 at once 2,597 1,520
Memory, 8 conversions at once 727 MB 1,322 MB
Memory over 1,000 conversions (MB) 369 → 389 451 → 1,076

On Linux the order reverses. SelectPdf converted 14 of the 18 pages faster, started faster and completed more conversions a minute at every concurrency the benchmark tested (1, 4 and 8, with both the synchronous and the asynchronous API). IronPDF was faster on a page with a JavaScript chart, on lazy-loaded and large images, and on the SelectPdf home page.

The averages are geometric means of the per-page medians.

Output quality

Output SelectPdf IronPDF
Content checks passed 46 of 48 41 of 48
Fidelity vs Chrome (Windows) 0.984 0.928
Fidelity vs Chrome (Linux) 0.984 0.919
PDF/A, PDF/UA, PDF/X files compliant 17 of 17 5 of 17
Accessibility tag checks 112 of 112 42 of 112
Word to PDF, 8-page report: pages 8 of 8 6 of 8
Word to PDF, 8-page report: fidelity 0.98 0.47

The content checks look for things such as missing text, cut-off content, embedded fonts, loaded images, page numbers, bookmarks, form fields and encryption. SelectPdf missed one wide-content page. IronPDF missed bookmarks, the requested encryption algorithm, lazy-loaded images, the wide-content page and an isolation check.

IronPDF offers fewer standard levels (it has no PDF/A-2u or PDF/A-3u option, for example), and several of the files it did produce failed veraPDF validation.

Both libraries merge, split, watermark, fill forms, sign, redact and produce Factur-X invoices, and every one of those checks passed for both. IronPDF was faster at redaction, signing and Factur-X; SelectPdf was faster at extracting text from long documents and at converting the 8-page Word report.

Docker

On the official mcr.microsoft.com/dotnet/runtime:8.0 image, with nothing installed:

  • SelectPdf converted pages both as root and as a non-root user. Its native package bundles the Chromium libraries it needs, so the Dockerfile has no apt-get step. Linux needs glibc 2.30 or later.
  • IronPDF converted pages as root, but failed as a non-root user. Following IronPDF's own Docker guide, which installs 24 OS packages, it worked as both.

IronPDF has the smaller footprint: its published app is 315 MB on linux-x64, against 450 MB for SelectPdf.

Price

Both libraries sell perpetual licenses with one year of updates and support included, and both charge a yearly renewal for updates after that. The prices below are in USD, read from both vendors' pages on 2026-10-22.

SelectPdf licenses count developers and deployment machines. One license covers both SelectPdf.Universal and the classic library.

SelectPdf Developers Deployment Price Renewal/year
Single Developer 1 1 machine $499 $299
Single Developer OEM 1 unlimited, OEM $799 $499
5-Developers 5 up to 10 machines $799 $499
5-Developers OEM 5 unlimited, OEM $1,099 $699
Enterprise unlimited up to 100 machines $1,199 $799
Enterprise OEM unlimited unlimited, OEM $1,599 $999

The renewal prices apply when you renew before the maintenance plan expires; after it has lapsed, renewal costs $399 to $1,299. Licenses can also be bought with a 3-year or 5-year maintenance plan.

IronPDF licenses count developers, locations and projects. Using it in SaaS or in software you redistribute needs the OEM Redistribution add-on, which the licensing page offers with Plus, Professional and Unlimited, but not with Lite.

IronPDF Developers Locations/projects Price Renewal/year
Lite 1 1 / 1 $999 $599
Plus 3 3 / 3 $1,499 $899
Professional 10 10 / 10 $2,399* $1,799
Unlimited unlimited unlimited $4,799* $3,599
OEM Redistribution add-on (Plus and up) +$1,999

* Shown as a 20% discount from $2,999 and $5,999 on 2026-10-22; Iron Software announces those prices from November 1, 2026

The two price lists are not cut the same way, so here are the closest matches:

SelectPdf IronPDF
1 developer $499 $999 (Lite)
1 developer, SaaS or redistributed $799 (OEM) $3,498 (Plus + OEM add-on)
5 developers $799 $2,399 (Professional)
Unlimited developers $1,199 $4,799 (Unlimited)
Unlimited developers, OEM $1,599 $6,798 (Unlimited + OEM)
Renewal for 1 developer, a year $299 $599

The matches are approximate: IronPDF's smallest license with the OEM add-on is Plus, for three developers; its smallest for five developers is Professional, for ten; and SelectPdf's Enterprise license covers up to 100 deployment machines, where IronPDF's Unlimited has no location limit.

SelectPdf also has a free Community Edition that converts HTML to PDF with no watermark, including in production, for documents of up to 5 pages.

Which one to choose

Choose IronPDF if your servers run Windows and raw conversion speed matters most to you, or if you need a smaller deployment.

Choose SelectPdf if you deploy to Linux or Docker, if you need a recent Chromium, or if you need PDF/A, PDF/UA or accessible output that passes validation. The same applies if you would rather not install OS packages in your images, or if license cost matters: SelectPdf costs less in each of the matches above.

In either case, convert a few of your own documents with both libraries before you decide. The benchmark pages are not your pages.

Limitations

  • There was one machine and one run per operating system. Linux ran in WSL2 on the same hardware, not on a separate server, so treat the numbers as relative.
  • The commercial libraries ran on their trials, with evaluation watermarks masked before the images were compared.
  • Each library was configured the way its vendor documents. If the setup is wrong for either library, the adapter code is public and corrections are welcome.
  • The benchmark is maintained by SelectPdf. Public code and raw data make it checkable; they do not make it independent.

Links

Top comments (0)