Best app deployment platforms in 2026: 87 compared

The app-hosting market no longer has one clean ladder from shared hosting to a virtual server. It has at least seven different products hiding behind the same promise: connect a repository and ship.

A Vercel deployment can be static files plus framework-aware functions. A Railway project can be several continuously metered containers and a database. A Cloud Run service can scale an ordinary container to zero. A Fly.io app is a set of micro-VMs that may carry local volumes. A Supabase project is a backend platform, not the web origin. Coolify is software you install on a server you still have to operate.

Those differences are not implementation trivia. They determine idle cost, cold starts, maximum request duration, filesystem behavior, network egress, database reliability, spend risk, and how difficult it will be to leave.

This guide compares 87 current deployment products and tools commonly considered by hobbyists, indie hackers, solopreneurs, agencies, and small product teams. It covers frontend clouds, static hosts, edge functions, container PaaS, scale-to-zero containers, event functions, workflow runtimes, managed open-source hosting, bring-your-own-cloud platforms, and self-hosted PaaS.

Central finding: there is no universal winner. Vercel Pro is the lowest-friction commercial Next.js choice. Cloudflare Workers and Static Assets are the strongest low-cost edge/static default. Railway is the most approachable usage-metered full-stack PaaS. Render is useful for evaluation but its free services are deliberately constrained. Google Cloud Run is the best mainstream portable scale-to-zero container reference. Fly.io is compelling for globally distributed machines when the team can handle its state model. Coolify and Dokploy are the best cash-cost alternatives when running a VPS is acceptable. The cheapest platform is the one whose billing model matches the workload, not the one with the smallest number on its pricing page.

This article complements the 48-provider VPS comparison. A self-hosted PaaS can reduce platform fees, but it does not remove the CPU, memory, disk, traffic, backups, security, or administrative work described in that guide.

Prices and product status were checked against first-party provider material on July 23, 2026. Prices are before tax and can vary by region, currency, architecture, and account age.

Table of contents

The answer in 60 seconds

The following are editorial fit judgments, not provider claims and not a universal performance benchmark.

RequirementEditorial shortlistWhy it fitsMain reason not to choose it
Commercial Next.js with minimum frictionVercel ProBest framework integration, previews, and operational ergonomicsSeat and multi-meter usage pricing; Hobby is non-commercial
Cheapest serious static or edge projectCloudflare Workers + Static Assets$5 paid account, free static delivery, no separate Workers egressRuntime and product-specific limits; Containers have different egress rules
Full-stack side project with databaseRailway HobbySimple service graph, templates, databases, logs, and usage billingAlways-on CPU/RAM and each database/service accumulate usage
Free PaaS evaluationRender FreeFamiliar Git deploy, web service, static sites, and temporary Postgres15-minute sleep and 30-day free database expiry
Predictable tiny always-on APIDigitalOcean App Platform, Back4app, or Lightsail ContainersFixed entry plans are easier to budget than many tiny usage metersLess scale-to-zero benefit and product-specific transfer overage
Portable scale-to-zero containerGoogle Cloud RunStandard container contract, strong autoscaling, jobs, and broad ecosystemEgress, logging, builds, registry, minimum instances, and VPC extras
Global low-latency micro-VMsFly.ioPlace machines close to users and run ordinary containersLocal volumes, multi-region state, and operational complexity
European serverless containerScaleway Serverless Containers or KoyebEuropean options with scale-to-zero behaviorCheck current regional prices, volumes, and outbound terms
AI or bursty Python computeModalServerless CPU/GPU jobs, endpoints, images, and volume primitivesNot a conventional full-stack host; warm capacity and GPU choices matter
Tiny webhooks and automationsVal Town or PipedreamFast hosted execution with integrations and minimal infrastructureConstrained runtimes and credit/run limits
Durable background workflowsTrigger.dev or InngestRetries, queues, schedules, observability, and long-running workThese complement rather than replace the main app host
Laravel or PHP productLaravel Cloud, Forge, or VaporFirst-party managed platform, owned-server control plane, and AWS serverless pathThey have fundamentally different infrastructure, idle, and billing models
One VPS, many indie appsCoolify or DokployLow control-plane cost and broad Docker/database supportYou become responsible for the server and shared blast radius
Minimal self-hosted deploysKamal or DokkuTransparent deployment with little platform abstractionNo managed database, backup, HA, or incident response by default
Own-cloud platform for a teamPorter, Qovery, Flightcontrol, or Cloud 66PaaS workflow while resources stay in your accountPlatform fee plus cloud minimums, networking, and operations

A practical first cut is:

  1. Choose Vercel when the full Next.js workflow is worth a per-developer subscription and metered usage.
  2. Choose Cloudflare when static delivery, edge logic, and low network cost matter more than a conventional Node server.
  3. Choose Railway when the application is naturally several ordinary services and a database and you want usage visibility in one product.
  4. Choose Render to evaluate a Heroku-like workflow without paying immediately, but move production workloads to paid resources.
  5. Choose DigitalOcean App Platform, Back4app, Koyeb, Fly.io, or Lightsail Containers when a small always-on service is the actual workload.
  6. Choose Google Cloud Run when scale-to-zero and a portable container contract are more important than the simplest invoice.
  7. Choose Coolify, Dokploy, Easypanel, CapRover, Dokku, or Kamal when a VPS-backed stack is acceptable and operational work is understood.

Scope and evidence

"All services" cannot literally mean every regional host, one-person wrapper, cloud reseller, Kubernetes distribution, discontinued product, or private beta. This comparison uses a reproducible boundary:

  • Products must be publicly documented and globally or multi-region marketed.
  • They must provide application deployment, static/edge execution, container/function execution, a BYOC control plane, or a commonly used self-hosted launch workflow.
  • They must be plausible for an individual or small team, even if higher tiers later target enterprises.
  • Raw VPS providers are linked to the separate VPS article rather than repeated here.
  • Databases, auth systems, queues, and workflow engines that cannot replace the main app host are listed as companions rather than misclassified as universal hosting.

Evidence labels

Verified facts in this article are public plan prices, quotas, commercial-use wording, lifecycle notices, and documented product behavior from first-party sources.

Accepted technical consensus covers principles such as immutable deployments, the risks of local persistent disks in multi-region systems, and the fact that cold starts, connection pools, and concurrency affect serverless performance.

Editorial inference appears in recommendations and fit judgments. It combines published product behavior with workload economics. It is not a provider benchmark.

Speculation is avoided. Where official material conflicts or a live calculator prevents a durable quote, the conflict is stated instead of resolved by guesswork.

The guide also avoids a fake universal speed ranking. Region, framework, image size, database distance, cache ratio, cold/warm state, concurrency, CPU allocation, and test date can reverse a benchmark result.

Serverless and serverful are not opposites

The useful distinction is not whether a provider uses servers. Every product does. The useful question is what resource the customer reserves and what event causes a charge.

1. Static and frontend clouds

Static files are built once and served from an edge cache. Dynamic behavior comes from functions, middleware, SSR, image optimization, or an external backend. Examples: Vercel, Netlify, Cloudflare Pages/Static Assets, GitHub Pages, Surge, Sevalla Static.

Best for: documentation, marketing sites, SPAs, cached commerce frontends, and framework apps whose backend is small.

Failure mode: assuming the static-site price also covers heavy SSR, image transformation, builds, logs, and data transfer.

2. Request-metered functions and edge runtimes

Code runs for an invocation and generally disappears afterward. Examples: Cloudflare Workers, AWS Lambda, Azure Functions, Cloud Run functions, Val Town.

Best for: webhooks, authentication callbacks, lightweight APIs, scheduled tasks, event handlers, and middleware.

Failure mode: forcing long jobs, large native dependencies, stable TCP connections, or stateful processes into a short-lived runtime.

3. Scale-to-zero containers

The platform accepts an ordinary container, starts instances when needed, and may reduce instances to zero. Examples: Google Cloud Run, Azure Container Apps, IBM Code Engine, Scaleway Serverless Containers, portions of Koyeb and Leapcell.

Best for: portable HTTP services, bursty APIs, background jobs, and teams that want a container exit path.

Failure mode: adding a minimum replica, VPC connector, load balancer, NAT, log sink, registry, and database, then calling the result "zero-cost at idle."

4. Always-on container PaaS

The platform continuously allocates CPU and memory or charges for a fixed service size. Examples: Railway, Render paid services, DigitalOcean App Platform, Heroku, Back4app, Lightsail Containers.

Best for: ordinary web servers, workers, WebSockets, predictable latency, and applications that remain busy.

Failure mode: paying 730 hours for several nearly idle services when one small server or scale-to-zero container would suffice.

5. Distributed machines

The platform exposes VM-like machines with fast start/stop and regional placement. Fly.io is the clearest small-team example.

Best for: ordinary containers close to users, custom networking, and architectures that need more control than functions.

Failure mode: treating local disks as a globally replicated database or assuming autostop eliminates volume and address charges.

6. Bring-your-own-cloud control planes

The deployment company manages configuration, CI/CD, or Kubernetes while the workload stays in the customer's AWS, Azure, GCP, Scaleway, or VPS account. Examples: Porter, Qovery, Flightcontrol, Cloud 66, Encore, SST.

Best for: ownership, compliance, cloud credits, and reducing black-box lock-in.

Failure mode: adding a platform subscription to a cloud architecture with load balancers, NAT gateways, managed clusters, logs, and egress that already exceeds the cost of a bundled PaaS.

7. Self-hosted PaaS and deployment tools

You install a control plane or deploy directly onto servers. Examples: Coolify, Dokploy, Easypanel, CapRover, Dokku, Kamal, Kubero, OpenFaaS, Piku.

Best for: many small apps, predictable cash cost, custom networking, and full control.

Failure mode: counting only the VPS invoice while assigning no value to patching, backups, monitoring, restore tests, security, and incidents.

The real monthly cost formula

A useful all-in formula is:

monthly cost = platform and seat fees + active compute + idle/reserved compute + builds + database + storage and I/O + public egress + cross-zone/inter-region traffic + logs/metrics + outbound IP/NAT/load balancer + backups + support + tax

The formula explains why two "free" products can have opposite economics.

A static site on Cloudflare can genuinely remain near zero because static delivery has no server process and Workers traffic does not carry a separate egress fee. A nominally free full-stack project can still need a paid database, object storage, transactional email, log retention, and a commercial plan.

At the other end, a $5 Coolify control plane can run dozens of small apps, but the server, off-site backups, object storage, monitoring, and administrator time are not included in that $5.

When fixed pricing wins

Fixed small plans tend to win when the service is continuously active, needs predictable latency, or pushes a known amount of traffic. A $5 Back4app or DigitalOcean service may be cheaper and easier to reason about than a per-second platform for an always-on loop.

When usage pricing wins

Usage pricing tends to win when the workload is idle most of the time, bursty, or short-lived. Cloud Run, Workers, Lambda, Modal, and event/workflow services can run a low-volume project for very little - provided databases, logs, and minimum capacity do not become the floor.

