Overview
Bubble.io apps work a bit differently from other upstreams, and a few problems come up again and again. This article covers them. If you haven't set up your Bubble app yet, start with Bubble.io Custom Domains & Whitelabelling.
403 Forbidden, Cloudflare error 1015, or a blank page for a minute or two
Bubble runs its apps behind Cloudflare. All your custom domains reach Bubble from a shared pool of our proxy IP addresses, and every now and then Cloudflare treats that traffic as suspicious and blocks it for a short time. Visitors then see a 403, a Cloudflare 1015 "rate limited" page, or a blank page, usually for a minute or two.
Our proxies don't return 403 unless one of your own Rules does. If the error page or its response headers mention Cloudflare (
server: cloudflare,cf-ray), it came from Bubble's side.When we detect this, we switch our proxies to fresh IP addresses automatically.
If it keeps happening, message us with the domain, the time it happened (with timezone), and a screenshot of the response headers from your browser's Network tab.
Rules on your upstream that you didn't create
Bot traffic is a big part of what makes Bubble's Cloudflare block requests. To cut it down, we added upstream rules to Bubble upstreams that block bots your app doesn't need, while search engines like Googlebot and social preview bots still get through. You'll see them on the upstream's Rules tab, and as Inherited upstream rules on each custom domain's Rules tab. We recommend keeping them.
The address bar switches to your Bubble app's domain
Make sure the Bubble.io option is turned on for the upstream. Without it, Bubble redirects visitors to your app's own domain.
Use your app's live domain as the upstream host, for example app.myproduct.com, rather than the bubbleapps.io address.
Check you don't have a URL redirect or Redirect rule for the same domain.
The custom domain shows the wrong page
Set the Bubble Target Path to the page that should load as the domain's homepage, for example /stores/client. You can change it any time on the domain's Bubble Settings tab. See Bubble Settings.
The target path can't include query parameters (anything after ?).
Rules that work differently on Bubble
Rewrite rules don't work reliably with Bubble upstreams. Use the Bubble Target Path or a Redirect rule instead.
robots.txt, sitemap.xml or llms.txt per domain: create a domain rule with a Path matcher (for example, path is
/robots.txt) and a Static Response handler with the file's contents.Page title, description, favicon and social image per domain are set on the Bubble Settings tab. We serve them in the page itself, so search engines and link previews see them.
Changes don't show up
After you change a domain or its settings, our proxies pick up the change within a minute or two. Browsers, Chrome especially, can keep showing the old page for a while. Try a private window or another browser before digging further.
Until next time, keep building!
Need more help? Reach out via the Intercom chat widget and we'll be right with you!