Any example of SEO success built on Bubble?

Hi fellow builders on Bubble,

Quick question I had as I continue to use Does any of you know of an example website built on that did well on SEO? It seems Bubble in general may not be the best solution for SEO on Google, but I wonder whether there’s any counterexample to the belief, especially given the SEO updates Bubble introduced in the past couple of years.


This was one of the main issues with Wordpress in the early days. I guess Bubble will focus more on this part soon.

1 Like

There’s more to SEO than just URLs, of course, but here is some early testing on the SEO potential of Sudsy Page.


Here’s our site built on bubble: It’s a simple food blog with about 400+ vegetarian recipes, some contributed by the community, but a majority of the content is written by us.

We get about 50k page views every month primarily from Google Search (About 75%) and remaining from Pinterest, Facebook, etc.

Bubble does provide various ways to manage and optimise for SEO (dynamic sitemaps, SEO metadata, keywords, etc). But there are still quite a lot of external factors like backlinks, authority, content, etc that will ultimately determine whether you succeed or not.

In my experience, the only significant challenge with Bubble and SEO is that the whole platform is Javascript based, which makes it resource intensive for the GoogleBot to render and then index content. Even though bubble use pre-rendering solutions at the backend, it would take some time for your content to be initially discovered (for a new site). Google’s way of crawling a Javascript site is improved significantly in the last couple of years, but it would always trail a standard HTML + CSS based static site.

Out site is live for several years, and if we post a new recipe now, it is indexed within a few hours or a day. Whether it ranks on Page 1 of Google, is a complete different question.

Hope this helps.


I’ll add my experience too, from being involved in setting up an e-commerce site that relies heavily on SEO. Bubble is not bad for SEO at all, but if you are used to Wordpress, it does take more work (sometimes a lot more) to achieve the same things. Here are some things worth thinking about:

  • Bubble doesn’t support full dynamic URL’s out of the box (i.e. folders), so you’ll be stuck with We needed a deeper structure than that, and had to resort to some more complex URL manipulation using plugins/Javascript.
  • Populating Meta fields (Title/Description) can be very easy if you’re using Bubble the way it’s set up (using Page Things for example), but quickly becomes increasingly difficult the second you need a different approach (such as loading the page content through some other means than Page Thing). Before settling in Bubble, I really recommend getting to know how these fields work, and the limitations they have, because they may surprise you. We discovered those limitations late in our project, and had to get Bubble to introduce a whole new feature (Do a Search for) in this field to be able to launch at all. Luckily, they fixed that for us, but still this field can be very easy or very difficult to work with, depending on your app setup.
  • I’ve also experienced Bubble’s JavaScript rendering approach to sometimes cause some issues with indexing, especially on «heavy» pages. We would sometimes discover that Google wouldn’t read the meta fields properly, but instead pick some random text from the page and use it as page description. Most issues can be fixed, but again, it won’t always work out of the box, as is the case with Wordpress, etc.
  • One page apps do not always play nice with Google

All in all, I’m a pretty big proponent for Bubble, but it definitely needs work on the SEO part. It’s not that it can’t deliver, it’s just that the road to get there can be bumpy as hell.


@paritosh.mehta19 Hi and thank you for sharing your experience. Do you mean that Google will anyway index all pages even the URL links are not dynamic : ?

Yes. Google does crawl the dynamic links and indexes them. Whether it’s just in the form of a slug or the old way with uid at the end of the URL, if its a valid link that Google is seeing anywhere in the app, it will crawl it. Based on the content, it might ignore to index it, and in case it is indexed, it may or may not rank it in search results.


Bubble is pretty good so far, but on the SEO part, I think it needs a little bit of work, as there are these big companies out there that do such good jobs, that I’m not sure Bubble is competing with them so far. For example, I opened an online make-up reseller shop that kind of struggled in the beginning. What I did was save up a bit to afford to invest in good quality SEO that I knew was guaranteed to boost my site. I’m not sure I would have invested if I didn’t know for sure it would be a sure boost in the rank. I used this amazing company about which I’m inviting you to find more as it may interest your business.