When one server wins

One VPS can win when many small services fit safely together and the owner can operate Linux. It loses when one noisy workload, disk failure, compromised service, or bad deployment affects everything on the machine.

The 22 traps that change the answer

1. "Free" may prohibit commercial use

Vercel Hobby is explicitly personal and non-commercial. GitHub Pages says it is not intended as free hosting for an online business, ecommerce site, or SaaS. alwaysdata Free is for personal use. A price of $0 is irrelevant when the planned use is outside the offer.

2. A credit is not a dollar and not a resource

Netlify credits cover bandwidth, compute, requests, and production deploys. Replit credits cover deployment usage. Railway includes dollar-denominated usage but the minimum subscription does not make usage unlimited. A workload estimate has to be translated into the provider's unit.

3. The free tier may pause the whole account

Some credit systems suspend or pause multiple projects when a shared account pool is exhausted. Account-wide limits are riskier than project-level hard caps.

4. Sleep is not scale-to-zero

A sleeping free service may wake in about a minute and may not be suitable for production. Scale-to-zero is an intentional paid compute behavior with defined startup and billing semantics. Render Free sleep and Cloud Run scale-to-zero solve different problems.

5. A database rarely scales exactly like the app

The web process can reach zero while Postgres, Redis, object storage, backups, or a connection pool remains billable. A serverless frontend with an always-on database has an idle floor.

6. Local disks are not managed distributed storage

Fly volumes, preview/local volumes, and self-hosted Docker volumes can be excellent, but they are attached to a location or node. Replication, failover, backups, and restore procedures are separate design decisions.

7. "No egress" can be product-specific

Cloudflare Workers has no separate egress charge. Cloudflare Containers has regional egress pricing after included allowances. A company-wide slogan cannot safely be applied to every product.

8. Bandwidth can be a credit meter

Netlify charges credits per GB. A site can have a nominal plan allowance but consume it with builds, requests, or compute before all implied bandwidth is available.

9. Inbound traffic can count

Lightsail transfer allowances count inbound and outbound toward the allowance even though only outbound overage is charged. Leapcell can meter large ingress payloads. Read the direction rules.

10. Build minutes are production cost

A monorepo that triggers many preview builds can consume more than the runtime. Netlify production deploys consume credits; Amplify bills build minutes; Firebase App Hosting invokes Cloud Build and artifact storage; CI minutes can matter on GitLab Pages.

11. Preview deployments duplicate services

A frontend preview may be almost free, but a full preview environment with database, worker, cache, and search can multiply resources. BYOC platforms and composable PaaS products differ in whether previews share or duplicate infrastructure.

12. Seats and compute can stack

Vercel, Encore, Flightcontrol, and team plans can charge users or seats in addition to runtime. A five-person team with a tiny app can spend more on access than compute.

13. Logs are not free observability

Request logs, build logs, traces, metrics, retention, ingestion, and export are separate resources on many platforms. Serverless architectures can generate many small log events and high-cardinality traces.

14. A spend alert is not a hard limit

Some providers notify after cost has accrued. Others support hard budgets but can pause production. Test the exact behavior before launch.

15. Minimum instances defeat zero-idle economics

One minimum Cloud Run instance, one kept-alive Upstash Box, one paid web dyno, or one always-on Railway service establishes a monthly floor.

16. Concurrency changes price and latency

Higher concurrency can reduce instance count but increase tail latency, memory pressure, and connection contention. Low concurrency can improve isolation but trigger more instances and cold starts.

17. Serverless databases have their own wake and connection model

A scale-to-zero Postgres service can add wake latency. A high-concurrency function fleet can exhaust connection limits unless pooling is used.

18. A load balancer can cost more than compute

AWS ECS/Elastic Beanstalk/Flightcontrol examples often need an ALB. A tiny Fargate task can be inexpensive while the load balancer and NAT gateway set the real floor.

19. Static IPs and private networking cost money

Dedicated egress IPs, NAT gateways, private endpoints, VPC connectors, and cross-zone traffic are common hidden line items.

20. A platform shutdown is a pricing event

Migration labor is part of lifetime cost. App Runner stopped accepting new customers, Deno Deploy Classic shut, Shuttle ceased, Glitch ended hosting, and Flightcontrol is presenting a successor. Portability has economic value.

21. "Open source" does not equal free operations

Coolify, Dokploy, CapRover, Dokku, Kamal, Kubero, and OpenFaaS remove or reduce license fees. They do not operate the server, secure the database, or restore data after a failure.

22. Framework portability is not runtime parity

A Next.js app can build on multiple platforms but image optimization, ISR, middleware, cache invalidation, streaming, edge runtime, and preview behavior may differ. Test the features actually used.

Full market map: 87 deployment options

Frontend, static, and edge platforms (16)

PlatformWorkload modelPublic entry signalIdle/scalingNetwork modelMain catch
VercelFrontend cloud plus functionsHobby $0; Pro $20/developer/mo with $20 usage creditStatic and functions scale automaticallyHobby 100 GB and Pro 1 TB transfer in the checked plan matrix; Pro overage $0.15/GBHobby is personal and non-commercial; seat and usage meters can stack
NetlifyFrontend cloud plus functionsFree $0/300 credits; Personal $9/1,000; Pro $20/3,000Functions are on-demand; static delivery is edge-cachedBandwidth consumes 20 credits/GB; requests, compute, and production deploys also consume creditsOne credit pool covers multiple meters; exhausted credits can pause account projects
Cloudflare WorkersEdge functions and stateful primitivesFree; Paid starts at $5/account/moRequest-driven; no always-on server processNo separate Workers egress or throughput charge; static asset requests are freeCPU, subrequest, runtime, storage, and product-specific limits still apply
Cloudflare Pages / Workers Static AssetsStatic delivery plus WorkersStatic asset delivery can be $0; dynamic code follows Workers pricingStatic by default; functions are request-drivenStatic asset requests and Workers egress are not separately chargedIt is not a persistent server; dynamic behavior inherits Workers limits
Deno DeployEdge/serverless JavaScript and TypeScriptFree $0; Pro $20/mo; Builder $200/moRequest-driven with app, CPU, and memory metersFree includes 20 GB; Pro includes 200 GB then $0.50/GBDeno Deploy Classic shut down July 20, 2026; use the current product
Firebase App HostingManaged full-stack web hosting on Google servicesRequires the Blaze pay-as-you-go planBackends use Cloud Run behavior; builds and artifacts are separate services10 GiB outgoing allowance, then cached and uncached delivery use different ratesThe invoice spans App Hosting, Cloud Run, Build, Artifact Registry, logging, secrets, and data services
Firebase HostingStatic hosting plus optional functionsSpark free tier; Blaze pay-as-you-goStatic delivery; dynamic code runs in separate functions or Cloud Run10 GB storage and 360 MB/day transfer allowance, then storage and transfer chargesDaily transfer allowance and separate backend billing can surprise
AWS Amplify HostingGit-based frontend and SSR hostingUsage-based; new AWS accounts may receive time-limited creditsStatic and server-side rendering are metered separatelyStorage, build minutes, transfer, SSR requests, and SSR duration are separate metersWAF and backend services can add separate line items
Azure Static Web AppsStatic frontend plus integrated APIsFree and Standard tiers; Standard price is region/currency dependentStatic delivery; integrated functions are request-drivenAllowance is subscription-wide; free sites can stop serving after quota exhaustionFree resource, deployment, domain, and API limits are materially lower
GitHub PagesRepository-backed static hosting$0 with eligible GitHub repositories and plansStatic only1 GB published site and a 100 GB/month soft bandwidth limitNot intended as free hosting for an online business, ecommerce site, or SaaS
GitLab PagesCI-built static hostingIncluded according to GitLab plan and runner/CI allowancesStatic onlyBuild minutes, artifacts, storage, and GitLab.com limits matterThe site can be free while CI runner and storage use are not
SurgeCLI-first static publishingFree; Professional $30/moStatic onlyCDN delivery is bundled; no public granular transfer matrix on the pricing pageNo general server-side runtime; advanced controls require Professional
Fastly ComputeProgrammable edge compute10M compute requests and 100M vCPU-ms free, then usage-basedRequest-driven at the edgeDelivery bandwidth is priced separately by destination region after free allowanceCompute, CDN delivery, storage, TLS, and observability are distinct products
Wasmer EdgeWebAssembly and container edge platformHobby free; Pro $10/mo; higher plans availableEdge instances and volumes are metered by planFree and Pro include published bandwidth allowances, then paid transfer on ProThe current pricing page contains conflicting headline and detailed compute allowances
Sevalla Static Site HostingGit-based static hostingFree for up to 100 static sites under published fair-use limitsStatic only1 GB/site, 100 GB bandwidth, and 600 build minutes in the checked free offerFair use applies and dynamic applications need Sevalla Application Hosting
StormkitFrontend deployment cloud or self-hosted control planeCloud starts around $20/mo; self-hosted Free, Premium $20/seat, Ultimate $100/seatStatic, server files, and API files use different backendsSelf-hosted transfer follows your infrastructure; cloud details require the live planCloud and self-hosted economics are different; current cloud free trial was discontinued

General PaaS and managed application/container platforms (32)

