ASP.NET logo
Developer Stacks

ASP.NET Hosting on Your Own VPS

ASP.NET Core on Linux behind NGINX — no Windows licence needed.

Size a server for ASP.NET

Every stop is a real configuration you can deploy. Priced per month and billed monthly, exclusive of 18% GST.

2 vCPU
2 vCPU $1.97 a month 64 vCPU
4 GB
4 GB $1.97 a month 128 GB
40 GB
20 GB $1.51 a month 2000 GB

What ASP.NET is

ASP.NET Core runs on Linux, and has since 2016. That is worth stating plainly because a lot of hosting advice still assumes .NET means Windows Server, and it changes the economics: no Windows licence fee, and the same Linux tooling as everything else on this page.

The deployment shape is its own. Kestrel is the built-in web server, and Microsoft's own guidance is not to expose it directly — it sits behind NGINX, which handles TLS, static files and request buffering. The application runs as a systemd service so it starts at boot and restarts on failure.

The .NET runtime is memory-hungry at idle compared with PHP but efficient under load, and it is genuinely fast — for CPU-bound work it will generally outperform interpreted alternatives on the same hardware. Framework-dependent deployment keeps the published output small; self-contained deployment bundles the runtime, which is larger on disk but removes the dependency on what is installed.

“ASP.NET Core is a cross-platform, high-performance, open-source framework for building modern web apps using .NET.”

— ASP.NET Core, on Microsoft Learn

Why run ASP.NET on a VPS

Linux hosting for .NET, so no Windows Server licence is in the price.

Root access for the runtime version and systemd service configuration.

Kestrel behind NGINX, which is what Microsoft recommends rather than a workaround.

SQL Server on Linux, PostgreSQL or MySQL — whichever the application targets.

ASP.NET features

.NET runtime with your chosen version

Kestrel behind NGINX with TLS

systemd service with automatic restart

Framework-dependent or self-contained deployment

PostgreSQL, MySQL or SQL Server on Linux

dotnet CLI over SSH

ASP.NET hosting requirements

The recommended starting point for ASP.NET, not a hard floor — size it on the sliders.

Memory4 GB for a typical application; 8 GB with a local database
CPU2 vCPU; 4 for heavier throughput
Storage40 GB; self-contained deployments are larger than framework-dependent ones
Operating systemUbuntu 22.04 LTS, which Microsoft supports directly
Installs onUbuntu 24.04 LTS, Ubuntu 22.04 LTS, Debian 13 (Trixie), Debian 12 Bookworm
Ready inAbout 5 minutes
Smallest server2 vCPU · 4 GB memory · 20 GB disk

How deployment works

.NET 10 is installed with an ASP.NET Core web app, published and run as a systemd service, with NGINX in front for TLS and static files; replace it with your own application when you are ready. Kestrel is bound to localhost only — Microsoft advises against exposing it directly, and that guidance is followed here rather than treated as optional.

It is your server. ASP.NET is installed directly on your VPS or VDS, not inside a container we manage. You get root over SSH, you can install anything alongside it, change its configuration, or remove it entirely. We do not hold a key to it.

What people run it for

ASP.NET Core web applications

MVC or Razor Pages applications on Linux hosting.

Web APIs

Minimal APIs or controllers, where .NET throughput is a genuine advantage.

Blazor Server

Persistent SignalR connections, which need a long-running process.

Moving off Windows hosting

The same application without the licence cost.

ASP.NET hosting questions

Yes. ASP.NET Core has been cross-platform since 2016 and runs on Linux natively. Only legacy .NET Framework applications require Windows.

Deploy ASP.NET on your own server

Root access, your choice of size, and no container between you and the application.