Software

Laravel Cloud Scale to Zero: What an Idle App Costs

By · Sat Oct 10 2026 · 10 min read · 0 views

View as a Web Story

Software#Laravel#laravel-cloud#hosting#pricing#scale-to-zero

Dollar circle hero showing an idle Laravel Cloud app costing about five dollars a month

A mostly idle Laravel app on Laravel Cloud's Starter plan bills about $5 a month, and the compute behind four awake hours is roughly 4 cents. Scale to zero removes the cost of idle compute. It does not remove the plan fee, and it does not touch database storage.

This post works out the real pricing from Laravel's published per-second rates, shows where the monthly cap flattens the curve, and explains how a plan fee interacts with the $5 usage credit. It also covers the quiet reasons an app never goes to sleep, which decide whether scale to zero saves you anything at all.

What is scale to zero on Laravel Cloud?

Scale to zero is a Laravel Cloud feature that pauses your app's compute, database and cache when nobody is using them, then wakes them together on the next request. Laravel Cloud is Laravel's managed hosting platform for PHP apps, billed by usage on top of a monthly plan fee.

According to Laravel's announcement from June 1, 2026, the rebuilt Flex compute class wakes the whole stack in under 500 milliseconds, which Laravel says is 20 times faster than the old version. The old implementation took about 10 seconds to wake, and databases and cache had to stay running. Scheduled tasks still fire and queue workers keep processing, because either one wakes the app when it has work.

Scale to zero costs $1 more per month than the legacy Flex options, which keep the 10 second wake-up delay. Laravel says new apps get the new behavior automatically. MySQL gained scale to zero for Flex compute as of July 20, and the Laracon US recap says the idle window can be set from one minute to one hour.

What do the Laravel Cloud plans cost?

The plans cost $5, $20 and $200 a month plus usage, and each paid plan includes $5 of monthly usage credit. The pricing page lists the plans and what each one unlocks.

Plan Monthly fee Max compute Autoscaling Managed queues.
Starter $5, first month free Flex, up to 2 GiB 1 replica 1 per environment.
Growth $20 Flex and Pro, up to 32 GiB Up to 10 replicas 10 per environment.
Business $200 Flex and Pro, up to 32 GiB Unlimited and scheduled Unlimited.

Starter also caps you at 10 custom domains, 1 preview environment and one day of log retention. Growth raises those to 50 domains, unlimited previews and 7 days of logs. Enterprise is custom pricing.

One small inconsistency is worth knowing about. Laravel's launch post says Starter compute goes "up to 1 GB", while the current pricing page says Flex up to 2 GiB. The pricing page is newer, so I used it.

How much does compute cost per awake hour?

Compute costs between about 0.9 and 3.6 cents per awake hour on the Flex sizes, charged per second. Laravel's pricing page publishes a per-second rate and a monthly cap for each size, so the math is exact. Here is what I computed.

Flex size Per second Per hour Monthly cap Cap reached at.
512 MiB $0.00000248016 $0.0089 $6.00 672 hours.
1 GiB $0.00000496032 $0.0179 $12.00 672 hours.
2 GiB $0.00000992063 $0.0357 $24.00 672 hours.

All three sizes hit their cap at exactly 672 awake hours, which is 28 days. A 30-day month has 720 hours, so an always-on app pays the cap and not the full per-second total. That also means scale to zero saves you nothing once your app is awake more than 28 days a month.

Advertisement

Below that line, the savings are large. A 512 MiB app awake for 4 hours costs $0.04 of compute. At 60 hours it costs $0.54, at 240 hours $2.14, and at 480 hours $4.29. Against the $6 cap that is about one eleventh of the always-on price at 60 hours and about a third at 240 hours.

Chart of monthly Flex compute cost against awake hours for three sizes with the monthly cap marked

What do the four pricing page scenarios cost?

The pricing page estimates $0.39, $6.23, $34.29 and $176.00 a month for four sample apps. Those are usage estimates, and the plan fee comes on top of them. The page does not say whether the figures include the fee, but the first one cannot, since $0.39 is below the $5 Starter price.