PlatformWorkload modelPublic entry signalIdle/scalingNetwork modelMain catch
RailwayMetered container PaaSFree trial then $1 allowance; Hobby $5 minimum; Pro $20 minimumServices can be always-on; user-configured behavior determines idle cost$0.05/GB public egress; CPU, RAM, volume, and object storage are separateA database is another metered service; credits do not roll over
RenderGit-to-PaaS for web, workers, cron, static, and databasesFree evaluation resources; paid web service from $7/mo; workspace Pro $25/moFree web services sleep after 15 minutes; paid services remain availableWorkspace bandwidth allowance, then $0.15/GB on current Hobby/Pro termsFree Postgres expires after 30 days; disks and database storage are separately priced
Fly.ioGlobally distributed micro-VM platformUsage-based; shared 512 MB machine is roughly $3.32/mo if always runningMachines can autostop/autostart; reservations and attached resources persistRegional egress from about $0.02/GB in North America and EuropeVolumes are local and bill while allocated; multi-region state requires engineering
HerokuClassic buildpack/container PaaSEco $5 pooled hours; Basic $7; Standard-1X $25Eco dynos sleep; paid production dynos are always-onTransfer is not presented as a simple bundled quota; add-ons have separate billsEphemeral filesystem, add-on costs, and sustaining-engineering status
DigitalOcean App PlatformManaged app and static-site PaaSStatic free allowance; service from $5/mo for 512 MiBPaid services are allocated continuously; jobs and functions differPlan transfer allowance pooled at team level; overage $0.02/GiBDedicated egress IP, managed databases, and some components add cost
KoyebGlobal serverless/container PaaSFree 0.1 vCPU/512 MB; Nano about $2.68; Micro about $5.36Free sleeps after one hour; scale-to-zero remains product/feature dependent100 GB outbound allowance; published overage rate exists but billing status must be checkedFree services cannot use workers or volumes; preview volumes are local and non-redundant
NorthflankPaaS for services, jobs, databases, and pipelinesSandbox free; PAYG from about $2.70/mo for 0.1 shared CPU/256 MBAlways-on and job patterns supported; billed per second$0.06/GB egress, $0.02/GB cross-zone, disk $0.15/GB/moIts breadth is useful but more complex than a single-service hobby host
Back4app ContainersFixed-price container hostingFree 0.25 CPU/256 MB; shared 0.5 CPU/512 MB $5/moFixed container allocation rather than a pure request meterFree and $5 plans include 100 GB transferDo not infer zero-idle billing from serverless marketing language
LeapcellScale-to-zero functions and persistent servicesUsage-based from about $0.60/M invocations and $0.18/GB-hourOffers serverless scale-to-zero and persistent deployment modesSmall included quotas; egress can be $0.30/GB and large ingress payloads can be meteredBuilds, logs, ingress, egress, and execution duration are separate meters
ZeaburDeveloper PaaS with service templatesFree; Developer $5; Pro $19; Team $79 plus resource/server useDepends on deployed service and regionRegion and provider-specific resources affect traffic economicsThe subscription is not the complete infrastructure bill
Replit DeploymentsBrowser IDE plus autoscale, reserved, scheduled, and static deploymentsStarter free; Core $25 monthly or $20 annual; Pro $100 monthly or $95 annualAutoscale and reserved modes have different economicsCore includes a published transfer allowance across deployments; usage consumes creditsPlan credits are not unlimited compute and editor subscriptions affect total cost
Sevalla Application HostingManaged application and database hostingApplications from $5/mo; databases from $5/moAllocated runtime plans; background workers and cron supportedProvider advertises no separate app ingress/egress charge, subject to fair useFair-use language and separate database/object-storage resources still matter
UpsunGit-driven composable PaaSResource-based; shared app CPU around EUR0.033/hour and app RAM around EUR0.013/GB-hourAllocated environments and preview branches are billed by resourcesTraffic and service pricing depend on plan and regionResource composition is flexible but harder to compare with a single fixed container
Platform.shEnterprise application PaaSContract and resource-based pricingPersistent application environments with preview workflowsTransfer and environment allowances are contract-specificUsually outside hobby pricing; Upsun is the more accessible adjacent offer
Clever CloudEuropean multi-runtime PaaSUsage-based through a live calculatorScalable application instances and managed add-onsUse the calculator for current region and add-on termsDynamic pricing prevents a durable one-number comparison
ScalingoEuropean Heroku-style PaaS30-day trial then container and add-on pricingAllocated containers; autoscaling available by planApplication egress is advertised at no additional charge; container bandwidth has limitsNo egress fee does not mean unlimited per-container throughput
SliplaneManaged Docker deployment on dedicated serversServer from EUR9/mo, hourly billed; unlimited apps/containers per serverThe server is always allocated even when an app is quietUnderlying server provider transfer and fair-use rules applyBlast radius, capacity planning, and noisy apps are shared across your server
ElestioManaged open-source software and custom containersDedicated VM from about $11/mo; BYOVM management from $5 plus infrastructureAlways-on VM or BYOVM resourcesBandwidth depends on infrastructure/region; overage can vary by regionIt is not a scale-to-zero bargain for one tiny endpoint
PikaPodsManaged catalog of open-source applicationsSmall pods can start around $1.80/moPods are allocated; stopped pods still retain billable storage/minimumsTraffic policy is service-specific rather than a public cloud-style egress matrixNot a general arbitrary-code PaaS
PythonAnywhereManaged Python hostingBeginner free; Developer $10/mo; larger plans availableWeb workers and always-on tasks are plan-limitedOutbound access is restricted on free; no simple transfer bundle comparisonPython-only constraints and worker/task limits
alwaysdataEuropean managed multi-runtime hostingFree personal plan; Plus from EUR5/mo annual or EUR6 monthlyWebsites, databases, daemons, and scheduled tasks share the account resourcesAll-inclusive plan model rather than per-GB cloud billingFree is personal and limited to an alwaysdata.net address; shared-resource limits matter
Cloud 66BYOC deployment and operations layerFree plan; paid management starts per managed server; cloud bill separateYour servers stay allocated in your cloud accountTraffic follows the chosen cloud/VPS providerFree/paid control-plane pricing is only one part of total cost
Bunny Magic ContainersGlobally distributed container platform$0.02/vCPU-hour, $0.005/GB RAM-hour, storage $0.10/GB-moAt least one instance per selected region can remain active; dynamic scaling adds instances$0.01/GB in Europe/North America, higher in other regionsAnycast IP, persistent storage, traffic, and multi-region minimums add up
Google App EngineManaged application PaaS in Standard or Flexible environmentsUsage-based with product-specific free quotas in StandardStandard can scale toward zero; Flexible runs Compute Engine-based instancesGoogle Cloud network, storage, logs, and connected services are separateStandard and Flexible are economically and operationally different products
Azure App ServiceManaged web app and API hostingFree/shared evaluation tiers and paid instance plans; region-dependentPaid App Service plans allocate workers; serverless behavior requires other Azure productsOutbound transfer, private networking, databases, and monitoring can be separateAn App Service Plan can be shared by apps, making per-app comparisons misleading
AWS Elastic BeanstalkAWS application orchestration over EC2 and related servicesNo Beanstalk surcharge; pay for EC2, load balancer, disk, storage, and transferUnderlying instances and load balancers remain billableAWS data transfer and load-balancer processing applyNo platform fee does not mean a cheap deployment; the generated AWS architecture is the bill
AWS Lightsail ContainersFixed-price managed container nodesNano $7/mo 0.25 vCPU/512 MB; Micro $10; larger nodes to $160Nodes are continuously allocated500 GB transfer per service, then region-dependent overage starting around $0.09/GBTraffic above 500 GB becomes expensive and it is less flexible than ECS
Appwrite Sites and FunctionsBackend platform with web hosting and serverless functionsFree development tier and usage-based Cloud plansSites are built/deployed; functions are invocation-drivenBandwidth, builds, executions, databases, storage, and users share product quotasAn all-in-one quota is convenient but increases platform coupling
Laravel CloudManaged Laravel and Symfony application platformStarter $5/mo plus usage with $5 monthly credit; Growth $20/mo plus usageFlex compute and supported databases can scale to zero; Laravel explicitly describes the platform as server-based, not serverlessApp compute, databases, cache, storage, bandwidth, builds, and logs follow separate usage metersThe base plan is only part of the bill; wake behavior, resource class, and region still matter
GigalixirElixir/Phoenix-focused buildpack PaaSFree 0.5 GB prototype tier; Standard starts at $10/mo for one 0.2 GB replicaFree apps scale to zero after 30 days without a deploy; Standard replicas bill per second and do not sleepStandard production bandwidth is included under fair use; dedicated ingress is a separate optionFree database is limited to 10,000 rows and 2 connections with no backups; static outbound IP is not standard
shinyapps.ioManaged R Shiny application hostingFree 5 apps/25 active hours; Starter $13/mo for 25 apps/100 active hoursUsage is governed by active-hour allowances and plan resource behaviorNo simple public per-GB egress matrix; app count, active hours, authentication, and domains drive the planCustom domains require the $349/mo Professional tier; it is R/Shiny-specific rather than general PaaS
Posit Connect CloudManaged R and Python data-app and document publishingFree; Basic $19/mo; Enhanced $59/mo; Advanced from $249/mo for 5 seatsApplications consume monthly active-hour allowances; documents and app limits differ by planNo simple public per-GB egress matrix; active hours, apps, seats, sharing, domains, and compute drive plan choiceThe Free plan is public/GitHub-oriented; private sharing, custom domains, and team governance require higher plans

Serverless containers, functions, AI, and durable workflow runtimes (20)

