Skip to content

SelectPdf Linux and Docker alternatives: what each way past the kernel32.dll error costs

SelectPdf is Windows only, so a Linux container fails on kernel32.dll. Going back to Windows hosting costs a three instance team $4,204.80 a year extra, more than five times the license. The cheapest exits are hosted APIs at about $590 a year.

Live demo

Runs in your browser. Nothing is uploaded. One PDF free to try, then a plan.

Your PDF is downloading. That was the free one. The Starter plan converts as many as you need, for $29 a month or $174 a year.

See the plan

SelectPdf does not run on Linux, and no setting will change that. The .NET library, including the free Community Edition, is Windows only, x86 and x64. Move an ASP.NET Core app into a Linux container and the first conversion fails with Unable to load shared library 'kernel32.dll'. That leaves four real ways forward: go back to Windows hosting, switch to SelectPdf's own hosted API, buy a cross-platform library, or call a rendering API. They differ in cost by a factor of seven. Every price below was read from the vendors' own pages and the Azure retail price list on 15 September 2026.

Why SelectPdf throws kernel32.dll on Linux

The package targets .NET Standard, which is what misleads people. .NET Standard describes the managed API surface, not the native code underneath, and SelectPdf's rendering engine calls into Windows system libraries. A developer reported exactly this on the vendor's own GitHub repository: "In windows all works fine, but in linux we recieved the error: Conversion failure. Unable to load shared library 'kernel32.dll' or one of its dependencies". The issue is closed, and the answer has not changed since.

SelectPdf is open about it today. Its Community Edition page lists the operating system as "Windows only", and its library FAQ says the library "runs on Windows (x86 and x64), including Azure Web Apps. For Linux, macOS or a non-.NET stack, use the SelectPdf Online API". So this is not a bug to wait out. It is a platform decision you now have to price.

The worked example

To keep the comparison honest, fix one team and one job. Three developers, one ASP.NET Core application, 15,000 PDFs a month, moving to Linux on Azure App Service Premium v3 (P1v3) with three instances for redundancy. This is a common shape for a B2B SaaS generating invoices, statements and reports. Here is what each exit costs that team.

Way outYear oneEach later yearTemplate riskCode change
Stay on SelectPdf, run Windows$4,204.80 extra hosting, plus $799 if not yet licensed$4,703.80None, but a restricted engine on App ServiceNone
SelectPdf Online API, Advanced, annual$590$590Lowest: same engineConverter calls become HTTP
HiQPdf Next, Team license$795$397.50Re-test every templateSwap library, add Linux packages
EvoPdf Next, Company license$1,200$550Re-test every templateSwap library, add a startup command
Sitepdf, Growth, yearly$594$594Re-test every templateConverter calls become HTTP

The two cheapest options are both hosted APIs, and they are within $4 of each other. The most expensive option by far is the one that looks like doing nothing.

Option 1: stay on SelectPdf and go back to Windows

This is the instinctive fix, and it is the one to price carefully. On the Azure retail price list for East US, a P1v3 instance costs $0.155 an hour on Linux and $0.315 an hour on Windows. At 730 hours a month that is $113.15 against $229.95, a difference of $116.80 a month per instance. Across three instances the Windows premium is $4,204.80 a year.

Put that next to the license. The 5-Developers tier this team needs costs $799 once, with a $499 on time renewal. The extra Windows hosting costs more than five times the license price, every single year, and it keeps growing with every instance you add. You would be paying the operating system tax to protect a library purchase that was the smaller number all along.

There is also a quality catch. SelectPdf's Azure Functions guide notes that, "similar to Azure Web Apps deployments, SelectPdf will use a restricted rendering engine", and that the plan must be "Premium or App Service Plan, starting with Standard". So the Windows App Service route does not even give you the unrestricted engine you tested on your laptop. Test the output there before committing budget to it.

Going back to Windows makes sense in exactly one case: you already run Windows servers for other reasons and they have headroom. Then the hosting cost is sunk and you change nothing.

Option 2: SelectPdf Online API

SelectPdf sells a hosted REST API on the same engine, and describes it as "identical rendering, over REST". For a team whose templates were tuned against SelectPdf's output, that is the strongest argument on this page: nothing about page breaks, fonts or margins should move. The ladder is $19 a month for 2,000 conversions, $29 for 5,000, $59 for 20,000 with 8 concurrent requests, $119 for 50,000, $229 for 100,000 and $449 for unlimited. Annual billing is ten months of the monthly price, so the plan our example team needs is $590 a year.

The trade is a ceiling. At 15,000 a month the team uses 75 percent of the Advanced plan, and crossing 20,000 moves it to $119 a month. It is also a change in where your HTML goes. The library rendered in your own process; the API receives your documents on someone else's servers. If you sell to companies that audit their vendors, you will need to map the new subprocessor to your SOC 2 controls before your next review, whichever hosted option you pick.

Option 3: a cross-platform .NET library

