Hi Bubble community,
I have been optimizing my app recently and ran into what I think is a major issue in Bubble.
As far as I can see, every plugin installed in an app that includes code in its HTML header is loaded on every page, whether that page actually uses an element from that plugin or not.
In my case, one plugin was loading several fairly heavy libraries, and this was noticeably slowing down my landing pages, even though that plugin was not being used there at all.
So far, the only solutions I have found are all pretty bad:
- Remove the plugin and replace it with another one that does not load those libraries
- Remove the plugin and rebuild the functionality in a completely different way
- Fork the plugin, since it is free, create a second version myself, and modify how the library loads so it does not load on landing page URLs
That last option works, but honestly it feels quite hacky for a platform like Bubble.
So I want to make a request to the Bubble team, in case anyone from Bubble reads this: would it be possible to introduce some kind of control over where plugin headers are loaded?
Even a simple solution would help a lot. For example, in the Plugins tab, each plugin could have a page-level exclusion setting, maybe something like a multi-select dropdown where we can choose the pages where that plugin should not load at all. On those pages, none of the plugin header code would run.
That alone would already make a big difference for performance.
Right now, plugin developers have a lot of freedom in how they implement things, and that is fine. But users who build apps with those plugins should also have some control over how those plugins affect performance across the rest of the application.
Sometimes a plugin is essential for one specific feature on one specific page, but I definitely do not want its scripts and heavy libraries loading across every landing page or every other page in the app.
This does not feel like it should be especially difficult for Bubble to implement, and I am sure there are people in the community who would even be happy to help think through a good approach.
I would love to hear what others think about this. And if someone from the Bubble team sees this, I would really appreciate a response, even if it is just some feedback on whether this is being considered.