Scenario Awake hours Resources Page estimate.
Pub quiz tracker 4 Flex 512, Postgres 0.5 GB $0.39.
Personal blog 60 Flex 512, Postgres 5 GB, Valkey 250 MB, 1 worker $6.23.
SaaS MVP 240 Flex 2 GiB, MySQL 20 GB, Valkey 1 GB, 2 workers $34.29.
Production shop 720 Pro 4 GiB, 40 GB, Valkey 2.5 GB, 2 Pro workers $176.00.

My arithmetic below is a reading of the published rules, not a quote from an invoice, so check it against your own bill. Laravel says every paid plan includes $5 of monthly credit drawn from a single pool covering compute, database, cache, storage, bandwidth and queue operations. If the pool works as described, a bill is the plan fee plus any usage above $5.

Scenario Plan it needs My estimated bill.
Pub quiz tracker Starter $5.00.
Personal blog Starter $6.23.
SaaS MVP Probably Growth, for worker clusters $49.29.
Production shop Growth, for Pro compute $191.00.

Two things stand out. First, on Starter the bill is the larger of $5 and your usage, because the credit absorbs the first $5 of usage. A tiny app costs exactly $5 and a $6 app costs $6. Second, the larger two scenarios need Growth or better, since the page lists worker clusters and Pro compute as Growth features. I am inferring that the SaaS scenario's workers count as worker clusters, so it may fit Starter if they are managed queue workers. The page shows only the usage side of those numbers, so the $20 fee is an extra the estimator does not display.

Chart comparing the four pricing page estimates with my estimated monthly bill including plan fee and credit

What keeps a Laravel app awake?

Anything that sends a request or fires a job keeps the app awake, and that includes things you set up yourself, such as monitors and cron pings. Scale to zero only helps if the app is quiet in the real sense. Laravel's announcement says scheduled tasks and queue workers wake the app when they need handling, so these are the usual suspects.

  • The scheduler. Laravel's scheduler is normally triggered every minute. If you have a task registered with everyMinute(), the app wakes sixty times an hour. Run php artisan schedule:list and look at the frequencies.
  • Uptime monitors. For example, a ping every five minutes is a request every five minutes. Whether each one resets the idle window depends on your configured window, which can be from one minute to one hour.
  • Queue workers with steady traffic. Managed queues scale their workers to zero when the queue is empty, per the Laracon recap, but a job every few minutes keeps waking them.
  • Bots and crawlers. A public site gets hit constantly. Check your access logs for a week before you trust a 4 hour estimate. Consider a documentation site that a search crawler visits every few hours: it will be awake far more than the owner thinks.

I have not measured wake behavior on a live Cloud app, so I cannot tell you how many minutes of idle a ping resets. The safe move is to measure your own awake hours on the usage page, which Laravel says shows a to-the-hour breakdown by app and resource. Then compare with the compute curve above.

When should you pick Starter, and when Growth?

Pick Starter for anything small enough to live inside Flex at 2 GiB, one replica and one managed queue. Move to Growth when you hit a hard feature wall, not when traffic grows a little. The walls from the pricing page are these:

  1. You need more than 2 GiB of RAM per instance or Pro compute.
  2. You need more than one replica for autoscaling.
  3. You need worker clusters or more than one managed queue per environment.
  4. You need more than 10 custom domains or more than one preview environment.
  5. You need more than one day of logs.

The $15 difference between Starter and Growth is real money for a hobby project and trivial for a business with customers. For a side project, the bill math above says that you will probably pay $5 or $6 on Starter, and the spending limit turns that into a hard ceiling. Laravel's two pages describe the limit slightly differently. The launch post says it stops new resource provisioning at the cap. It alerts at 50, 80, 90 and 100 percent of the threshold. The pricing page FAQ says compute pauses automatically and lists alerts at 50, 80 and 100 percent. Read the billing settings for the current behavior.

Does the region matter for pricing or for privacy?

The pricing page lets you choose a region, including EU Central in Frankfurt, EU West in Ireland and EU West in London. I did not see a price difference in the numbers I extracted, but the page has a region picker, so check it for your choice. For privacy, where your database lives matters if you serve people in the EU. The European Commission's data protection overview is a good starting point. This is a note on location, not legal advice.