PlatformWorkload modelPublic entry signalIdle/scalingNetwork modelMain catch
Google Cloud RunServerless containersRequest-based free grants; pay for vCPU, memory, requests, and related servicesCan scale to zero; minimum instances create idle costInternet egress, load balancing, build, registry, logs, and VPC access can be separateConcurrency and CPU-allocation settings can change both latency and price
Azure Container AppsServerless containers and jobsMonthly free grant, then active/idle vCPU and memory plus requestsCan scale to zero for supported workloads; minimum replicas incur idle chargesLogging, registry, egress, private endpoints, and environment services are separateIdle versus active billing and environment networking need careful configuration
Cloudflare ContainersContainers controlled through WorkersAvailable on Workers Paid, which starts at $5/account/mo; included compute allowanceContainers sleep and wake; active time is meteredSeparate regional container egress after included 500 GB or 1 TB allowancesWorkers has no egress fee, but Containers does; ephemeral disk and HTTP constraints matter
IBM Code EngineServerless apps, jobs, functions, and buildsFree grant then vCPU-second, GB-second, and request pricingApplications can scale to zero; jobs pay while executingIBM Cloud service and transfer charges can apply around the workloadRegion availability and adjacent IBM service pricing should be checked
Scaleway Serverless ContainersEuropean serverless containersUsage-based active CPU and memory; use the current regional calculatorScales to zero and does not charge inactive instancesRegional outbound transfer and connected storage/database services are separatePricing changed June 1, 2026; old comparison tables are stale
AWS ECS Express ModeSimplified ECS deployment using AWS resourcesNo Express surcharge; pay for Fargate/EC2, ALB, logs, storage, and transferDefault services are provisioned resources, not a tiny zero-idle functionALB processing, public transfer, NAT, and cross-AZ can dominateThe default architecture can cost much more than one hobby container
AWS LambdaEvent-driven functionsFree monthly request and compute grants, then request and GB-second pricingScales to zero; provisioned concurrency costs while reservedAPI Gateway, streaming, logs, NAT, storage, and egress are separateTimeouts, cold starts, packaging, and adjacent-service costs shape the real architecture
Azure FunctionsEvent-driven functionsConsumption free grant then executions and GB-seconds; other plans availableConsumption can scale to zero; Premium and dedicated plans reserve capacityStorage account, Application Insights, networking, and egress are separateThere are multiple hosting plans with materially different idle and scaling behavior
Google Cloud Run functionsFunctions on the Cloud Run execution stackUsage-based with free grants shared across relevant Google serverless useScales to zero; minimum instances and concurrency alter economicsBuild, artifact, eventing, logging, and egress services add costSecond-generation functions inherit Cloud Run concepts and connected-service billing
Zoho Catalyst AppSail and FunctionsServerless functions plus application runtime and BaaSMonthly free allowances with PAYG; subscriptions from $25/mo plus $5 benefitFunctions are execution-based; AppSail is billed per instance-minuteData store, file store, cache, mail, search, and other operations have individual metersFree allowances are account-wide and the multi-service price model is detailed
ModalServerless Python and GPU computeStarter $0 with $30 monthly compute credit; Team $250 with creditContainers start for work and can keep warm by configurationCompute, GPU, storage, volumes, and external services are separately relevantNot a conventional full-stack PaaS; GPU and warm-capacity settings drive cost
Val TownHosted TypeScript functions, crons, APIs, and small appsFree; Pro $25 monthly or $250/year; Business higherRequest/schedule-driven; runtime and run limits by planRun count, duration, email, logs, domains, and privacy limits matter more than bulk egressIt is intentionally constrained compared with a general container host
Hugging Face SpacesHosted ML demos and applicationsCPU Basic free; upgraded CPU from $0.03/hour; GPUs from published hourly ratesSpaces can sleep; dedicated hardware bills while allocated according to settingsModel, dataset, storage, and inference products have separate limitsNot a general business web host; private and production needs can change the bill
Streamlit Community CloudManaged public Streamlit app hostingFree Community CloudApps can sleep and restart; resource limits are platform-controlledNo general egress price matrix because it is a hosted community productPython/Streamlit-specific, public-oriented, and not a general production backend
Upstash BoxOn-demand Linux boxes for agents and jobsFree allowance; PAYG roughly $0.10-$0.40 per active CPU-hour; keep-alive from $8/moActive CPU is metered; keep-alive buys persistent availabilityStorage and downstream services have separate pricingA kept-alive box becomes a fixed monthly server-like expense
PipedreamServerless integrations and developer workflowsFree; paid workflow plans and Connect use credit-based pricingOnly workflow execution consumes compute credits; development tests are freeCredits scale with 30-second compute segments and memory; external API usage is separateNot a general always-on web host; credit math and connected-account limits matter
Trigger.devDurable background tasks and AI jobsFree tier; paid Cloud plan currently $50/mo with included creditsTasks run on configured machines; no need to hold your web request openCompute credits, concurrency, preview branches, dashboards, and seats can add costIt complements an app host rather than replacing the frontend/API host
InngestDurable functions, workflows, queues, and eventsHobby free; Pro starts at $99/moEvent-driven steps execute durably without an always-on worker fleetExecutions, concurrency, events, workers, span data, users, and retention are meteredIt is an orchestration layer, not a database or general-purpose web origin
Fermyon CloudServerless WebAssembly functions and microservices using SpinStarter $0; Growth $19.38/mo; Enterprise customRequest-driven WebAssembly execution with plan quotas rather than an always-on serverStarter includes 5 GB egress; Growth 50 GB; request, app, key-value, and SQLite quotas also applyThe Spin/Wasm runtime is intentionally narrower than an arbitrary Linux container
Laravel VaporServerless Laravel deployment into the customer AWS accountSandbox free; Unlimited $39/mo or $399/year, plus AWS chargesAWS Lambda scales by invocation; provisioned concurrency and related AWS resources can create a floorAPI Gateway/CloudFront, Lambda, RDS, S3, logs, NAT, and AWS egress remain separateLaravel-specific conventions plus a Vapor subscription and the full AWS bill

BYOC and self-hosted deployment platforms (19)

Platform/toolWorkload modelPlatform priceIdle/scalingNetwork modelMain catch
PorterManaged BYOC PaaS on AWS/Azure/GCPPlatform fee roughly $6/GB RAM-mo and $13/vCPU-mo plus cloud billUnderlying Kubernetes/cloud resources remain allocatedAll cloud networking, load balancers, NAT, storage, and egress are paid to the cloudKubernetes and provider minimums make it poor economics for one tiny hobby app
QoveryBYOC Kubernetes platformTeam and Business are usage-based; Enterprise customApps run on clusters in the customer cloud accountCloud provider transfer and infrastructure costs are separateCurrent pricing is no longer a simple low-cost hobby tier
Encore CloudBackend framework plus managed/BYOC cloud automationPro $49/member/mo plus environment and resource fees, then cloud billGenerated cloud resources follow their provider billingCloud transfer, database, queue, and observability costs remainSeat, environment, resource, and cloud charges stack
SSTOpen-source framework plus optional Console for own-cloud deploymentsFramework free; Console free to 350 active resources then per-resourceAWS or other provider resources follow their native billingNative cloud egress, NAT, logs, functions, and databases remain your billPortability is improved, but cloud complexity and cost do not disappear
FlightcontrolDeveloper control plane for applications in the customer AWS accountStarter $97/mo for 5 services; Business $397/mo; AWS bill separateECS/Fargate or ECS/EC2 resources remain allocated according to configurationALB, NAT, transfer, storage, database, and logs are AWS chargesA tiny web service can require load-balancer and networking costs; the site identifies Ravion as successor
CoolifyOpen-source self-hosted PaaS plus hosted control planeSelf-host free; Cloud $5/mo includes 2 connected servers, then $3/serverYour VPS/server stays on; applications share its capacityTransfer follows the connected server providerYou own patching, backups, capacity, firewalling, and incident response
DokployOpen-source Docker deployment platform plus hosted control planeSelf-host free; cloud Hobby about $4.50/server; Startup $15 with 3 serversConnected servers are continuously billedUnderlying VPS/cloud traffic and port limits applyControl-plane convenience does not make application data automatically highly available
EasypanelSelf-hosted server panel for apps and databasesFree up to 3 projects; paid from about $10.90/mo annual-effectiveRequires an always-on Linux server, recommended at 2 GB RAM or moreServer provider transfer appliesPanel subscription and VPS are separate; free project cap is small
CapRoverOpen-source self-hosted PaaSFree software; pay for server, backups, and operationsAlways-on server and Docker servicesUnderlying server transfer and firewall rules applyPersistent apps are tied to nodes unless you design storage and HA yourself
DokkuOpen-source Heroku-like PaaS for one or more serversFree open source; optional Dokku Pro is a separate lifetime licenseAlways-on host; app processes consume assigned server resourcesServer provider transfer appliesYou operate the host, plugins, data, backups, and scaling
KamalOpen-source Docker deployment toolFree software; pay for servers, registry, storage, and operationsDeploys long-running containers to your serversServer and registry traffic policies applyIt automates deployment, not full managed hosting, databases, backups, or autoscaling
KuberoOpen-source Kubernetes-native PaaSNo software licensing fee for self-hostingRuns on a Kubernetes cluster whose nodes remain billableCluster load balancer, storage, and cloud egress applyKubernetes minimums and operational surface are excessive for many solo projects
OpenFaaSSelf-hosted functions and jobs on Kubernetes or container infrastructureCommunity and commercial editions; infrastructure billed separatelyFunctions can scale according to configuration; cluster remainsCluster, gateway, storage, and cloud networking determine costIt is infrastructure software, not a zero-operations free cloud
PikuMinimal Git-push PaaS for personal serversFree open source; pay for one small serverAlways-on server with app processesServer provider transfer appliesDeliberately minimal feature set and small community compared with larger panels
Laravel ForgeServer management and Git deployment for owned VPS/cloud serversHobby $12/mo; Growth $19/mo; Business $39/mo, plus server/provider costsProvisioned servers and databases stay allocated; scaling is primarily server-basedBandwidth, addresses, backups, and overage follow Laravel VPS or the connected providerForge automates operations but does not turn the server into managed or scale-to-zero hosting
PloiHosted server management and deployment control planeFree; Basic EUR8/mo; Pro EUR13/mo; Unlimited EUR30/mo; annual billing saves 10%Connected VPS/cloud servers remain continuously billableTransfer, public IP, disk, and backup costs follow the chosen infrastructure and backup targetThe panel fee is separate from every server; annual billing changes effective monthly cost
RunCloudManaged PHP server control panel for owned cloud serversEssentials $9/mo; Professional $19; Business $49; Enterprise $399Connected servers remain always allocatedCloud/VPS bandwidth, storage, backups, and addresses remain provider chargesIt manages servers rather than abstracting them; application portability and HA remain the owner's job
CloudPanelFree self-hosted server control panelFree software; pay for server, backups, storage, and administrationThe underlying server and its services remain onTransfer and network limits follow AWS, DigitalOcean, Hetzner, Azure, GCP, Vultr, or another hostIt is a server panel, not a Git-to-PaaS with automatic multi-node scaling and managed state
CloudronSelf-hosted packaged-application platform with automatic app updatesFree for 2 apps; Pro starts around EUR15/mo annual-effective; monthly billing is higherThe server and installed applications stay allocatedVPS bandwidth, backups, mail delivery, and external storage follow the owner's infrastructureIt is an app catalog/appliance platform, not a general arbitrary-code deployment service

What free really means

The word "free" covers at least six different offers:

  1. Personal/non-commercial: useful for a portfolio, invalid for a paid product.

  2. Static delivery: genuinely cheap because there is no server process.

  3. Sleeping evaluation instance: useful for demos, unsuitable for predictable latency.

  4. Monthly usage grant: valid until requests, CPU, memory, traffic, builds, or storage consume it.

  5. Trial credit: expires after days or months and is not a permanent tier.

  6. Free software: the control plane costs $0, but the server and operations do not.

Free offerCommercial-use realityWhat happens at/after idle or quotaNotable allowance
Vercel HobbyNo - personal, non-commercialHard plan limits; cannot buy extra usage100 GB transfer in checked matrix; 1M edge requests
Netlify FreeCheck project/account terms300 monthly credits; account can pause when exhaustedBandwidth, compute, requests, and deploys share credits
Cloudflare Workers FreeGenerally usable for projects under service terms100,000 requests/day and 10 ms CPU/invocationNo separate Workers egress; static assets free
Deno Deploy FreePositioned for personal/smaller projectsMonthly quotas, then upgrade1M requests, 20 GB egress, 15 CPU hours
GitHub PagesNot for online business/ecommerce/SaaS hostingSoft usage limits and repository rules1 GB site and 100 GB/month soft bandwidth
Surge FreeStatic projects under termsNo public project/deploy cap in current docsCustom domains and managed SSL
Sevalla StaticYes under fair useFair-use limits100 sites, 100 GB bandwidth, 600 build minutes
Railway Free after trialVery limited$1 monthly allowance after 30-day $5 trial1 project, 3 services, no custom domain after trial
Render FreeEvaluation-orientedWeb sleeps after 15 min; free Postgres expires in 30 days512 MB/0.1 CPU free web resource
Koyeb FreeSmall workloadsSleeps after one hour0.1 vCPU/512 MB/2 GB; no worker or volume
Back4app Free ContainerSmall apps under termsFixed free resource0.25 CPU/256 MB/100 GB transfer
Northflank SandboxDevelopment/sandboxAlways-on within small resource limits2 services, 1 database, 2 cron jobs
PythonAnywhere BeginnerLearning/small useRestricted outbound and one workerOne pythonanywhere.com web app
alwaysdata FreeNo - personal useShared 256 MB/quarter CPU/1 GB diskNo custom domain on Free
Hugging Face CPU BasicPublic demo-orientedCan sleep; controlled resources2 vCPU/16 GB published CPU Basic
Streamlit Community CloudPublic community app useSleeps/restarts and platform limitsFree public Streamlit apps
Fermyon Cloud StarterSmall WebAssembly applications under service termsMonthly quotas, then upgrade5 apps, 100,000 requests, and 5 GB egress
Gigalixir FreePrototype and development useCan sleep/scale to zero after prolonged inactivityFree Elixir app and small database with strict limits
shinyapps.io FreePublic Shiny applications under plan terms25 active hours shared across 5 apps5 applications and community support
Posit Connect Cloud FreePublic R/Python apps and documents under plan terms20 monthly active hours; public-repository workflow4 GB memory, 1 CPU, and up to 5 applications
Laravel Vapor SandboxEvaluation and small experiments; AWS account still requiredAWS usage remains separately billableVapor control plane is free on Sandbox