1 Like

[Found answers to my post… edited to include them now…]

I had a couple of quick questions regarding slugs, setup and SEO. Your site seems set up correctly so I wondered if you could give me some pointers.

If you have a home page of post summaries, and want the user to click on the summary and go to a page with the full post, Bubble says to set up a different page that will be used to display the full post and to pass the “post” to that page when navigating to it via a workflow.

So, if the list of posts is on, the page with the full post could be And Bubble says to use a worfklow to go from the main page to the post page, with the post’s “thing” being passed along. This will then display as

This raises some basic questions:

  1. Does this setup prevent Google from crawling and indexing the full article pages, because the “links” the user clicks on from the summary page aren’t links, but rather workflows? [Don’t use workflows, use the Link element which will allow you to pass the “post” to the post page. Works the same, is faster, and also creates a link that Google can crawl]
  2. Regarding a sitemap, if I have on the sitemap, if Google indexes it and anyone goes there, the page will be blank, because no post has been passed to that page. [Found the info on Bubble releasing a dynamic sitemap feature, and got it working correctly]
  3. When I check the sitemap for my site, the slug pages aren’t there, presumably because they aren’t dynamic. [have to look at the specific sitemap file for the post page, and the slug pages are listed, per Bubble’s reference info]
  4. Separately, I’d rather just have, not How is this accomplished? [No idea, but not very important at the moment.]

Can you share some screen shots of the improvements this company made for you?

1 Like

Hi @ed727

Sorry, I just saw your reply now and yes the answers you have written are correct. Some additional notes below in reference to each points.

  1. Use link elements where ever you want Google to crawl. What works best for me, is to use the link element on the title, but also add a workflow on the whole group, so that if a user clicks anywhere on the group, it still navigates to the corresponding page.
  2. Yes, for on the sitemap, it would be blank and even if Google indexes it, it won’t rank. So, it isn’t a problem as users won’t reach this page without the actual content URL.
  3. I think you can just follow the dynamic sitemaps feature and set it up.
  4. I wouldn’t advice doing The reason is, for instance we have 400+ recipes on our site. This would mean me creating 400 pages in Bubble. Moreover, if I need to make some changes to the pages, I would need to do it on many pages (this could be simplified with reusable elements to some extent), but would still not be efficient from management perspective. By setting it up as, it’s just one page that dynamically renders the 400+ individual posts. Secondly, for adding new posts, you would need to publish the app each time if it’s a new page, where as if it’s just on the one page, it’s a matter of creating new data entry. Each time you publish the benefits of caching, etc would be lost.

Hopefully, this helps. Let me know if you require any further clarifications.


Fantastic, thanks so much for the response and helpful information! I feel much more comfortable about the approach now.

All companies are different, so SEO will be much more effective for some companies. For others, digital marketing will do. These two ways of promotion should interact for a successful result. Thanks to the development of the Internet, advertising and marketing, in general, have undergone tremendous changes. Every day there are new services that do content writing or can develop a promotion strategy for you. In the free competition market, the company that is more successful in advertising wins.

What is more effective SEO or digital marketing?

Seo is part of digital marketing… And it depends on your niche, app, website verticals how long an seo strategy will take.

A bit late to the party…
Short answer: SEO if you want long term results, Ads (if that’s what you mean by digital marketing) if you need quick results. The best being a combination of both.

Hi @petter , coming back at this a few years later. You mentioned that by resorting to plugins/JavaScript you were able to achieve a subfolder structure? Were you able to achieve that using separate pages in Bubble (as opposed to SPA approach with show/hide conditionals + a plugin like Sudsy)?

I’m in desperate need of being able to have something like: for SEO purposes and I don’t really fancy the SPA workarounds as it’ll probably affect (even further) the poor native performance of Bubble when it comes to load speeds.

You can not get around that on the initial page load…but subsequent changes through use of the go to page action and changing parameters or url path list do not reload the page, so if everything is setup properly, the changes would be near instantaneous.

For your url structure, you’d want to use the send data to page input and structure the data as you want your url path list structured. This poses other challenges, which are not insurmountable, around how do you really get great SEO through use of structured data etc.