How did I work out these numbers?

The methodology is plain arithmetic on published rates, so you can redo it for your own app in a few minutes. I took the per-second rate for each Flex size from the pricing page and multiplied by 3,600 to get an hourly rate. Then I multiplied by your expected awake hours and compared the result with the monthly cap, keeping whichever was lower.

Here is a worked example for a hobby site on Flex 1 GiB that is awake 90 hours a month. The rate is $0.00000496032 per second, which is $0.0179 an hour, so 90 hours costs $1.61. Add a Postgres database and a small cache, and say the whole stack uses $4.00 of usage. The $5 credit absorbs all of it, so the bill is the $5 Starter fee.

A busier example is the blog scenario on the pricing page, which Laravel estimates at $6.23 of usage. After the $5 credit, $1.23 is billed on top of the fee, which lands at $6.23 in total. That coincidence, where the bill equals the usage once usage passes $5, is why I describe Starter as the larger of $5 and your usage.

Use your own usage page for the real inputs. Laravel says it breaks costs down by app and resource to the hour, which is better data than any estimator.

What are the limits of this analysis?

I did not deploy to Laravel Cloud for this post, so no bill here comes from a real account. The per-second rates, caps and plan features come from Laravel's pricing page and posts as I read them in October 2026. The plan-fee arithmetic is mine. Rates change, and the page has been restructured at least once this year, so check it before you commit.

About the author: I build Laravel applications and checked every number in this post against Laravel's published pages and my own arithmetic. If a figure has moved since October 2026, tell me through the contact page and include the link where you saw the new number.

For related reading on background work, see AI Agent Orchestration in Laravel: Queues Before Frameworks. For another cost-driven decision, see Best AI IDE for Laravel: What Each One Costs in 2026.

The bottom line

A quiet Laravel app costs $5 a month on Starter, a busy hobby app costs about its usage, and always-on Flex compute tops out at the cap. Scale to zero helps most between a few hours and about 240 hours awake a month.

Before you move, list your scheduled tasks, your monitors and your queue patterns. They decide your awake hours, and the awake hours decide the bill.

Advertisement

FAQ

How much does an idle Laravel Cloud app cost?

About $5 a month on the Starter plan, because the $5 fee includes $5 of usage credit. Compute for a 512 MiB Flex app awake four hours is about $0.04. Database storage is billed while the app sleeps, but the credit usually absorbs it.

How fast does Laravel Cloud wake from scale to zero?

Laravel says the rebuilt Flex compute wakes the whole stack, compute, database and cache, in under 500 milliseconds, about 20 times faster than before. The legacy Flex option keeps a wake-up delay of about 10 seconds and costs $1 less per month.

What keeps a Laravel Cloud app from scaling to zero?

Anything that sends a request or fires a job: an every-minute scheduled task, an uptime monitor, bots and crawlers, or a steady queue. Laravel says scheduled tasks and queue workers wake the app. Check the usage page for real awake hours.

When do I need the Growth plan instead of Starter?

When you need Pro compute or more than 2 GiB of RAM, autoscaling beyond one replica, worker clusters, more than one managed queue, more than 10 custom domains, more than one preview environment, or more than one day of logs.

Comments

Loading…

Sign in to join the conversation.

Related posts

Terminal prompt hero for Laravel LSP setup in Neovim and what it skips

Laravel LSP in Neovim: Setup and What It Skips

Laravel LSP gives any editor that speaks the Language Server Protocol the same Laravel autocomplete that VS Code users already had. I installed version 0.0.32 and drove it with a protocol client

Sat Oct 10 2026 · 10 min read · 0 views

Software

Shield hero showing Laravel 13.30 as the version that fixes CVE-2026-102279

Laravel CVE-2026-102279: Which Version Fixes It?

Laravel 13.30.0 and Laravel 12.69.0 fix CVE-2026-102279, a cross-site scripting bug in the exception debug page. Those same two versions also contain the fixes for the two other Laravel framework

Sat Oct 10 2026 · 10 min read · 0 views

Software