If the HTML must stay inside your network, you need a library that ships Linux binaries. Two of SelectPdf's direct competitors do, and both price very differently from it. We compare all three license ladders across five team shapes on our SelectPdf, HiQPdf and EvoPdf pricing page; here is how they land for this team.

HiQPdf Next licenses per developer and deploys "on any number of machines", so three developers need the $795 Team license regardless of instance count, renewing at $397.50. It runs on Windows, Linux and macOS and supports App Service, Functions and Docker. HiQPdf notes that HTML to PDF on Linux "might require installing some system dependency packages", so expect Dockerfile work.

EvoPdf Next ignores developers and counts servers, which hurts here. Its Deployment license covers one application on one server, and its buy page is explicit: "As soon as the same application runs on more than one server or instance (behind a load balancer, in a container cluster, with autoscaling) you need a Company License." Three instances means $1,200, renewing at $550. On Linux App Service it also needs a startup command, because "the platform does not persist packages between restarts".

Both are different rendering engines from SelectPdf's, so budget time to re-test every template, not just the invoice you demo with. That testing time is usually larger than the license gap between them.

Option 4: a rendering API

The last option removes the browser engine from your image entirely. Your app posts HTML and gets a PDF back, and the Linux question disappears because there is nothing native left to load. Our own API is priced on the Sitepdf pricing page: $29 a month for 10,000 renders, $99 for 50,000 and $299 for 250,000, and yearly billing costs the same as six months. Our example team at 15,000 a month needs Growth, $594 a year.

Against the SelectPdf Online API that is a near tie on price, so be clear about what separates them. SelectPdf keeps your existing output byte for byte familiar. Sitepdf renders in current Chromium, gives this team 50,000 renders of headroom against 20,000, 10 concurrent renders against 8, and returns a timestamped archive of every source it rendered, kept for a year on Growth, which matters when a customer disputes what an invoice said. If none of that matters to you, SelectPdf's API is the lower risk move and we would tell you so.

The code change is the same size either way: the converter call becomes an HTTP request. Our C# HTML to PDF guide shows the full request, and the converter at the top of this page lets you check how your own template renders before you change a line.

How to choose in ten minutes

Answer three questions in order. Can the HTML leave your network? If no, buy HiQPdf Next if you run more than one instance, or EvoPdf Next Deployment if you genuinely run one app on one server. Are your templates fragile? If a moved page break means a support ticket, take the SelectPdf Online API and keep the engine. Otherwise, pick the API whose volume ceiling, concurrency and record keeping fit where you will be in a year, not where you are today. The one choice that rarely survives the arithmetic is paying Windows hosting rates to keep a library that was never the expensive part.

Frequently asked questions

Does SelectPdf work on Linux?

No. The SelectPdf .NET library, including the free Community Edition, runs only on Windows x86 and x64, including Azure Web Apps. On Linux the first conversion typically fails with an error that it cannot load kernel32.dll. SelectPdf directs Linux, macOS and non .NET users to its hosted Online API, which it describes as identical rendering over REST, starting at $19 a month for 2,000 conversions.

Does SelectPdf work in Docker?

Only in Windows containers. A Linux container, which is what the default ASP.NET Core images and most Kubernetes clusters run, hits the same kernel32.dll failure as any other Linux host. Windows containers work but are larger and need Windows nodes, which cost more to run. If your cluster is Linux, use a library with Linux binaries, such as HiQPdf Next or EvoPdf Next, or move rendering to an API.

Can SelectPdf run on Azure App Service for Linux?

No, because App Service for Linux is still Linux. SelectPdf runs on Azure App Service for Windows, where it uses a restricted rendering engine, and on Azure Functions only on a Premium plan or an App Service plan starting with Standard, never on the Consumption plan. On East US list prices a Windows P1v3 instance costs $116.80 a month more than the same instance on Linux.

Is the SelectPdf Online API the same as the library?

SelectPdf says it uses the same engine, describing it as identical rendering over REST, so templates tuned for the library should produce the same output. What changes is the deployment model: you pay per month by conversion volume, from $19 for 2,000 to $449 for unlimited, with concurrency capped between 2 and 16 requests, and your HTML is processed on SelectPdf's servers instead of yours.

What is the cheapest SelectPdf alternative that runs on Linux?

For in-process rendering, HiQPdf Next, whose $245 Startup license covers one developer and one application on any number of machines. For a team, HiQPdf Team at $795 usually beats EvoPdf, whose Deployment license stops at one server. For hosted rendering, SelectPdf's own Online API and Sitepdf both cost about $590 a year at 15,000 documents a month, with different limits and features.

Written by the team behind Sitepdf, an HTML to PDF API that archives every page it renders. The in-browser converter is free to try, and API plans start at $29 a month.

Get started

Render and archive with one API call

A pixel perfect PDF and a dated copy of the page from the same request. Plans from $29 a month.

HTML to PDF, in your browser

Buy the plan