The correct question is not "Does it have a free tier?" It is:

Can this exact commercial or personal workload remain within the free tier without sleep, expiry, account suspension, prohibited use, or an external paid database?

For a public documentation site, the answer may be yes. For a customer-facing SaaS with Postgres, background jobs, email, storage, and backups, the answer is usually no.

Egress and bandwidth compared

App-platform pricing pages often emphasize CPU and requests because network transfer is harder to summarize. Yet a media-heavy app, file proxy, API aggregator, or AI output service can spend more on egress than compute.

PlatformIncluded/charging modelPublic overage signalImportant catch
Cloudflare WorkersNo separate egress meterNone for Workers trafficStorage products and Containers have their own pricing
Cloudflare Containers1 TB NA/Europe or 500 GB in other listed bandsAbout $0.025-$0.05/GB by regionThis is different from Workers pricing
Vercel Pro1 TB in checked plan matrix$0.15/GBSeat fee and function/request meters also apply
Netlify ProCredits, not a dedicated GB bundle20 credits/GB; recharge packsDeploys, requests, and compute use same credits
Deno Deploy Pro200 GB$0.50/GBHigh transfer can dominate quickly
RailwayNo broad bundled public egress on usage plans$0.05/GBObject storage egress policy differs
Fly.ioNo general large bundle for new PAYG accountsAbout $0.02-$0.12/GB by regionInter-region and product traffic distinctions matter
DigitalOcean App PlatformPlan allowance, pooled by team$0.02/GiBDashboard visibility of cumulative usage has limitations
Back4app $5 container100 GBCheck current plan termsFixed compute resource remains the main plan constraint
Bunny Magic ContainersNo broad free bundle stated$0.01/GB NA/EU; higher elsewhereOne active instance per selected region plus anycast/storage
AWS Lightsail Containers500 GB/serviceStarts around $0.09/GB by regionBoth directions count toward allowance, outbound overage is billed
AWS Amplify Hosting15 GB transfer under published allowance$0.15/GBBuild, storage, SSR, WAF, and backend separate
Firebase Hosting360 MB/day$0.15/GBDaily allowance is less flexible than a monthly pool
Fastly delivery + Compute100 GB delivery and 10M compute requests freeBandwidth varies by destination regionCompute and delivery are distinct meters
Google Cloud RunServerless free grant does not erase all network chargesGoogle Cloud regional internet egress ratesLoad balancer, VPC, logs, build, and registry can add cost

Four network questions to ask

  1. Is the allowance measured in decimal GB or binary GiB?
  2. Is it inbound, outbound, or both directions?
  3. Is it pooled across projects, teams, services, or regions?
  4. What happens after the allowance: overage, throttling, pause, or fair-use review?

Why the lowest per-GB rate is not automatically best

A platform with $0.01/GB egress can still be more expensive if it requires one active instance in several regions. A platform with $0.15/GB can be cheaper if the plan includes 1 TB and the project sends only 200 GB. Compare the whole workload.

Major platform analysis

Vercel: best commercial Next.js experience, not the cheapest generic backend

Verified facts: Vercel Hobby is $0 and restricted to personal, non-commercial use. Pro is $20 per developer per month and includes a $20 usage credit. The checked matrix lists 1 TB of transfer on Pro and $0.15/GB overage, plus separate request, function CPU, memory, invocation, build, and observability limits.

Editorial inference: Vercel Pro is the right reference choice when the team uses Next.js features deeply and values preview URLs, framework-aware caching, image handling, integrated analytics, and minimal operational work. The product is less compelling as a generic always-on worker or heavy data-transfer origin.

The decisive question is not whether another platform can run next build. It is whether the application uses Vercel-specific or Vercel-optimized behavior: ISR, middleware, fluid compute, image optimization, cache revalidation, edge functions, and branch previews.

Main traps:

  • Every developer seat establishes a fixed floor.
  • The $20 usage credit is not unlimited runtime.
  • A function-heavy app can consume CPU, memory, invocation, and transfer meters simultaneously.
  • Hobby cannot simply buy overage and remain a commercial production plan.

Netlify: the closest broad frontend workflow, with a credit abstraction

Netlify remains a strong choice for framework-neutral frontend teams. Its current pricing converts production deploys, bandwidth, compute, and requests into credits. That simplifies the invoice to one pool but makes resource planning less intuitive.

At the checked rates, a production deployment costs 15 credits, bandwidth 20 credits/GB, compute 10 credits/GB-hour, and requests 2 credits per 10,000. Free includes 300 credits, Personal 1,000, and Pro 3,000. Auto-recharge is optional rather than automatic by default.

Editorial inference: Netlify is attractive when frontend workflow, forms, previews, functions, and team collaboration are the product. It is less attractive when the reader wants a transparent CPU/RAM server or pushes large files.

Cloudflare Workers and Static Assets: strongest low-cost edge/static default

Cloudflare Workers Paid starts at $5 per account and includes a large request and CPU allowance. Workers does not add separate egress or throughput charges, and static asset requests are free. That creates a rare combination: commercial use, edge execution, and low network-price risk.

The tradeoff is runtime shape. Workers is not an arbitrary always-on Linux process. CPU time, subrequests, memory, runtime APIs, Durable Objects, storage operations, and service-specific limits matter.

Cloudflare Containers expands the model toward ordinary containers, but it must be priced separately. The current container offer includes compute allowances with Workers Paid and then meters active compute, disk, and regional egress. In North America and Europe, the checked allowance is 1 TB before about $0.025/GB; other bands use 500 GB and higher rates.

Editorial inference: Use Workers for edge APIs, middleware, authentication, caching, lightweight SaaS backends, and static sites. Use Containers only when the container runtime solves a real compatibility problem and the separate economics remain favorable.

Deno Deploy: credible web-standard serverless, with a recent product boundary

The current Deno Deploy Free plan publishes 1 million requests, 20 GB egress, 15 CPU hours, 350 GB-hours of memory, 20 apps, and a 1 GiB volume. Pro is $20 with larger allowances, then $2 per million requests, $0.50/GB egress, and active CPU/memory overages.

Deno Deploy Classic shut down on July 20, 2026. Old tutorials that point to the Classic dashboard or Classic limits are obsolete.

Editorial inference: Deno Deploy is a strong option for TypeScript applications written to web standards and Deno tooling. The $0.50/GB Pro overage makes it a poor choice for large origin transfer unless caching or architecture reduces egress.

Railway: best approachable full-stack usage-metered PaaS

Railway's strength is that web services, workers, cron, databases, volumes, object storage, variables, networking, and logs live in one project model. Hobby has a $5 monthly minimum that includes $5 of usage; Pro has a $20 minimum with $20 included.

Current public resource rates include approximately $0.00000772 per vCPU-second, $0.00000386 per GB-second of RAM, and $0.05/GB public egress.

At those rates, a continuously allocated 0.5 vCPU and 0.5 GB service is about $15.22/month before egress and storage. A continuously allocated 1 vCPU and 1 GB service is about $30.43/month. The subscription minimum is not added again when usage already exceeds it.

Editorial inference: Railway is excellent when the project is naturally a graph of ordinary services and the owner wants to see usage by service. It is not automatically cheap for idle databases, workers, and duplicated preview environments.

Render: useful free evaluation, clear paid PaaS

Render's free web service has 512 MB RAM and 0.1 CPU, sleeps after 15 minutes of inactivity, and can take roughly a minute to wake. Free PostgreSQL expires after 30 days. Paid web service pricing currently starts at $7/month for 512 MB, with larger fixed sizes.

Workspace and network pricing changed in 2026. The current public plan matrix shows Hobby $0, Pro $25, Scale $499, and bandwidth allowances with $0.15/GB overage on lower workspace plans.

Editorial inference: Render Free is a good product demonstration, not a production promise. Render paid services suit teams that want Heroku-like ergonomics, private services, background workers, cron, disks, and managed databases without the Railway-style raw resource meter.

Fly.io: best control and placement among small-team platforms

Fly.io runs Firecracker-based Machines in many regions. Shared machine examples remain inexpensive: approximately $3.32/month for a continuously running 512 MB shared machine and $5.92 for 1 GB, before storage and traffic.

Machines can autostop and autostart, but volumes bill while allocated and are local to a region/host placement. Egress starts around $0.02/GB in North America and Europe, $0.04 in several other regions, and higher in Africa/India.

Editorial inference: Fly is compelling for latency-sensitive global applications, custom networking, WebSockets, and ordinary containers. It demands more architectural understanding than a single-region Git-to-PaaS. Stateless services are easy; globally consistent state is not.

Heroku: mature and supported, but now a roadmap decision

Heroku's Eco plan costs $5 for a shared pool of 1,000 dyno hours and sleeps. Basic is $7 for 512 MB. Standard-1X is $25, and databases, Redis, monitoring, and other add-ons are separate.

Heroku announced a sustaining-engineering model in February 2026: security, stability, reliability, and support continue, but the product is no longer positioned around aggressive feature growth.

Editorial inference: Existing stable workloads do not need a panic migration. New projects should compare the value of mature workflows and add-ons against a more actively expanding roadmap elsewhere.

DigitalOcean App Platform: best predictable small paid service in a familiar cloud

The smallest current paid application component is $5/month for 1 shared vCPU, 512 MiB RAM, and a transfer allowance. The next fixed small plans add memory and traffic. Static sites have a limited free allowance. Transfer overage is $0.02/GiB and plan allowances pool at team level.

Editorial inference: DigitalOcean App Platform is one of the easiest recommendations for a small always-on API when $5 fixed is preferable to per-second resource math. Managed databases, dedicated egress IP, and additional components must be added to the comparison.

Koyeb: attractive low-use global containers, with persistence caveats

Koyeb's Free service is 0.1 vCPU, 512 MB RAM, and 2 GB storage in selected regions. It sleeps after one hour and cannot be a worker or attach a volume. Standard Nano and Micro are approximately $2.68 and $5.36 per month.

