Best VPS for Stirling PDF in 2026: Self-Hosting Guide
The best VPS for Stirling PDF depends on what you do with documents. Merging or splitting a few PDFs is light work; OCR, Office conversion, image rendering, and concurrent jobs can use much more CPU and memory. Stirling PDF provides a self-hosted web interface for PDF processing, so files can stay on infrastructure you control instead of being uploaded to an unrelated online converter.
That control still comes with operational work. A private PDF processing server needs adequate RAM, persistent Docker volumes, authentication, HTTPS, backups, and timely updates. This guide compares practical Stirling PDF VPS hosting configurations, current provider prices, and the cost of basic through team deployments. It also shows how to install the standard image on Ubuntu with Docker Compose, add a reverse proxy, preserve OCR languages, and test the deployment without pretending every workload has the same server requirements.
Published November 12, 2026. Reviewed against Stirling PDF v3.3.0 and current official documentation. Provider prices exclude tax and optional services unless stated. No purchased-server benchmark or firsthand performance claim is implied. The LightNode links are affiliate links; we may earn a commission.
What Is Stirling PDF?
Stirling PDF is a PDF platform available as a browser-based self-hosted server and desktop application. Its tools cover merging and splitting, compression, page rotation and organization, signatures, watermarks, redaction, PDF-to-image conversion, file-to-PDF conversion, OCR for scanned documents, and automation through pipelines and APIs. The exact tool set depends on the image and plan.
It suits individuals, developers, freelancers, small businesses, document-heavy teams, and privacy-conscious users who are willing to administer a server. Self-hosting can reduce unnecessary third-party document transfers, but it does not automatically make a system secure. Access control, encryption in transit, host maintenance, retention settings, and backups still determine the real privacy outcome.
The main repository is largely MIT-licensed, with explicitly identified directories governed by their own licenses. The current self-hosted Free plan supports up to five users and all PDF tools, while external databases, clustering, S3/database file storage, metrics, SAML, and audit features have Team or Enterprise boundaries. Check the official plans and licences page instead of assuming every enterprise feature is free.
Stirling PDF VPS Requirements
Stirling publishes separate image guidance. The standard latest image includes LibreOffice, Tesseract, OCRmyPDF, WeasyPrint, Calibre, Ghostscript, QPDF, and ImageMagick and suggests 4GB RAM. latest-fat adds the bundled AI engine and suggests 6GB or more, especially when AI is enabled. latest-ultra-lite suggests 2GB, but omits login, OCR, Office, HTML, and ebook conversions.
The following table is an editorial VPS planning baseline, not a new official minimum. It includes room for Ubuntu and Docker and should be adjusted with measurements.
| Use case | Image | CPU | RAM | Storage | Planning note |
|---|---|---|---|---|---|
| Basic merge, split, and page work | Ultra-lite | 2 vCPU | 2GB | 20–40GB SSD | Core tools only; no login or OCR |
| Standard PDF processing and light OCR | Standard | 2–4 vCPU | 4GB | 40–80GB SSD | Good starting point for a few users |
| Heavy OCR, conversions, or concurrent work | Standard or Fat | 4–8 vCPU | 8–16GB | 80–160GB SSD | Measure peaks and queue concurrency |
Official performance guidance is more conservative for user capacity: 1–10 users maps to 2–4 cores, 4GB RAM, and 10GB application disk; 10–50 users maps to 4–8 cores, 8–16GB, and 50GB SSD. Disk figures do not include every user's retained documents, backups, operating-system files, or temporary working space.
CPU and RAM
Merge and split operations have relatively low CPU demand, although memory rises with total file size. OCR is very CPU-intensive and memory-heavy. LibreOffice conversions are also expensive and can occupy one core per conversion. PDF-to-image processing is especially memory-intensive. For that reason, file size alone is a poor capacity metric: page count, resolution, embedded images, operation type, and simultaneous jobs matter.
The container should have an explicit memory limit. Stirling sizes its Java heap from that limit—up to 70% by default—leaving the remainder for Tesseract, LibreOffice, and other native tools. If the host runs out of memory, the container can stop and all active jobs fail. Do not allocate the entire VPS to the container; Ubuntu, Docker, the reverse proxy, and monitoring need headroom.
Disk, uploads, and backups
Temporary conversions can need several times the uploaded file's size. Reserve space for container images, /logs, the built-in database and keys in /configs, saved documents in /storage, pipelines, custom signature files, OCR language packs, and a local staging area for backups. Keep recovery copies on another system; a second directory on the same VPS is not protection from disk or account failure.
Can Stirling PDF run on a 2GB RAM VPS?
Yes, but 2GB is best matched to latest-ultra-lite and low-volume core PDF work. Ultra-lite has no login, OCR, Office, HTML, or ebook conversion, so it is not a general recommendation for a public-facing full deployment. A private network or local tunnel is particularly important because that image lacks application login. A 2GB standard container leaves little room for Ubuntu and native conversion processes and falls below the standard image's 4GB suggestion.
Is 4GB RAM enough for Stirling PDF?
Four gigabytes is the official suggestion for the standard image and is a sensible starting point for light use by a few people. It is not a guarantee for large image-heavy PDFs, simultaneous OCR, or several Office conversions. Monitor peak memory, failed jobs, queue times, temporary disk, and container restarts. Move to 8GB or more when measurements show pressure rather than trying to solve memory exhaustion with a longer proxy timeout.
How Much Does Stirling PDF Hosting Cost?
Self-hosting cost includes the VPS, backup capacity, possible extra storage, bandwidth overages, a domain, and administrator time. Optional AI processing can also raise memory or external-service costs. These monthly ranges are planning budgets, not provider offers.
| Deployment | Suggested resources | Typical compute range | Other planning costs | Estimated total |
|---|---|---|---|---|
| Basic PDF server | 2 vCPU, 2–4GB, 40GB SSD | $10–$20 | $2–$5 backup/domain | $12–$25 |
| Standard PDF + OCR | 2–4 vCPU, 4–8GB, 80GB SSD | $20–$48 | $4–$12 backup/domain | $24–$60 |
| Business document processing | 4–8 vCPU, 8–16GB, 160GB+ SSD | $40–$100+ | $10–$40+ storage, backup, domain | $50–$140+ |
The standard tier spans verified examples such as Vultr's 2-vCPU/4GB plan at $20, DigitalOcean's 2-vCPU/4GiB plan at $24, and 8GB plans around $40–$48. A domain may add nothing if you already own one and use a subdomain. Backups can cost a percentage of compute or be billed by stored capacity. OCR concurrency, not just archive size, often drives the move to more CPU and RAM.
Best VPS Providers for Stirling PDF in 2026
All five services provide ordinary Linux VMs; none is presented as a managed Stirling PDF service. Check inventory, region-specific pricing, IPv4, taxes, backup coverage, and checkout totals before ordering.
| Provider | Recommended configuration | CPU | RAM | Storage | Verified monthly reference | Best for | Visit website |
|---|---|---|---|---|---|---|---|
| LightNode | Agency | 2 vCPU | 4GB | 50GB NVMe | $13.70 reference | Hourly billing and regional choice | Visit |
| DigitalOcean | Basic Regular | 2 vCPU | 4GiB | 80GiB SSD | $24 | Clear documentation | Visit |
| Vultr | vc2-2c-4gb | 2 vCPU | 4GB | 80GB SSD | $20 base | Broad location selection | Visit |
| Akamai Cloud / Linode | Linode 4GB | 2 vCPU | 4GB | 80GB | $24 base | Conventional Linux hosting | Visit |
| Hetzner | CPX22, if available | 2 vCPU | 4GB | 80GB NVMe | Check current quote | EU-focused budget comparison | Visit |
1. LightNode: Flexible Hourly Stirling PDF Hosting
LightNode recommendation
Suggested standard setup: 2 vCPU, 4GB RAM, 50GB NVMe, about $13.70/month reference. For regular OCR and Office conversion, consider 4 vCPU, 8GB, about $26.70/month reference.
LightNode supplies KVM Linux instances, SSD/NVMe storage, a dedicated public IP, root access, and locations across multiple regions. Hourly billing is useful when evaluating image choice and OCR demand before keeping a larger server.
Pros: Flexible hourly deployment, Docker-compatible Linux servers, and locations including less common markets. Cons: The current FAQ documents IPv4-only instances and one IPv4 per instance; cryptocurrency payment support was not verified. Best for: Users who want regional choice and an easy path from 4GB to 8GB. Confirm traffic charges, stopped-instance billing, storage, and the current console total.
2. DigitalOcean: Clear Plans and Developer Documentation