My main concern is precisely the initial page load, which may (or may not) be what the Google Crawlers take as a reference to asses a page’s performance.

Regarding the URL structure, I think it’s really far from ideal. For a site whose success mainly depends on how well it’s ranked on Google, you’d probably expect it to have quite a lot of different pages using a SEO-fiendly architecture (using several levels of subfolders). If I have to slot in, let’s say, 50 different articles within a page with some of them having slightly different layouts (plus their responsive configurations), that’s going to result in a huge mess of a page in my opinion, not to mention the additional overhead it will add to the initial page load times.

For the structured data markup I know you can probably get away by using dynamic parameters as it’s been shown somewhere else in the forum (see below), so that’s not much of a concern …

I’m not a 100% sure what your last post was about, whether it was asking a question or making statements on how you might anticipate problems.

You have to remember, that your bubble web app is a javascript based site. The dynamic content needs to be loaded via a server request, which obviously takes some time, and more than what a simple html site would require since the html site would have content loaded on initial page load.

The way you setup your SPA is going to largely determine the amount of time it takes for content to get loaded and therefore how long your initial page load is. Normally, the main benefit of using an SPA approach is for the purposes of building a webapp that you intend to wrap for the purposes of submitting to an app store, and even then, the ability to have your bubble webapp wrapped, does not necessitate the use of a SPA (based on answers provided by 3 different wrapping service providers).

If, I were building an app that would require SEO and I would be needing good SEO for more than just one type of content (in your screen shot you only show structured data for products so I can not assume you need more than one, but many developers would), I would definitely not be building it as an SPA since the need for on page SEO, like the structured data in header and page title/meta description and images for social sharing would require inline conditionals, the likes of which could end up slowing down the speed at which those inline conditionals are evaluated and causing Google crawlers to leave the page before any content is loaded. If, you only require one type of content, such as products only, to be used for SEO, then you can use an SPA approach, but you need to know everything there is about how to improve your page load speed for an SPA.

In my multi language site in which I have product page, blog and jobs, I have a page for ‘shop’ (product search results and selected product are on the same page), page for ‘blog’ (all categories are displayed as well as a selected blog article on the same page…meaning can be .com/blog/en/home or .com/blog/th/home or .com/blog/en/how-to-do-seo or .com/blog/th/how-to-do-seo) as well as one page for ‘jobs’ which again like the page for products is used to display the job search as well as selected job so url can be .com/jobs/en (shows search results) as well as .com/jobs/en/construction-manager-pepsi-co and the same for the ‘th’ versions.

In my site I have structured data setup for the selected product, blog post or job, as well as for the product search, blog categories and job search…I needed to use inline conditionals to determine 1st, what language, 2nd, is there a selected product, article or job.

The way that I set things up, my site SEO data is picked up by Google properly.

Not if done properly. I am confused by your use of the word article as for me that is referencing a blog post article, but based on the description of your worry/confusion, I would assume you might be using the word article to reference different ‘pages’ within an SPA. If however, you are using the word article correctly, and used a screen shot of structured data of product rather than blog post, then you would need to also understand how to setup your blog to have a variable design. I have a blog builder that allows me to structure each article differently.

If you are using the word article to refer to different ‘pages’ within an SPA, you need to use an approach I have discussed on the forum as have other experts, where the approach is to build each ‘page’ as a reusable element, and then place them onto the index page of your SPA…then you need to setup the conditionals to only have the data load that is necessary for the current ‘page’ the user is on.

When done right, there is no huge mess of a page and no additional overhead added to an initial page load.

It should be for you if you expect to build an SPA and use the content type of the page so you can use the dynamic expression of current pages thing in your structured data. If you are building a sophisticated app that is to be an SPA and have more than one type of data needed for SEO, you can not use the page content type and therefore would not have the current pages thing as an available expression for setting your structured data. Additionally, in my app that I mentioned having product search and selected product on the same page, I can not use the content type, nor can you use content type when using multiple languages the way I have where I put the language code in the url path list as .com/blog/en or .com/shop/en