The platform publishes 100 GB outbound included and a $0.04/GB overage rate, while a documentation note checked in May 2026 said the overage was not yet charged. That is an official-source ambiguity: confirm the live invoice rules.

Preview volumes are local, single-replica, non-redundant, and limited to selected regions. They are not a managed HA database substitute.

Northflank: strongest small-team service graph after Railway

Northflank combines services, jobs, cron, databases, pipelines, previews, secrets, and observability. Sandbox includes a small always-on allocation. PAYG starts around $2.70/month for 0.1 shared CPU and 256 MB; egress is $0.06/GB, cross-zone $0.02/GB, and disk $0.15/GB-month.

Editorial inference: Northflank is a strong fit when the application has several service types and the team wants one platform without immediately adopting Kubernetes. It is more to learn than a one-button host.

Back4app Containers: unusually clear fixed small plans

Back4app's free container publishes 0.25 shared CPU, 256 MB RAM, and 100 GB transfer. The $5 shared plan provides 0.5 CPU, 512 MB, and 100 GB. Larger fixed plans increase CPU, RAM, and transfer.

Editorial inference: It is a useful alternative for a small Dockerized API where predictable cash cost and included transfer matter. Treat it as fixed container hosting, not guaranteed zero-idle serverless.

Leapcell: flexible, but every meter matters

Leapcell supports scale-to-zero serverless deployments and persistent services. Public pricing begins around $0.60 per million invocations and $0.18 per GB-hour, but build minutes, log ingestion, egress, and even sufficiently large ingress payloads can be billed.

Editorial inference: It is interesting for polyglot hobby APIs and global deployment, but readers should estimate every meter instead of comparing only invocation price.

Replit Deployments: best integrated editor-to-launch workflow

Replit combines the development environment with autoscale, reserved, scheduled, and static deployments. Core is $25 monthly or $20/month annual-effective with $25 deployment credits; Pro is $100 monthly or $95 annual-effective with $100 credits.

Editorial inference: Replit wins when the browser workspace, collaboration, AI coding, and deployment are one workflow. It is not automatically the lowest infrastructure price, and credits must be modeled.

Bunny Magic Containers: important new global container alternative

Bunny publishes simple resource rates: $0.02 per CPU core-hour, $0.005 per GB RAM-hour, $0.10 per GB-month persistent storage, $2/month anycast IPv4, and traffic from $0.01/GB in Europe/North America.

One continuously active 1 vCPU/1 GB instance is approximately $18.25/month before traffic, IP, and storage. Multi-region deployment can multiply that floor because at least one instance per selected region is active.

Editorial inference: Magic Containers is compelling when global placement and low traffic rates matter. It is less compelling for a single tiny idle app that another platform can scale fully to zero.

Firebase App Hosting and Amplify: integrated clouds, integrated bills

Firebase App Hosting and AWS Amplify reduce framework deployment work but expose the economics of their parent clouds.

Firebase App Hosting requires Blaze and uses Cloud Run, Cloud Build, Artifact Registry, logging, secrets, and Firebase data services. Amplify separately meters builds, storage, transfer, SSR requests, and SSR duration; WAF and backend resources are additional.

Editorial inference: Choose them when the surrounding cloud ecosystem is an advantage. Do not choose solely because the frontend deploy button looks like a fixed-price host.

Laravel Cloud, Forge, and Vapor: one ecosystem, three different operating models

These products share Laravel branding, but they should not be treated as interchangeable plans.

Verified facts: Laravel Cloud Starter is $5/month plus usage and includes $5 in monthly usage credits; Growth is $20/month plus usage. Cloud supports scale-to-zero for eligible Flex compute and explicitly describes itself as server-based rather than serverless, with applications running on dedicated AWS EC2 infrastructure. A spending limit can pause compute when the configured threshold is reached.

Laravel Forge starts at $12/month for Hobby, $19/month for Growth, and $39/month for Business. Forge is a server-management control plane: the customer separately pays for and owns the server at a supported cloud or VPS provider.

Laravel Vapor has a free Sandbox and a paid production plan at $39/month or $399/year, excluding AWS charges. Vapor deploys Laravel applications into the customer's AWS account using Lambda and adjacent AWS services.

Editorial inference:

  • Choose Laravel Cloud when the fastest first-party managed Laravel launch and scale-to-zero behavior are worth usage billing.
  • Choose Forge when a conventional server, predictable VPS economics, persistent processes, and infrastructure ownership matter.
  • Choose Vapor when Lambda's event-driven scaling, AWS integration, and serverless operational model fit the application.

The cheapest option can change with traffic shape. A quiet app may benefit from Cloud scale-to-zero or Vapor's request model; a continuously busy queue, WebSocket service, or memory-heavy application may be cheaper and simpler on a Forge-managed server.

Framework-specialist platforms are often better than a generic PaaS

Gigalixir is purpose-built around Elixir and Phoenix while also supporting other runtimes. Its free tier provides one 0.5 GB prototype replica and can sleep after 30 days without a deploy; current Standard pricing starts at $10/month for one 0.2 GB replica. The managed Postgres offer has separate size, connection, backup, and availability considerations.

shinyapps.io specializes in R Shiny. The free tier publishes up to five apps with 25 active hours; paid tiers increase active hours, application count, worker capacity, authentication, and custom-domain support. Posit now recommends Posit Connect Cloud for new projects: it supports Shiny, Streamlit, Dash, Bokeh, Quarto, R Markdown, and Jupyter, with Free, $19 Basic, $59 Enhanced, and a $249 team-oriented Advanced entry tier. shinyapps.io remains relevant for the established push-button Shiny workflow; Connect Cloud is the broader R/Python publishing platform.

Fermyon Cloud targets WebAssembly applications built around Spin. Starter is free with five apps, 100,000 requests, and 5 GB egress; Growth is $19.38/month with 100 apps, 1 million requests, and 50 GB egress. It is compelling for tiny, fast-starting Wasm services, but it is not a drop-in home for arbitrary long-running Linux processes.

Editorial inference: Specialist platforms can eliminate buildpacks, runtime tuning, and operational glue. Their cost is a narrower execution contract and potentially higher migration effort. Choose them when the framework-specific workflow is a primary advantage, not merely because the entry tier is cheap.

Serverless containers and functions

Google Cloud Run is the reference portable serverless container

Cloud Run's request-based free grant includes 180,000 vCPU-seconds, 360,000 GiB-seconds, and 2 million requests per month in eligible use. Instance-based billing has a different free grant. A service can scale to zero, while minimum instances reserve capacity and create idle cost.

It is the best comparison reference because the application contract is an ordinary container. That improves portability relative to a provider-specific edge runtime. The surrounding architecture remains cloud-specific: build, registry, logs, load balancing, secrets, VPC, database, and egress.

Azure Container Apps is the Azure equivalent with jobs

Azure Container Apps provides a monthly free grant and bills active/idle vCPU and memory plus requests. It supports HTTP apps, workers, jobs, revisions, environments, and KEDA-style scaling.

It is a strong choice for Azure-centric teams, especially when Container Apps jobs replace a continuously running worker. The main trap is assuming all replicas are active-only: minimum replicas, environment networking, logs, and adjacent services can establish a floor.

IBM Code Engine and Scaleway are credible alternatives

IBM Code Engine unifies applications, jobs, functions, and builds and publishes a free grant. Scaleway Serverless Containers offers European scale-to-zero billing for active compute. They deserve comparison when region, data residency, or ecosystem fit is better than AWS/Azure/Google.

AWS Lambda remains excellent for events, not universal hosting

Lambda is ideal for event handlers, queues, schedules, webhooks, and short APIs. It becomes awkward when the app needs long requests, native process control, large files, stateful connections, or stable warm capacity.

The Lambda function may be nearly free while API Gateway, CloudWatch logs, NAT, S3, DynamoDB/RDS, streaming responses, and data transfer form the bill.

AWS ECS Express Mode is not the new free App Runner

AWS App Runner stopped accepting new customers on April 30, 2026. AWS points new users toward ECS Express Mode. Express Mode has no separate surcharge, but it creates and uses ordinary AWS resources such as Fargate tasks, an Application Load Balancer, logs, and networking.

That is a simplification of ECS, not a tiny scale-to-zero hobby PaaS. A small task can cost less than its ALB/NAT architecture.

Modal, Val Town, and Upstash Box solve different problems

  • Modal is for Python, AI inference, batch work, GPU use, and containerized functions.
  • Val Town is for tiny TypeScript APIs, cron, automations, and internal tools.
  • Upstash Box is for intermittent Linux execution and agent sandboxes, with optional keep-alive.

Comparing them by "RAM per dollar" misses why they exist.

Trigger.dev, Inngest, and Pipedream are complements

A web host should respond quickly; durable work should survive retries, deploys, timeouts, and process death. Trigger.dev and Inngest move long-running work into a durable execution layer. Pipedream combines serverless code with thousands of integrations.

The architecture becomes:

frontend/API host + durable workflow service + database + object storage + email/payment services

This can be more reliable than one monolith but introduces multiple bills and failure domains.

Self-hosted and bring-your-own-cloud alternatives

Coolify: best general self-hosted default

Coolify supports Git repositories, Docker images, databases, services, domains, TLS, backups, and multiple servers. The software is free to self-host. Coolify Cloud is a managed control plane at $5/month including two connected servers, then $3 per additional server.

Editorial inference: Coolify is the best default when a technically capable solo founder wants a broad PaaS on a VPS. It has more features and a larger mindshare than many one-server alternatives.

It does not remove these responsibilities:

  • Operating-system and Docker updates
  • Database backup and restore tests
  • Off-site storage and secret handling
  • Monitoring, alerts, and capacity planning
  • Firewall, SSH, abuse, and incident response
  • High availability and disaster recovery

Forge, Ploi, RunCloud, and CloudPanel: server control panels, not hosted compute

These tools sit between raw SSH administration and a full hosted PaaS.

  • Laravel Forge starts at $12/month and is optimized for Laravel/PHP while supporting broader server workflows. The server bill is separate.
  • Ploi offers Free, Basic at EUR8/month, Pro at EUR13/month, and Unlimited at EUR30/month; annual prepayment saves 10%. The tiers cover 1, 5, 10, and unlimited servers respectively, while server fees remain separate.
  • RunCloud publishes Essentials at $9/month, Professional at $19, Business at $49, and Enterprise at $399. It manages PHP-oriented web stacks on customer servers.
  • CloudPanel is free software for PHP, Node.js, Python, static sites, and reverse proxies. The user supplies the server and owns the operational burden.

Verified boundary: A control panel can automate TLS, virtual hosts, deployments, users, processes, and some backups. It does not automatically provide multi-zone availability, managed database recovery, abuse handling, capacity guarantees, or a second copy of the server.

Editorial inference: Forge is the cleanest Laravel-server choice; RunCloud and Ploi are stronger general PHP panel candidates; CloudPanel is attractive when the subscription must be $0 and the operator is comfortable owning the whole host.

