An Update to Workload, Plus More Transparent Calculations

Hi all, following up with a few quick updates and some answers to a few of the questions:

  • The pie chart now shows both % and absolute WU. Thanks to the couple people who made that suggestion!
  • You can see WU usage by your workflows in the Logs tab now
  • Re: the reports of “Deleted” pages showing up in the pie chart, as people on this thread correctly surmised, that was coming from visits (probably by crawlers or script kiddies) to pages that didn’t actually exist. We can confirm that we do not use Wordpress as part of Bubble’s primary tech stack! As of this morning, we changed the code such that we don’t count any WU from visiting missing / 404 pages. If you are seeing new data with mysterious pages, please file a bug report. Note that you will see “Deleted” in the case where: a) you had a page, b) someone visited it, and then c) you deleted it afterwards – that was what the “Deleted” indicator was supposed to be about.
  • We are still following up on a few other bug reports about WU calculations, but should have them all fully and investigated and fixed well before we actually make the new plans available on the 1st. All the outstanding issues we are currently investigating are minor and should not make a meaningful difference to your app’s workload computation.

To answer some of the questions:

We plan to add the chart shared in my original post to our documentation, and to keep it up-to-date. The most likely scenario for us making a change would be us adding a brand new feature to Bubble, which would not impact the consumption of existing apps until they start using the new features. We may also choose to reduce WU weights in the future to pass along improvements we make on our end.

I’m passing this feedback along to the team: we’ve been tackling a number of similar quality-of-life improvements lately and always hungry for more to add to the list.

Yes, one of the main goals of the pricing change is to enable us to hire engineers faster! We would like to be roughly doubling the size of the engineering team each year for the next couple years. Right now, each one of our engineering teams is stretched very thin across a wide surface area, which limits the number of improvements we can make in parallel. As we hire more people, it frees us up to move faster, including on improving our scaling and our geographic hosting.

That’s a good suggestion, I’ll pass it along to our design team

This is a really interesting point; thanks for bringing it up. After this morning’s updates, which were driven by investigation into use cases reported to us by the community, we’ve adjusted the weights from the original regression, so I am not sure going back and trying a geometric mean would be a net improvement on what we just released. Also, while we are aware that infrastructure usage follows a power-law distribution across different applications, our analysis was more narrow: we were looking specifically at the relationship between different activities and the time it takes our code to run a single execution thread containing those activities. That relationship has more to do with the implementation details of our code than general principles about computation: you can write code with any kind of relationship between its inputs and its execution time (ie with different big-O values). In practice, we found that a linear regression performed fairly well against the code we were analyzing. Very fair question though!

Front-end actions do not consume workload (although reloading a page sometimes involves hitting the backend). For the Bubble power users out there, an easy way to tell if something is purely frontend is opening the network tab of your browser and seeing if it kicks off a new request to the server – if no new requests, it is frontend only.

They do count, so I do not anticipate this being a cost savings.

On our list!

Thanks for the feedback – we’ve been taking a look at our url structures and will likely make changes to make them more efficient and usable

Look out for an announcement related to this coming very soon!

This a good suggestion. Our goal is actually to have better ways of manipulating data than recursive API workflows (which are not intuitive and easy to make mistakes with). We are looking into building the equivalent of “for” loops, as well as efficient bulk data transformations.

No difference. When you have a “Make change to thing” on the frontend, we simultaneously execute it on the frontend so that the browser updates immediately, while also executing it on the backend (to update the database). The frontend execution does not consume WU, the backend does, so it is equivalent to a backend workflow. In practice, though, running a backend workflow generally involves an additional action to schedule it, which would cost additional WU, so a frontend workflow is the way to go if there isn’t a specific reason to use a backend workflow.

Each month. I updated the original post to make it clearer.

Thanks for the suggestions! We’ve built emails and in-editor alerting as your app approaches its max WU consumption, and the ability to cap WU spend if you do not want to incur overages. I like the idea of being able to customize the alerts and to use a webhook, passing the ideas along to the team. I’ll also pass along the idea of accessing the data to supplement / replace 3rd party analytics tools.

The charts still work as-is, actually. The way to think about the free Development WU on paid plans is to not count it when calculating your total WU. We are going to update the display in the editor to do that automatically; it will show you the Development WU used, but will show a total with the free Dev WU automatically subtracted. That said, check out the calculator we released – it is much easier to use that then the break-even charts!

Yes, exactly. To give a concrete example, if you are on the Starter plan, and one month you use 100K Live WU, and 120K Dev WU, your total is 100K + (120K - 100K) = 120K, which is below the 175K Starter plan limit.

This is on our design team’s radar!

Anything that does not result in a request to the Bubble server (as seen in our network tab) won’t consume WU

We de-bounce auto-binding, meaning that we wait for the user to finish typing before updating the server.

Only actual page refreshes that load the whole page HTML from scratch consume WU. Updating the URL on a single-page app will not consume WU.

The only API calls that consume WU are ones explicitly created by the user, not backend ones that Bubble does to support our geolocation and maps features. That said, I am going to double-check to make sure that we are not counting that workload.

This is on our list of things to improve to make Bubble faster and more performant. Today, though, Bubble does fetch the entire record

70 Likes