Free-tier scenario
Free web app hosting by failure mode
A static site, a sleeping demo API, and an always-on application are different workloads. A useful free comparison starts with that split.
Standing answer
Static assets fit durable free hosting best. Dynamic demos can fit sleep-based or credit-based runtimes. An always-on application with persistent state should be modeled at its paid floor from the start.
Compare current free offers
29 provider offers, with the limits that matter
Start with the limit your app is most likely to hit. A large allowance is not useful if the service sleeps, the trial expires, or the paid step is unpredictable. Unknown details stay marked as unclear instead of being treated as free or unlimited.
Checked against provider pages on .
| Provider | Free offer | First limit to check | Paid option |
|---|---|---|---|
| RailwayFree plan after trialView offerCompare plans | Sleep behavior unclear30-day $5 trial, then perpetual Free with $1 monthly non-rollover creditNo card requiredSome details unclear | If App Sleeping is mandatory, an outbound-idle service sleeps after more than 10 minutes. Otherwise a 512 MB always-on service exhausts $1 in about 6 days. | Hobby: $5/month |
| RenderFree web serviceView offerCompare plans | Sleeps after 15 minutesWeb service is perpetual; free Postgres expires after 30 days.No card required | An otherwise idle web service sleeps after 15 minutes. | Starter web service: $7/month |
| Fly.ioFree trialView offerCompare plans | Sleeps after 5 minutes2 VM-hours or 7 days, whichever arrives firstNo card required | An always-on Machine reaches the 2 total VM-hour limit. | Pay As You Go: price depends on usage |
| VercelHobbyView offerCompare plans | Does not sleepperpetual Hobby planNo card required | For a commercial app, eligibility fails before resource use because Hobby permits no commercial projects. | Pro: $20/month |
| NetlifyFree credit-based planView offerCompare plans | Does not sleepperpetual with 300 recurring credits per monthNo card required | The shared team meter reaches 300 credits and pauses all projects. | Personal: $9/month |
| KoyebFree InstanceView offerCompare plans | Sleeps after 60 minutesperpetualCard required | An idle app sleeps after 60 minutes; an active app is constrained by 0.1 vCPU. | Eco micro: $2.68/month |
| NorthflankSandboxView offerCompare plans | Does not sleepperpetual SandboxCard required | The third service exceeds the two-service Sandbox cap. | Pay-as-you-go nf-compute-20: $5.40/month |
| ZeaburHosted Dev trialView offerCompare plans | Does not sleepFree self-hosted control plane is perpetual; hosted Dev trial is 14 days.No card required | A hosted application reaches the 14-day trial boundary. Free includes control of one self-owned server but not its infrastructure. | Dev: $5/month |
| Clever CloudSignup creditsView offerCompare plans | Sleep behavior unclearSignup credit exists, but amount and expiry are unpublished.No card requiredSome details unclear | Credit exhaustion is the likely category, but no numeric threshold is published. | Consumption pricing: price depends on usage |
| Oracle CloudAlways Free computeView offerCompare plans | Does not sleepAlways Free resources are perpetual; trial credit is $300 for 30 days.Card required | For a quiet app, idle reclamation risk arrives after seven days below all published thresholds. | Pay As You Go: price depends on usage |
| Google CloudFree Tier and $300 Free TrialView offerCompare plans | Does not sleepAlways Free allocation is perpetual; $300 trial credit expires after 90 days.Card required | The 1 GB monthly outbound allowance is exceeded by a 10 GB reference workload. | Paid billing account: price depends on usage |
| Amazon Web ServicesAWS Free PlanView offerCompare plans | Does not sleepFree Plan lasts up to 6 months with $100 signup credit and up to $100 earnable credit.Card required | The fixed six-month deadline arrives even if credit remains. | Paid Plan: price depends on usage |
| Microsoft AzureAzure free accountView offerCompare plans | Does not sleep$200 credit expires after 30 days; selected services remain free for 12 months after upgrade.Card required | The 30-day credit deadline arrives even if credit remains. | Pay as you go: price depends on usage |
| CloudflareWorkers FreeView offerCompare plans | Does not sleepperpetualNo card required | An invocation needing 11 ms CPU exceeds the 10 ms Free cap. | Workers Paid: $5/month |
| CloudflarePages FreeView offerCompare plans | Does not sleepperpetualNo card required | A single build fails when it reaches the 20-minute timeout. | Pro: $25/month |
| DenoDeno Deploy FreeView offerCompare plans | Does not sleepperpetualNo card required | A 512 MB always-on process exceeds 350 GB-hours of monthly memory. | Pro: $20/month |
| PythonAnywhereBeginnerView offerCompare plans | Does not sleepFree web app requires renewal each month.No card required | A web app that is not manually renewed reaches its one-month expiry. | Developer: €10/month |
| ReplitStarter published appView offerCompare plans | Sleeps after 15 minutesStarter is perpetual, but a free published app must be republished after 30 days.No card required | An idle app scales down after 15 quiet minutes. | Core: $20/month-equivalent |
| FirebaseHosting on SparkView offerCompare plans | Does not sleepperpetual Spark allocationNo card required | The 10 GB reference transfer exactly consumes the monthly transfer allowance. | Blaze: price depends on usage |
| GitHubGitHub PagesView offerCompare plans | Does not sleepperpetualNo card required | Commercial-hosting eligibility fails before deployment for an online business, e-commerce site, or commercial SaaS. | No paid GitHub plan removes the Pages commercial-hosting restriction. |
| Back4AppFree ContainerView offerCompare plans | Sleep behavior unclearperpetualNo card requiredSome details unclear | A 512 MB reference container cannot fit in the 256 MB Free shape. | Shared Container: $5/month |
| LeapcellHobbyView offerCompare plans | Does not sleepperpetual Hobby allocationCard requirement unclearSome details unclear | A 512 MB always-on process exhausts 3 GB-hours after about 6 hours. | Plus: $12.90/month |
| SevallaFree static site hostingView offerCompare plans | Does not sleepperpetual static hostingCard requirement unclearSome details unclear | One 20-minute build per day exactly consumes 600 build minutes in 30 days; the next minute bills $0.05. | Static site usage overage: $0.05/build minute |
| DigitalOceanApp Platform free static sitesView offerCompare plans | Does not sleepperpetual free static appsCard required | A 10 GB reference load exceeds the 1 GiB per-app transfer allowance. | Additional static app: $3/month |
| UpsunFree trial and monthly starter creditView offerCompare plans | Does not sleep15-day trial followed by recurring project and user creditNo card required | The full trial reaches day 15; afterward resources remain billable despite the project and user credit. | Upsun usage pricing: price depends on usage |
| Akamai Cloud$100 promotional creditView offerCompare plans | Does not sleepCredits expire during a specified trial period, but the current offer does not publish the duration.Card requiredSome details unclear | The trial-period deadline is likely to arrive before a $5 Nanode consumes $100, but the current duration is unpublished. | Nanode 1 GB: $5/month |
| Civo$250 free creditView offerCompare plans | Does not sleepVendor conflict: 31 calendar days versus end of the following month.Card requiredSome details unclear | The expiry clock arrives before a $0.00744 per hour xSmall instance consumes $250. | xSmall Compute: $0.01/hour |
| VultrCampaign-dependent promotional creditView offerCompare plans | Does not sleepCampaign-dependent credit is valid for up to 30 days.Card requiredSome details unclear | Day 30 is the only campaign-independent numeric boundary. | Cloud Compute: price depends on usage |
| Kamatera30-day free trialView offerCompare plans | Does not sleep$100 credit expires after 30 days.Card required | The 30-day deadline arrives before one $4 Basic server consumes $100. | Basic: $4/month |
11 familiar names that do not qualify as a current free offer
| Provider | Why it is not listed above | Official source |
|---|---|---|
| HerokuFree dynos | Free dynos were withdrawn on 2022-11-28. A paid Eco dyno is not a current free web-hosting offer. | Check source |
| Platform.shLegacy free trial identity | Current Platform.sh support routes the offer to Upsun. Upsun is represented once under its current identity. | Check source |
| Alibaba CloudProduct free trials | The current row is a product-dependent trial catalog and does not identify one currently available public web-runtime SKU. A generic account trial cannot pass the runtime predicate. | Check source |
| IBM CloudLite plans | The represented row is a generic Lite-services catalog, not a specific deployable public web runtime. | Check source |
| CloudflareR2 Free allocation | R2 is object storage. The represented free allocation does not execute or publish a web application by itself. | Check source |
| GlitchProject hosting | Glitch shut project hosting on 2025-07-08 and no paid hosting escape remains. | Check source |
| SupabaseFree | The represented row is managed Postgres and adjacent backend services, not a complete web deployment product. | Check source |
| NeonFree | The represented row is serverless Postgres, not a public web application runtime. | Check source |
| Adaptable | The domain and known documentation host did not resolve. Withdrawal is possible but not proven, so every eligibility fact remains unknown. | Source link not available |
| QoveryCurrent platform trial | Qovery is a control plane on the buyer's AWS, Google Cloud, Azure, or Scaleway account. The trial does not prove that runtime infrastructure is included at no charge. | Check source |
| Cloud 66Free | The Free plan is a deployment control plane. Customer-owned server or cloud infrastructure is billable separately. | Check source |
Working comparison
Match the offer to your workload
| Workload | Start with | Verify |
|---|---|---|
| Static site | Static edge hosting | Build and bandwidth allowance |
| Sleeping demo API | Credit or sleep-based runtime | Wake time and persistent state |
| Always-on app | Paid runtime floor | Database, egress, support, recovery |
Decision test
What changes the answer
- 01Separate static delivery from server runtime.
- 02Keep the database and persistent files in the same cost model.
- 03Test build minutes, bandwidth, sleep, and custom-domain rules.
- 04Record the export path before data or platform features create lock-in.
Shareable result receipt
Fixed for this page: the same formula, assumptions and sources every visitor sees.
Static assets fit durable free hosting best. Dynamic demos can fit sleep-based or credit-based runtimes. An always-on application with persistent state should be modeled at its paid floor from the start.
Formula
Durable monthly cost = runtime floor + database + storage + transfer + operations labor after temporary credits
Assumptions
- One custom domain
- No paid support
Explicit unknowns
- Offer continuity
- Traffic growth
- Build and bandwidth profile
Sources and freshness
- Provider source links in the deployment dataset retrieved 2026-07-25