Cloudron: an app catalog and appliance-like server layer

Cloudron provides a curated application catalog, automatic application updates, domains, mail integration, backups, and server management on infrastructure the customer supplies. The free edition supports two apps; paid plans start from approximately EUR15/month when billed on the lower annual-effective schedule, while the underlying VPS remains separate.

It is excellent for self-hosting packaged applications such as collaboration, file, and publishing tools. It is less suitable than Coolify, Dokploy, or a generic container PaaS for arbitrary microservices and custom deployment topologies.

Dokploy: best for Docker Compose and multi-server simplicity

Dokploy is open source and particularly comfortable for Docker Compose, databases, and multiple servers. Its hosted control plane has a low per-server entry price.

Editorial inference: Choose Dokploy when Compose-first workflows and a clean UI matter. Choose Coolify when its broader integrated feature set better matches the stack. Both inherit the underlying server's transfer, disk, CPU, and failure domain.

Easypanel and CapRover: good one-server panels

Easypanel offers a polished UI and a free three-project tier, then paid subscriptions. CapRover is free and mature, with Git/Docker deployment and one-click apps.

They are strong for one server. They require deliberate planning before calling a stateful service highly available.

Dokku and Kamal: fewer abstractions, more transparency

Dokku recreates a Heroku-like Git/buildpack workflow on a server. Kamal deploys Docker images over SSH, installs Docker when needed, and uses a proxy for gapless deploys and TLS.

Editorial inference: Dokku is better for a compact PaaS experience. Kamal is better for teams that want deployment automation without installing a large control plane.

Kubero and OpenFaaS: only when Kubernetes is already justified

Kubero provides a Heroku-like PaaS on Kubernetes. OpenFaaS provides functions and jobs on owned container infrastructure. Both are capable; neither makes Kubernetes free or simple.

A one-node cluster is not meaningfully highly available. Managed load balancers, persistent volumes, backups, upgrades, ingress, certificates, and observability remain.

BYOC: ownership with a double invoice

Porter, Qovery, Flightcontrol, Cloud 66, Encore, and SST preserve customer cloud ownership to different degrees. The advantages are real:

  • Cloud credits can pay infrastructure.
  • Workloads and data remain in the customer account.
  • Native cloud services and compliance controls are available.
  • Migration can be easier than extracting from a black-box runtime.

The disadvantage is equally real: the platform fee is added to the cloud invoice. Small workloads can be dominated by cluster nodes, load balancers, NAT, private networking, logs, and minimum database sizes.

For a solo project, BYOC is usually an architecture decision, not a cost-saving shortcut.

Backend and database companions

Many "Vercel stack" or "serverless stack" discussions compare a frontend host to a full PaaS while quietly assuming an external backend. The following services are important, but they do not all replace the main application host.

Backend companionWhat it providesEntry signalMain trap
SupabasePostgres, auth, storage, realtime, edge functionsFree; Pro $25/mo plus project compute beyond included creditA paid project has ongoing compute; storage, egress, MAU, and backups have quotas
NeonServerless Postgres with branching and scale-to-zeroFree and usage-based paid plansCompute units, storage, branches, history, and transfer can all matter
TursoDistributed SQLite/libSQL databaseFree; Developer about $4.99; Scaler about $24.92Reads, writes, database count, storage, and locations are separate constraints
Upstash Redis/QStash/WorkflowServerless Redis, messaging, schedules, and workflowsFree allowances then per-command/message/storage pricingRetries can count as deliveries; command-heavy designs can cost more than storage
ConvexReactive backend, database, functions, and realtimeFree development tier and paid usage plansConvenient coupling can increase migration cost
Appwrite CloudAuth, database, storage, functions, messaging, and sitesFree and paid Cloud plansMany features share plan quotas and one operational boundary
FirebaseAuth, Firestore/RTDB, storage, functions, hosting, messagingSpark free and Blaze PAYGIndividual service meters make total cost workload-specific
NhostPostgres/Hasura, auth, storage, functionsFree and paid workspace/project plansResource and project limits differ from a generic database bill
MongoDB AtlasManaged document database and adjacent data servicesFree shared cluster and paid dedicated/serverless optionsBackups, transfer, search, and dedicated sizing can dominate
Cloudflare D1/R2/KV/Durable ObjectsEdge-adjacent SQL, object, key-value, and stateProduct-specific free grants and usage metersWorkers egress policy does not imply every storage operation is free

The split-stack advantage

A split stack can choose the best component for each job: Cloudflare for edge delivery, Neon for Postgres, R2 for objects, Trigger.dev for long jobs, and a transactional email provider.

The split-stack cost

The application now has several identity systems, region choices, service limits, invoices, status pages, SDKs, and migration paths. Cross-provider traffic and latency can appear between the frontend, database, storage, and worker.

The correct comparison is between complete architectures, not logos.

Lifecycle warnings

A 2026 comparison that repeats an old list without checking current availability is dangerous.

ProductCurrent statusWhat the reader should do
AWS App RunnerNo new customers since April 30, 2026Existing users remain supported, but new projects should evaluate ECS Express Mode, Cloud Run, or another active PaaS.
Deno Deploy ClassicShut down July 20, 2026Use current Deno Deploy; do not rely on Classic-era limits or dashboard instructions.
ShuttleCeased operations; Pro projects stopped January 16, 2026Treat old Rust-hosting comparisons as obsolete; verify Neptune separately if considering it.
Glitch project hostingEnded July 8, 2025Glitch is no longer an app-hosting recommendation.
HerokuActive and supported, but moved to sustaining engineering in 2026It remains viable for stable workloads, but roadmap-sensitive buyers should compare active-growth alternatives.
Flightcontrol / RavionFlightcontrol remains online; its site identifies Ravion as successorConfirm migration, roadmap, and pricing directly before a new long-lived commitment.

Lifecycle risk does not mean every older platform must be abandoned. It means the exit path, data export, container portability, infrastructure ownership, and migration labor belong in the buying decision.

Cost scenarios

These scenarios are illustrative, before tax, and exclude database, backups, observability, support, and discounts unless stated. They compare workload shape, not benchmark performance.

Scenario 1: static commercial marketing site, 20 GB/month

Best candidates:

  • Cloudflare Static Assets/Pages: near-zero platform and delivery cost under current pricing.
  • Sevalla Static: within the published free 100 GB allowance and fair use.
  • Surge Free: viable for a straightforward static site under its terms.
  • Netlify Free: 20 GB alone would consume about 400 credits, already above the 300-credit Free pool before builds or requests.
  • Vercel Hobby: price is $0, but commercial use is outside the plan; Pro establishes a $20/developer floor.
  • GitHub Pages: not intended as free hosting for an online business.

Winner: Cloudflare for the lowest-cost commercial edge/static default; Sevalla is a strong conventional static alternative.

Scenario 2: one always-on 512 MB API, low traffic

Representative monthly compute floors:

PlatformApproximate monthly floorWhat is included or excluded
DigitalOcean App Platform$5Fixed 512 MiB service and plan transfer allowance
Back4app shared container$50.5 CPU, 512 MB, 100 GB transfer
Koyeb MicroAbout $5.360.5 vCPU, 512 MB; transfer allowance
Fly.io shared 512 MBAbout $3.32Machine only; volume, IP, and egress extra
Heroku Basic$7512 MB dyno; add-ons separate
Render Starter$7512 MB paid web service; workspace/data extras
AWS Lightsail Container Nano$70.25 vCPU, 512 MB, 500 GB/service
Railway 0.5 vCPU/0.5 GBAbout $15.22Usage-based CPU/RAM before egress/storage
Bunny 1 vCPU/1 GBAbout $18.25One always-active instance before traffic/IP/storage

The comparison is not performance-normalized. CPU shares and scheduling differ. It shows why usage pricing can be more expensive than a fixed plan when a service is continuously allocated.

Winner: DigitalOcean App Platform or Back4app for predictable tiny always-on cost; Fly.io when placement/control matters; Railway when project-level developer experience is worth the resource meter.

Scenario 3: bursty API, 50,000 requests/month, 100 ms average CPU, no minimum instance

A scale-to-zero runtime can remain inside the free grants of Cloudflare Workers, Cloud Run, Lambda, Azure Functions, or IBM Code Engine, depending on memory, CPU, duration, and request shape.

The app may still pay for:

  • Database compute and storage
  • Connection pooling
  • Logging and traces
  • Object storage operations
  • Outbound data
  • Custom domains, WAF, or API gateway

Winner: Cloudflare Workers for web-standard edge logic and low egress risk; Cloud Run for an ordinary container; Lambda/Azure Functions for native event ecosystems.

Scenario 4: 100 GB/month public delivery

  • Cloudflare Workers/Static Assets: no separate Workers egress charge.
  • Vercel Pro: within its checked 1 TB transfer allowance, but the plan floor remains.
  • Deno Pro: within 200 GB, but $20 plan floor.
  • Back4app $5: exactly within 100 GB published allowance.
  • Lightsail Containers: within 500 GB.
  • Bunny Magic Containers in Europe/North America: about $1 of traffic, plus compute.
  • Fly.io in North America/Europe: about $2 of egress, plus machines.
  • Railway: about $5 of egress, plus CPU/RAM.
  • Amplify: roughly $12.75 after a 15 GB allowance at $0.15/GB, before other meters.
  • Firebase Hosting: roughly $13 or more after its daily allowance, before other services.

Winner: depends on compute. Cloudflare is the network-cost reference; Back4app and Lightsail can include transfer inside a fixed small service; Bunny is a low-rate global container alternative.

Scenario 5: SaaS with frontend, API, Postgres, worker, cron, and previews

Three credible architectures:

Bundled PaaS: Railway, Render, Northflank, or Upsun. One service graph and bill, easier private networking, less operational work.

Split serverless: Vercel/Cloudflare + Supabase/Neon + Trigger.dev/Inngest + object storage. Excellent component specialization, more vendors and cross-service failure modes.

One-server PaaS: Coolify/Dokploy on a VPS plus off-site backups. Lowest cash floor, highest owner responsibility and shared blast radius.

Winner: Railway/Northflank for the first product iteration; split architecture when a component has a strong reason; self-hosting when cash efficiency and operational control outweigh managed convenience.

Scenario 6: GPU-backed AI demo

  • Hugging Face Spaces: easiest public demo and model-community integration.
  • Modal: strongest programmatic serverless Python/GPU workflow.
  • Cloud Run GPU or hyperscaler container services: more cloud control, more configuration.
  • Self-hosted GPU server: stable cost at sustained utilization, but capacity and operations are yours.

Winner: Hugging Face for a showcase; Modal for a product pipeline; own GPU capacity when sustained utilization justifies it.

Best platform by use case

Best Vercel alternative

Best Railway alternative

Best free commercial static hosting