DigitalOcean recommendation
Suggested configuration: Basic Regular, 2 vCPU, 4GiB RAM, 80GiB SSD, 4,000GiB transfer, $24/month.
DigitalOcean Droplets support common Ubuntu images, Docker, cloud firewalls, volumes, and snapshots. Its documentation makes the SSH-to-Docker workflow approachable.
Pros: Transparent resource ladder and strong deployment documentation. Cons: The $4 entry plan is far below the standard image's memory guidance; backups and volumes cost extra. Best for: Developers who value predictable plan sizes and documentation. The 4-vCPU/8GiB tier is $48/month when OCR demand justifies it.
3. Vultr: Global Cloud Compute Options

Vultr recommendation
Suggested configuration: vc2-2c-4gb, 2 vCPU, 4GB RAM, 80GB SSD, 3TB listed transfer, $20/month base.
Vultr Cloud Compute offers Linux VMs in many locations and supports ordinary Docker deployment. Its public API lists the 4-vCPU/8GB/160GB step at $40/month in base regions.
Pros: Wide regional catalog and straightforward scaling between 4GB and 8GB plans. Cons: Regional price overrides and capacity can change the final choice; backups are additional. Best for: Users prioritizing a specific region. Verify whether the selected product uses SSD or NVMe rather than generalizing across every compute family.
4. Akamai Cloud / Linode: General-Purpose Linux Instances

