
What Bubble's workload units actually cost at scale
Bubble bills your app by the work it does, in a unit called the workload unit. Writing one record costs 0.5 WU. A database search costs 0.3 WU to start, plus 0.015 for every record it hands back. A server-side workflow action costs 0.6. The Starter plan on annual billing is $29 a month for web, and when you burn through the workload it includes, overages run $0.30 per 1,000 units. Those numbers come off Bubble's own docs, and none of them are unfair. The problem shows up later, when your bill starts moving with your traffic and you go looking for the thing to fix.
The meter runs on your logic, not your servers
Bubble is explicit about why workload exists. Their docs say a traditional stack forces you to watch CPU, load balancing, bandwidth and latency, so they collapsed all of it into one number. That is a real gift when you are two weeks into an idea. You get one dial instead of a dashboard, and Bubble handles what sits underneath it.
The catch arrives with scale. Bubble lists 12 activity types that generate workload, and the expensive one is writing: 0.5 WU per record created or modified, against 0.1 to delete and 0.015 per record returned from a search. An app that writes a lot burns workload roughly in proportion to how busy it is. Loading a page costs 0.15 WU before your app does anything at all.
Bubble's own guidance points at the same pressure. They warn that a badly configured recursive workflow can exhaust your allocated units in a single operation, and since July 2024 they cap recursive chains at 10 iterations by default on new apps specifically to stop runaway consumption. One of their showcased agencies cut a client app from 6 million units a month to 900,000. The optimisation is real. So is the fact that someone had to be paid to find it.
Where the ladder starts to bite
The published tiers, billed annually, are Starter at $29 a month for web, Growth at $119 and Team at $349. Monthly billing costs more: $32, $134 and $399. Add mobile and Team reaches $549 annual or $649 monthly. When you exceed what your plan includes, you either buy a workload tier for a volume discount or leave flexible overages on at $0.30 per 1,000 units. Bubble emails you at 75% and again at 100%.
You can also turn overages off, and Bubble is candid about what happens next. Their FAQ says that if your app hits the workload limit with overages disabled, it goes offline and you get an email, and it stays down until you buy more workload or the next billing period starts. Both settings are defensible. Neither is the position you want to be choosing between during a launch week.
What makes this hard to manage is not the price. It is that workload is an aggregate of 12 activity types, and your lever is rewriting app logic inside the editor rather than tuning a query plan or adding an index. On Postgres, a slow endpoint gets an EXPLAIN and a fix you can test. Here you get a pie chart in App Metrics, a drill-down to the expression, and a rebuild.
What the alternative actually looked like
We moved Stay World Class off Webflow and Xano onto Next.js, NestJS and Supabase. The interesting part was the data: a four stage ETL that mapped every legacy ID onto a PostgreSQL UUID so nothing lost its history in the move. Lighthouse went from 55.91 to 91 out of 100 and LCP came down 77%.
The cost profile changes shape more than it changes size. Hosting becomes a number you can predict from your own instance sizes, and a slow query becomes a thing you profile and index rather than a thing you redesign around. You trade a metered bill for engineering time, which is only a good trade once your usage is big enough that the meter costs more than the engineer.
That threshold is worth calculating rather than guessing. If you are paying $349 a month plus a workload tier and an agency retainer to keep consumption down, the arithmetic has probably already turned. If you are on Starter and comfortably inside your included units, it has not.
When staying on Bubble is the right answer
If your workload sits inside your plan and has been flat for months, migrating buys you nothing. Bubble is telling the truth when it says most apps never need a workload tier. An internal tool with 30 users, a booking flow, a marketplace still finding its shape: all of these are cheaper and faster to run on Bubble than on anything you would build yourself.
The signal to watch is not the size of the bill, it is whether you can predict it. When you can no longer forecast next month's workload from this month's, and when the fix for a slow screen is a redesign instead of an index, the platform has stopped absorbing complexity for you and started charging you to route around it. Until then, staying put is the cheaper answer and there is no prize for leaving early.