Cloudflare Static Assets/Pages and Sevalla Static are the cleanest defaults in this comparison. Surge is excellent for CLI-first static publishing. Verify terms and fair use for the exact workload.

Best tiny commercial API

DigitalOcean App Platform, Back4app, Koyeb, Lightsail Containers, Fly.io, Railway, and Render Starter form the practical shortlist. Fixed plans suit continuous use; scale-to-zero suits idle use.

Best background jobs

Trigger.dev, Inngest, Cloud Run Jobs, Azure Container Apps Jobs, IBM Code Engine Jobs, Modal, Railway workers, and Render workers.

Best for Laravel and PHP

  • Laravel Cloud for the least operational friction and first-party managed workflow.
  • Laravel Forge for a normal VPS or cloud server with predictable long-running processes.
  • Laravel Vapor for Lambda-based serverless Laravel in the customer's AWS account.
  • Ploi or RunCloud for broader PHP server management.
  • CloudPanel for a free control panel when the operator accepts full server responsibility.

Best for Elixir, R, and WebAssembly

  • Gigalixir for Phoenix/Elixir deployment with framework-aware operations.
  • Posit Connect Cloud for the broadest managed R/Python data-app and document workflow.
  • shinyapps.io for the established R Shiny-specific publishing workflow.
  • Fermyon Cloud for Spin-based WebAssembly services.
  • Wasmer Edge for another Wasm-oriented edge path with broader package/runtime ambitions.

Best for Europe

Koyeb, Scaleway Serverless Containers, Scalingo, Clever Cloud, Upsun, alwaysdata, Sliplane, Laravel Cloud's available European regions, and European regions of global platforms. Choose based on data residency, egress destination, and database region, not company headquarters alone.

Best for Spain

For self-hosting, pair Coolify/Dokploy/Kamal with a Spain-region or Barcelona/Madrid VPS from the VPS comparison. For managed platforms, use the nearest European region and verify where the database and backups live.

Best self-hosted PaaS

Coolify is the broad general-purpose default. Dokploy is excellent for Compose and multi-server workflows. Easypanel is polished for a few projects. CapRover and Dokku are mature one-server options. Kamal is best when a control plane is unnecessary. For Laravel/PHP, add Forge, Ploi, RunCloud, and CloudPanel. For a curated catalog of packaged self-hosted apps, add Cloudron.

Best own-cloud platform

Porter for a managed PaaS layer on customer cloud, Qovery for governed Kubernetes, Flightcontrol for AWS-focused deployment, Cloud 66 for managed servers/Rails, Encore for opinionated backend automation, and SST for code-first own-cloud infrastructure.

Decision tree

Step 1: Is the output static after build?

Step 2: Does the application require a conventional long-running server?

Examples: WebSockets, custom native binary, stable process memory, long HTTP request, background loop.

Step 3: Can it scale to zero without harming user experience?

Step 4: Is persistent local disk required?

  • Yes: prefer an always-on container/VM and design backups/replication.
  • No: use object storage or a managed database and keep app instances stateless.

Step 5: How much outbound traffic will the app send?

  • Under 10 GB: compute and plan floor usually matter more.
  • 10-500 GB: bundled allowances can decide the winner.
  • Above 500 GB: compare Cloudflare, Bunny, Fly.io, included-transfer fixed plans, and a CDN architecture before choosing a high-overage frontend cloud.

Step 6: Is operating Linux acceptable?

Step 7: Does the infrastructure need to stay in your cloud account?

Portability and migration checklist

Before committing, verify:

  1. The application can build from a standard Dockerfile or standard framework output.
  2. Configuration is exportable as code, not only dashboard state.
  3. Environment variables and secrets can be exported securely.
  4. The database supports logical backup and restore to another provider.
  5. Object storage has a bulk export path and portable API.
  6. Domains and certificates are not tied to an inaccessible account.
  7. Background jobs and schedules are documented outside the platform UI.
  8. Logs and metrics can be exported.
  9. The app does not depend unnecessarily on proprietary middleware or edge APIs.
  10. A migration has been rehearsed before an emergency.

Portability tiers

High portability: ordinary Docker container, external Postgres, S3-compatible objects, documented cron/jobs, open telemetry.

Medium portability: framework adapter plus platform functions and managed database with export.

Low portability: proprietary edge APIs, tightly coupled BaaS data model, dashboard-only workflows, no tested export, and platform-specific state.

Low portability is not automatically bad. It can buy speed. It should be an explicit trade.

Frequently asked questions

What is the best Vercel alternative in 2026?

Cloudflare is the strongest low-cost edge and static alternative, Netlify is the closest broad frontend-workflow alternative, Railway and Render are stronger for ordinary long-running backends, and Coolify is the leading self-hosted route. The best choice depends on whether the app needs Next.js-specific behavior, a persistent server, a database, or scale-to-zero.

Is Railway cheaper than Vercel?

For a full-stack app with an ordinary container and database, Railway can be easier to model because CPU, RAM, storage, and egress are explicit. For a cached frontend with light functions, Vercel may be cheaper or operationally simpler. They are not equivalent products.

Is Render really free?

Render offers free evaluation resources, but free web services sleep after 15 minutes and free PostgreSQL databases expire after 30 days. It is suitable for demos and testing, not a substitute for an always-available paid production stack.

Which platform has the cheapest egress?

Cloudflare Workers does not add a separate egress charge, while Bunny Magic Containers charges $0.01/GB in Europe and North America and Fly.io starts around $0.02/GB in those regions. Included allowances can make Vercel, Deno, Back4app, or Lightsail cheaper at a specific traffic level.

Does serverless mean zero cost when idle?

Not always. Functions and scale-to-zero containers can reach zero compute instances, but minimum replicas, databases, storage, logs, static IPs, NAT, load balancers, build artifacts, and reserved concurrency can continue billing.

Can a serverless platform run background workers?

Some can, but request functions often have duration and lifecycle limits. Cloud Run jobs, Azure Container Apps jobs, IBM Code Engine jobs, Modal, Trigger.dev, Inngest, and ordinary Railway/Render workers are more appropriate for long or durable background work.

What is the cheapest way to host many small apps?

A single VPS with Coolify, Dokploy, Easypanel, CapRover, Dokku, or Kamal can have the lowest cash cost when the apps fit comfortably on one server. The tradeoff is shared failure risk and responsibility for updates, backups, monitoring, and recovery.

Should a hobbyist use Kubernetes?

Usually not for one or two small applications. Kubernetes becomes reasonable when its scheduling, policy, portability, and multi-team controls solve real problems. Kubero, Porter, and Qovery are valuable, but a small PaaS or one-server Docker panel is simpler and often cheaper.

Which free tiers allow commercial projects?

Terms differ. Vercel Hobby is explicitly non-commercial, GitHub Pages is not intended as free hosting for an online business, and alwaysdata Free is personal. Cloudflare Workers, provider static-site offers, and some PaaS free tiers can be used under their service terms, but quotas and acceptable-use policies still apply.

Which platform is best for a small always-on API?

DigitalOcean App Platform, Back4app Containers, Koyeb, Fly.io, Heroku Basic, Render Starter, Railway, and AWS Lightsail Containers are all plausible. Fixed plans favor predictable use; usage billing favors bursty use. Location, memory, transfer, and database needs decide the winner.

Which platform is best for Next.js?

Vercel remains the path of least resistance for the complete Next.js feature set. Cloudflare, Netlify, Deno, Firebase App Hosting, Amplify, Railway, Render, and self-hosted Node containers are alternatives, but framework feature parity and runtime behavior must be tested.

Which is best for Laravel: Laravel Cloud, Forge, or Vapor?

Laravel Cloud is the managed server-based path and can scale supported resources to zero; Forge manages servers in your own provider account; Vapor deploys Laravel to AWS Lambda and adds AWS charges to its subscription. Choose by runtime and operations model, not by the shared Laravel branding.

Which platform is best for R and Python data apps?

Posit Connect Cloud is the broad managed publishing choice for Shiny, Streamlit, Dash, Bokeh, Quarto, R Markdown, and Jupyter. shinyapps.io remains a focused Shiny option, Streamlit Community Cloud is convenient for public Streamlit projects, and Hugging Face Spaces is strongest when the application centers on models or demos.

Is a server management panel the same as a PaaS?

No. Forge, Ploi, RunCloud, CloudPanel, Coolify, and Dokploy simplify deployment and server administration, but the customer still owns the server bill and much of the security, backup, capacity, and recovery responsibility. A hosted PaaS usually bundles more of that operational boundary.

What is the difference between PaaS and BYOC?

A conventional PaaS runs workloads in the vendor account and bills a bundled service. BYOC control planes deploy into the customer AWS, Azure, GCP, Kubernetes, or VPS account. BYOC improves ownership and escape paths but creates a platform fee plus native cloud costs.

Are platform databases cheaper than external databases?

Sometimes at small scale because setup and private networking are easier. At larger scale, an independent database such as Supabase, Neon, Turso, MongoDB Atlas, or a cloud managed database can be more capable or portable. Compare compute, storage, I/O, backups, transfer, connection limits, and restore procedures.

How do I prevent a surprise serverless bill?

Set platform budgets and hard caps where available, separate production from experiments, cap autoscaling and concurrency, monitor egress and logs, avoid accidental minimum instances, and load-test with billing telemetry enabled. A spend alert is not always a spend limit.

How often should this comparison be updated?

Quarterly at minimum and immediately after free-tier, egress, seat, credit, or lifecycle changes. The deployment market changes quickly; App Runner, Deno Deploy Classic, Shuttle, Glitch, Heroku, and Flightcontrol show why lifecycle verification matters.

Bottom line

The deployment market is best understood as a set of billing and execution models, not a popularity contest.

The correct process is simple even when the market is not:

  1. Define the workload shape.
  2. Estimate idle and active compute separately.
  3. Add database, storage, builds, logs, network, and seats.
  4. Check commercial-use and lifecycle terms.
  5. Test the exact region and runtime.
  6. Preserve an exit path.

A platform that costs $0 for a static portfolio can cost hundreds for an SSR-heavy commercial app. A $5 VPS can host dozens of small services or become an expensive source of incidents. The best choice is the architecture whose limits remain acceptable when the product succeeds.

Official sources checked

The detailed tables link each product to its official pricing, product, or documentation page. The most load-bearing sources include:

Update policy

Recheck this article at least quarterly and immediately after a provider changes:

  • free-tier commercial-use rules;
  • seat, credit, build, transfer, or function pricing;
  • sleep, scale-to-zero, or minimum-instance behavior;
  • database retention or backup policy;
  • lifecycle status, ownership, or product name;
  • region availability or data residency;
  • transfer allowances and overage rates.

Do not silently preserve an old price when a current official page is dynamic or contradictory. Record the discrepancy and let the provider console or contract control the purchase.

00

Next article

Best VPS providers in 2026: 48 services compared

Next

Explore the tools or browse interactive maps for more experiments.

Back to Blog Posts