Akamai Cloud recommendation
Suggested configuration: Linode 4GB, 2 vCPU, 4GB RAM, 80GB disk, 4TB transfer, $24/month base.
Akamai Cloud's Linode instances provide Linux images, SSH administration, cloud firewalls, block storage, and Docker-compatible infrastructure. The verified 8GB step is 4 vCPU, 160GB disk, and $48/month base.
Pros: Familiar Linux VM management and documented instance sizes. Cons: Some regions have different prices, and attached storage needs its own backup plan. Best for: Administrators who want a conventional VM and documented APIs. Confirm the current backup add-on and regional total.
5. Hetzner: Cost-Focused EU Cloud Comparison

Hetzner recommendation
Suggested configuration: CPX22, 2 vCPU, 4GB RAM, 80GB NVMe, when available. Price: obtain a current location- and tax-specific quote.
Hetzner's regular-performance shared-vCPU line includes CPX22 and CPX32 (4 vCPU, 8GB, 160GB NVMe). EU listings show larger included transfer than Singapore.
Pros: Attractive specifications worth comparing for European deployment. Cons: The checked public catalog marked these offers unavailable and did not expose a dependable price; primary IPv4, VAT, backups, and region affect the total. Best for: Budget-focused users able to verify live inventory and checkout pricing rather than relying on an old headline price.
How to Install Stirling PDF on an Ubuntu VPS
This walkthrough uses Ubuntu 24.04 LTS, Docker Compose v2, the official registry, and the current stable 3.3.0 tag. Review the Docker installation page and release notes before deploying a later version.
Step 1: Prepare the VPS
Choose at least 2 vCPU, 4GB RAM, and 40GB SSD for the standard image. Create a sudo-enabled non-root user, add an SSH key, patch Ubuntu, point a domain at the server, and allow SSH only from trusted sources where practical. Expose ports 80 and 443 for the proxy; do not expose port 8080 publicly.
Step 2: Install Docker Engine and Compose
Follow Docker's official Ubuntu instructions. After installation, verify both components:
sudo docker version
sudo docker compose versionStep 3: Create Persistent Directories
sudo mkdir -p /opt/stirling-pdf/stirling-data/{configs,logs,customFiles,pipeline,storage,tessdata}
sudo chown -R 1000:1000 /opt/stirling-pdf/stirling-data
cd /opt/stirling-pdfThe image runs as UID/GID 1000 by default. /configs holds settings, the built-in database, backups, and generated keys; /storage holds saved files. The other mounts preserve logs, custom files and signatures, processing folders, and additional Tesseract languages.
Step 4: Create compose.yaml
services:
stirling-pdf:
image: docker.stirlingpdf.com/stirlingtools/stirling-pdf:3.3.0
container_name: stirling-pdf
ports:
- "127.0.0.1:8080:8080"
volumes:
- ./stirling-data/configs:/configs
- ./stirling-data/logs:/logs
- ./stirling-data/customFiles:/customFiles
- ./stirling-data/pipeline:/pipeline
- ./stirling-data/storage:/storage
- ./stirling-data/tessdata:/usr/share/tessdata
environment:
SECURITY_ENABLELOGIN: "true"
SYSTEM_BACKENDURL: "https://pdf.example.com"
SYSTEM_FRONTENDURL: "https://pdf.example.com"
mem_limit: 4g
restart: unless-stoppedReplace the domain. Do not put a real password in a committed file. mem_limit lets the application size its Java heap while the host still needs memory outside the container.
Step 5: Start and Inspect Stirling PDF
sudo docker compose config
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs --tail=100 stirling-pdfdocker compose config checks structure but cannot prove the application works. Keep 127.0.0.1 binding so only the local reverse proxy can reach port 8080.
Step 6: Secure the Administrator Account
The standard image enables login by default. With an empty user database, it creates admin with password stirling and forces a password change of at least eight characters at first sign-in. Open the HTTPS site immediately, change that password, then create separate named users. The free plan currently allows five users.
For unattended provisioning, Stirling supports SECURITY_INITIALLOGIN_USERNAME and SECURITY_INITIALLOGIN_PASSWORD before the first start, but secrets belong in a root-readable environment file or secret manager—not in Git or this example. Those settings are ignored after a user exists. Never set SECURITY_ENABLELOGIN=false on an Internet-facing production server.
Step 7: Add HTTPS with Nginx
Install Nginx and a certificate using your normal ACME workflow, then use a server block like this inside the TLS virtual host:
client_max_body_size 2000m;
proxy_read_timeout 1800s;
proxy_send_timeout 1800s;
proxy_buffering off;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Port 443;
}The official upload default is 2000MB and long jobs may need a 30-minute read timeout. Lower limits if your use case allows it. Longer timeouts help legitimate long operations but do not fix an out-of-memory container. Validate Nginx before reloading and keep 8080 blocked at both host and provider firewalls.
Step 8: Enable OCR Languages
The standard and Fat images include OCRmyPDF and Tesseract; Ultra-lite has no OCR. English, German, French, Portuguese, and Simplified Chinese language data are included in the standard images. Additional .traineddata files can be downloaded in Settings → Server → Advanced or from the official Tesseract repositories. Because container-local downloads disappear on recreation, preserve them in the mounted /usr/share/tessdata volume.
OCR uses substantial CPU and RAM. Install only required languages, test representative scans, and reduce concurrency before assuming a larger upload limit will improve processing.
Step 9: Test PDF Processing
Sign in through HTTPS and perform a controlled acceptance test: upload a non-sensitive sample, merge two PDFs, split pages, convert a document, run OCR on a scanned page, and download each result. OCR applies only to an OCR-capable image. Check logs, memory, temporary disk, and output readability. These are verification steps for your deployment; this guide does not claim they have already passed on your server.
Step 10: Back Up and Restore
Back up the six mounted host directories, especially /configs, /storage, /pipeline, /customFiles, and tessdata. Include application settings, the built-in database, generated keys, stored documents, signature assets, automation folders, and OCR languages. Stop writes or use an application-consistent method, encrypt offsite copies, define retention, and test restoration to a separate directory and container. A backup that has never been restored is an unverified recovery plan.
Step 11: Update Safely
Read the release and breaking-change notes, create and verify a backup, change the pinned image tag, then run:
sudo docker compose pull
sudo docker compose up -d
sudo docker compose ps
sudo docker compose logs --tail=100 stirling-pdfVerify login, volumes, OCR, conversion, and downloads. Keep the previous tag available for a planned rollback. Do not use docker compose down -v for a routine update because -v can delete named persistent volumes.
Stirling PDF vs PDF24 vs Adobe Acrobat
| Area | Stirling PDF Server | PDF24 | Adobe Acrobat |
|---|---|---|---|
| Deployment model | Self-hosted web server or desktop | Windows desktop tools and online services | Desktop, web, and cloud services |
| Self-hosting | Yes | Not an equivalent general self-hosted server offering | No equivalent customer-hosted Acrobat web service |
| Merge/split | Yes | Yes, depending on product | Yes, depending on plan/app |
| OCR | Standard/Fat images | Available in supported PDF24 workflows | Available in eligible Acrobat products |
| Conversion | Broad, image-dependent | Broad desktop/online tool set | Broad commercial tool set |
| Data control | Your deployment and policies | Desktop can process locally; online tools involve a service | Depends on desktop/cloud workflow and policy |
| Resource needs | You provide server resources | Windows workstation or online service | Supported workstation/browser and service plan |
| Maintenance | You patch, secure, and back up | Maintain desktop software | Vendor app/service plus local administration |
| Pricing model | Free self-hosted plan; paid Team/Enterprise features | Free tools; verify current terms | Commercial subscriptions and product tiers |
| Best for | Controlled multi-device self-hosting | Windows users wanting convenient utilities | Organizations needing Acrobat workflows and support |
These products overlap but are not identical. Choose based on required editing depth, workflow, operating system, support, and document-handling policy—not a checklist count alone.
Stirling PDF vs Paperless-ngx
Stirling PDF focuses on changing documents: merge, split, compress, convert, OCR, sign, redact, and automate transformations. Paperless-ngx focuses on consuming, archiving, tagging, indexing, searching, and retrieving a long-lived document collection.
Use Stirling PDF when the output of a processing task is the goal. Use Paperless-ngx when durable organization and search are the goal. A team can run both, but joining them creates two security, storage, update, and backup responsibilities. Our guides to Memos, Immich, and Beszel cover adjacent self-hosted notes, photo management, and monitoring workloads.
Is Self-Hosting Stirling PDF Worth It?
It is worthwhile when documents should remain on infrastructure you control, several people need a shared browser tool, or repeatable PDF automation justifies server maintenance. Costs can be predictable, especially for steady workloads, and a private API may fit internal systems.
It is less attractive for occasional edits that a maintained desktop application already handles. You assume responsibility for Linux, Docker, TLS, authentication, backups, vulnerability response, and capacity planning. Self-hosting is not inherently safer than a reputable cloud service: a default password, open port 8080, unpatched host, or exposed backup can defeat the privacy benefit.
Common Stirling PDF Hosting Problems
Container does not start
Likely cause: Invalid Compose syntax, an unsupported tag, insufficient memory, or volume permissions. Check: docker compose config, docker compose ps, and container logs. Fix: Correct the reported field, confirm the official tag, free resources, and set ownership to the container UID/GID without making directories world-writable.
Port 8080 is already in use
Likely cause: Another service binds the port. Check: sudo ss -ltnp | grep ':8080'. Fix: Stop the conflicting service or change only the host side, such as 127.0.0.1:8081:8080, and update proxy_pass.
OCR is not working
Likely cause: Ultra-lite image, missing language data, unreadable volume, or poor scan quality. Check: Image tag, installed OCR languages, logs, and tessdata ownership. Fix: Use Standard/Fat, mount /usr/share/tessdata, install the correct language, and retry a representative scan.
Out of memory during conversion
Likely cause: Large or image-heavy PDF, multiple jobs, or too little headroom outside Java. Check: Container exit status, docker stats, kernel OOM logs, and concurrency. Fix: Reduce simultaneous jobs, use a larger VPS, and tune the documented Java percentage only after measurement.
Permission denied on Docker volumes
Likely cause: Host directories do not match UID/GID 1000 or configured PUID/PGID. Check: ls -ln on mounted paths and container logs. Fix: Correct ownership for the intended service identity; avoid blanket chmod 777.
Reverse proxy returns 502 Bad Gateway
Likely cause: Container is stopped, proxy points to the wrong host port, or a firewall/network namespace blocks access. Check: curl http://127.0.0.1:8080, Compose status, and Nginx error logs. Fix: Restore container health and align proxy_pass with the loopback mapping.
Large uploads fail
Likely cause: Proxy body limit, application upload limit, timeout, or inadequate temporary disk. Check: Browser response, proxy logs, application logs, and free disk. Fix: Align limits with a justified maximum and extend timeouts for valid jobs; do not treat this as a memory fix.
Settings disappear after restart
Likely cause: /configs or /storage was not mounted, or Compose ran from a different directory with relative paths. Check: docker inspect mounts and the host directories. Fix: restore from backup, use stable absolute or project-relative paths, and mount every official persistent directory before processing real documents.
Frequently Asked Questions
What is the best VPS for Stirling PDF?
For the standard image, start with 2–4 vCPU, 4GB RAM, and 40–80GB SSD. LightNode offers flexible regional and hourly options; Vultr has a verified $20 4GB base plan; DigitalOcean and Akamai Cloud provide clear documentation and $24 4GB plans. Select by region, backup coverage, and measured OCR demand rather than provider name alone.
How much RAM does Stirling PDF need?
Official image guidance suggests 2GB for Ultra-lite, 4GB for Standard, and 6GB or more for Fat. Ultra-lite removes login, OCR, and several conversions, so the numbers do not describe equivalent feature sets. Heavy OCR, large images, Office conversions, AI, and simultaneous users may require 8–16GB.
Can Stirling PDF run on a 2GB VPS?
Yes, primarily with the Ultra-lite image and light core PDF operations. That image has no application login, OCR, Office, HTML, or ebook conversion. A 2GB standard deployment is below official guidance and leaves too little operating-system and native-process headroom for a dependable general-purpose server.
Is 4GB RAM enough for Stirling PDF?
Four gigabytes matches the standard image suggestion and can support light use by a few users. It may not handle large image-heavy files or concurrent OCR and LibreOffice jobs reliably. Set a container memory limit, preserve host headroom, observe real peak usage, and upgrade when jobs fail or queue excessively.
Does Stirling PDF support OCR?
Yes. Standard and Fat images include OCRmyPDF and Tesseract, with several language packs included. Extra languages can be downloaded and preserved through the /usr/share/tessdata volume. Ultra-lite does not include OCR. OCR is one of the most CPU- and memory-intensive Stirling PDF workloads.
Is Stirling PDF free and open source?
The main repository is largely MIT-licensed, with specified directories carrying their own licenses. A self-hosted server starts on the Free plan, currently limited to five users, while some database, clustering, storage, monitoring, SAML, audit, and enterprise capabilities require paid tiers. Review both repository licenses and the current plan matrix.
How much does Stirling PDF hosting cost?
A basic server can reasonably budget about $12–$25 per month, while a standard OCR deployment often falls around $24–$60 including a modest backup allowance. Document-heavy teams may spend $50–$140 or more. Taxes, extra storage, bandwidth, domains, paid features, AI, and administrator time change the total.
Can I install Stirling PDF with Docker Compose?
Yes. Docker is the recommended server method, and the official documentation supplies Compose examples. Use the official registry, pin a stable version for production, bind port 8080 to loopback behind HTTPS, mount /configs and /storage at minimum, preserve other needed directories, keep login enabled, and test backups before storing sensitive documents.
Final Verdict
- Basic PDF editing: A 2-vCPU/2GB private Ultra-lite server can work if you accept its missing login, OCR, and conversion features.
- Standard OCR workloads: Start with Standard on 2–4 vCPU and 4GB, then measure. LightNode's 4GB tier and Vultr's verified 4GB plan are practical references.
- Document-heavy users: Prefer 4–8 vCPU, 8–16GB, generous SSD space, and independent backups; DigitalOcean, Vultr, and Akamai all expose clear 8GB steps.
- Budget hosting: Compare an actually available Hetzner quote with Vultr and LightNode totals, including IPv4, tax, backups, and region.
- Team deployments: Size from concurrency and use the official plan matrix when external databases, clustering, S3, SAML, metrics, or audit logs matter.
For a flexible starting point, LightNode offers hourly billing and 4GB/8GB configurations. Whichever provider you select, the decisive production work is the same: pin the image, keep login enabled, terminate HTTPS, preserve every required volume, limit public exposure, and prove that recovery works.
