Bubble Docs
  • Introduction
  • New? Start Here
  • What is Bubble?
  • The Glossary
  • User manual
    • Getting started
      • What is Bubble?
      • Building your first app
        • Planning features
        • Database structure
        • Design and UX
        • eCommerce and payments
          • Shopping cart
          • Checkout page
          • One-time payments
          • Subscriptions
          • Marketplace
      • Creating and managing apps
      • The Bubble editor
        • Tabs and sections
          • Design tab
            • The element tree
            • The property editor
          • Workflow tab
          • Data tab
          • Styles tab
          • Plugins tab
          • Settings tab
            • Application settings
              • Custom headers/body
              • Visual settings
              • Social media sharing
              • Translating your app
              • Email settings
              • Collaboration
            • Custom domain and DNS
          • Logs tab
        • Tools
          • Key features
          • The search tool
          • The Issue Checker
          • The element tree
          • The element property editor
          • The debugger
          • Notes
        • Previewing your app
      • Transitioning to Bubble from...
        • JavaScript
        • HTML and CSS
        • SQL
    • Design
      • Elements
        • The element hierarchy
          • The element tree
        • The page
        • Containers
          • Groups
          • Repeating groups
          • Table elements
          • Popups
          • Floating groups
          • Group focus
        • Visual elements
        • Input forms
          • Text and numbers
          • Dates and time
          • File uploads
          • Selection controls
        • Reusable Elements
      • Styling
        • Color variables
        • Font variables
        • Styles
        • Custom Fonts
      • Responsive design
        • Building responsive pages
        • Legacy articles
          • The Basics (Legacy)
          • Building Responsive Pages (Legacy)
          • Migrating Legacy Pages
          • Tips When Designing (Legacy)
      • Templates
      • The Component Library
      • Importing from Figma
    • Data
      • The database
        • Data types and fields
        • Creating, saving and deleting data
        • Finding data
        • Displaying data
        • Protecting data with privacy rules
        • The database editor
        • Export/import data
          • Exporting data
          • Importing data (CSV)
        • Working with location data
        • Using Algolia
        • Database structure by app type
          • Marketplace Apps
          • Directory & Listings Apps
          • Social Network Apps
          • SaaS Apps
          • Project Management Apps
          • CRM Apps
          • Professional Services Apps
          • On-demand Apps
          • Documentation/ CMS Apps
          • Applicant Tracking System (ATS) Apps
          • Portfolio Apps
          • Gallery Apps
          • Online Store / Ecommerce Apps
          • Blog Apps
          • Messaging App
          • Dashboards
          • Building Block Apps
          • Bubble as a backend
      • Files
      • Images
      • Static data
        • App texts (translations)
        • Option sets
      • Temporary data
        • Custom states
        • URL parameters
      • User accounts
        • Authentication plugins
          • Facebook plugin
          • Fitbit plugin
          • Google plugin
          • Instagram plugin
          • LinkedIn plugin
          • Pinterest plugin
          • Slack plugin
          • Wistia plugin
          • YouTube plugin
        • Cookies set by Bubble
      • Time, dates and time zones
    • Logic
      • The frontend and backend
      • Workflows
        • Events
          • Frontend events
            • Recurring workflows
            • Custom events
          • Backend events
            • Database trigger events
        • Actions
        • API Workflows
      • Dynamic expressions
      • Conditions
      • Navigation
        • Single-page applications (SPA)
        • Multi-page applications
        • Page slugs
    • Workload
      • Understanding workload
        • Activity types
        • The workload calculation
        • Client-side and server-side processing
      • Tracking workload
        • Measuring
          • Using App Metrics
        • Monitoring
          • Workload notifications
          • Infinite recursion protection
      • Optimizing workload
        • Optimization framework
        • Optimization checklist
          • Page load
          • Searches
          • Workflows and actions
          • Backend workflows
        • Agency showcases
          • Minimum Studio
          • Neam
          • Support Dept
    • Security
      • Bubble's security features
      • Planning app security
      • Client-side and server-side
      • Bubble account security
      • App security
      • Page security
      • Database security
      • API security
        • API Connector security
        • Data API security
        • Workflow API security
      • Flusk
        • Overview
        • Flusk plan features
        • Getting started with Flusk
        • Flusk security tools
          • The Issues Explorer
          • Issue details
          • Tools and settings
            • Pages rating
            • Database rating
        • Flusk FAQ
      • Cookies
      • Security checklist
    • Publishing your app
      • Web app
      • Native mobile app
        • Global native mobile settings
        • iOS App Store
        • Google Play Store
        • Publishing FAQ
    • AI
      • Generate apps with AI
        • About AI app generation
      • AI page designer
      • Connect to AI agents
    • Maintenance
      • Collaborators
      • Version control
        • Best practices: Version control
        • Transitioning from the legacy version control
        • Terminology: Version control
        • Version Control (legacy)
      • Commenting
      • Database maintenance
        • Copying the database
        • Restoring database backups
        • Bulk operations
          • Bulk operation methods compared
        • Wiping change history
      • Performance
        • Hard limits
        • Capacity Usage (legacy)
        • Notes on queries
      • SEO
        • Introduction to SEO
        • SEO: App
        • SEO: Page
      • Testing and debugging
        • Introduction to testing and debugging
        • The debugger
        • The server logs
        • Supported browsers
      • API workflow scheduler
    • Integrations
      • API
        • Introduction to APIs
          • What is a RESTful API?
        • The Bubble API
          • Bubble API terminology
          • Authentication
            • How to authenticate
            • No authentication
            • As a User
            • As an admin
          • The Data API
            • Data API Privacy Rules
            • Data API endpoints
            • Data API requests
          • The Workflow API
            • Workflow API privacy rules
            • Workflow API endpoints
            • API workflows
              • Creating API workflows
              • Scheduling API workflows
              • Recursive API workflows
              • API Workflow Scheduler
              • Case: Stripe notifications
        • The API Connector
          • Authentication
          • API Connector security
          • API guides
            • OpenAI
              • Authentication
              • Calls
                • ChatGPT
                  • Chat
            • Google Translate
              • How to setup Google API keys
          • Streaming API
        • API security
        • Plugins that connect to APIs
        • API Glossary
      • Plugins
        • What Plugins Can Do
        • Installing and using Plugins
        • Authentication plugins
        • Special Plugins
      • SQL Database Connector
      • Bubble App Connector
      • WorkOS
        • WorkOS SSO
        • WorkOS API
    • Infrastructure
      • Sub-apps
      • Bubble release tiers
      • Hosting and scaling
        • How Bubble hosting works
        • Scaling with Bubble
        • CDN (Cloudflare)
        • Bubble app names
        • Domain and DNS
      • Compliance
        • GDPR
        • SOC 2 Type II
        • HIPAA
        • Other frameworks and standards
    • Bubble for Enterprise
      • Hosting and infrastructure
        • Dedicated instance
          • The Dedicated editor experience
          • Technical specs
          • Main cluster dependencies
          • Customizable options
          • Migration process
            • Pre-migration
            • During migration
            • Post-migration
      • Security and compliance
        • Single sign-on (SSO)
        • GDPR
        • SOC 2 Type II
        • HIPAA
        • Other frameworks
        • Bubble's security features
      • Admin and collaboration
      • Priority support
      • Billing and Payment Guideline for Dedicated Instances
  • Core Reference
    • Using the core reference
    • Bubble's Interface
      • Design tab
      • Design tab (Legacy)
      • Workflow tab
      • Data tab
      • Styles tab
      • Styles tab (Legacy)
      • Plugins tab
      • Settings tab
      • Logs tab
      • Template tab
      • Toolbar
      • Top and context menu options
      • Deployment and version control
        • Deployment & Version Control Dropdown (legacy)
      • Notes
    • Elements
      • General properties
      • General properties (Legacy)
      • Styling properties
      • Styling Properties (Legacy)
      • Responsive Properties
      • Responsive Properties (Legacy)
      • Conditional formatting
      • States
      • Page Element
        • Page Element (Legacy)
      • Visual Elements
      • Containers
      • Container Layout Types
      • Containers (Legacy)
      • Input Forms
      • Reusable Elements
      • Element Templates (legacy)
    • Workflows
    • Events
      • General events
      • Element events
      • Custom events
      • Recurring event
      • Database trigger event
    • Actions
      • Account
      • Navigation
      • Data (things)
      • Email
      • Element
      • Custom
    • Data
      • Data Sources
      • Operators and comparisons
      • Search
      • Privacy
    • Styles
    • API
      • The Bubble API
        • The Data API
          • Authentication
          • Data API endpoints
          • Data API requests
        • The Workflow API
      • The API Connector
        • Authentication
        • Adding calls
    • Bubble-made Plugins
      • AddtoAny Share Buttons
      • Airtable
      • API Connector
      • Blockspring
      • Box
      • Braintree
      • Bubble App Connector
      • Chart.js
      • Circle Music Player
      • Draggable Elements
      • Dropzone
      • Facebook
      • Fitbit
      • Full Calendar
      • Google
      • Google Analytics
      • Google Optimize
      • Google Places
      • Ionic Elements
      • iTunes
      • Slidebar Menu
      • LinkedIn
      • Localize Translation
      • Mixpanel
      • Mouse & Keyboard Interactions
      • Multiselect Dropdown
      • Progress Bar
      • Rich Text Editor
      • Rich Text Editor (Legacy)
      • Screenshotlayer
      • SelectPDF
      • Slack
      • Segment
      • Slick Slideshow
      • SQL Database Connector
      • Star Rating
      • Stripe
      • Tinder-like Element
      • Twitter
      • YouTube
      • Zapier
    • Application Settings
      • App plan
      • General
      • Domain / email
      • Languages
      • SEO / metatags
      • API
      • Collaboration
      • Sub-apps
      • Versions
  • Account & Marketplace
    • Account and billing
      • Pricing and plans
        • Plans and billing
        • Billing cycle
        • FAQ: Pricing and Workload
      • Account Management
      • Building Apps for Others
      • Selling on the Marketplace
      • Plans & Billing (legacy)
    • Official Bubble Certification
      • Hiring certified developers
    • Building Plugins
      • The Plugin Editor
      • General Settings
      • Updating to Plugin API v4
      • Adding API Connections
      • Building Elements
      • Building Actions
      • Loading Data
      • Publishing and versioning
      • Github Integration
    • Building Templates
    • Application and data ownership
    • Marketplace policies
    • Bug reports
  • Vulnerability Disclosure Policy
  • Beta features
    • About the Beta features section
    • Native mobile apps 🔒
      • Introduction
        • What is a native mobile app?
        • Native mobile vs. web development
        • Differences in native and web elements
        • Native mobile app terminology
      • Building
        • Views and navigation
        • Native mobile actions
        • Components and gestures
        • Device resources
          • Location services
          • Camera/photo library
      • Previewing
      • Publishing
Powered by GitBook
On this page
  • What hosting means
  • Bubble's engine
  • Database
  • Backup
  • Server Logs
  • File storage
  • CDN
  • API
  • How Bubble hosts apps
  • AWS security
  • FAQ: Hosting your app on Bubble

Was this helpful?

  1. User manual
  2. Infrastructure
  3. Hosting and scaling

How Bubble hosting works

This section explores how Bubble hosting works and what kind of services you get with the hosting

Last updated 1 year ago

Was this helpful?

What hosting means

Bubble's engine

Whenever you access the Bubble editor or load a page within your app, there is an active interaction between the device being used and the Bubble server. Here, the Bubble software, often referred to as Bubble's proprietary "engine," diligently operates, to keep the editor and the app running.

The Bubble engine connects a range of services with one goal in common: to make it possible for a single developer with no programming experience to design, develop, deploy and maintain a fully functioning web application.

Bubble's engine works predominantly to connect all the different services that Bubble offers to the user's device and maintain communication between them.

The two engines

You can see Bubble's engine as consisting of two modules: one on the server, and the other on the local device of the user. This is true both for you as a developer when you use the Bubble editor, and for users who visit your app.

The local engine consists of a collection of files that are downloaded to the browser when a page or the editor is loaded, and it establishes a connection with its twin engine on the server to operate.

Database

Every app that you create comes with two ready-to-use databases (one for Development and one for Live). Bubble has automated most of the processes that usually require a dedicated person or team to operate, such as:

  • Database Setup: Bubble automatically creates and configures the databases (Development and Live) when you start a new app. You don't need to worry about any setup or maintenance tasks.

  • Schema Management: You can define your app's data structure visually. You don't have to write SQL queries or manage database schema manually as this is managed automatically.

  • Backups: are created continuously for any change in the Development and Live database individually.

    • Restoring backups: You can also restore one or all data types to any point in time

  • Data Manipulation: With Bubble's visual programming model, you can manipulate data (Create, Read, Update, Delete operations) without writing code. Bubble automates the process of generating the necessary commands to perform these operations on the database.

  • Uptime: we continually scan for any downtime and have both automated processes and dedicated teams that ensure a

  • : a direct, secure API connection that gives controlled access to read and make changes to your database can be enabled with just a few clicks

The easy communication with the database is facilitated by the two engines constantly communicating.

Related articles

If you want to learn more about how the Bubble database works, we recommend you check out the Data section of the Bubble manual.

Backup

Bubble has completely automated the backup process, making sure that you can easily restore your app to an earlier point in time with just a few clicks:

  • App development: every change you make to your app is logged so that you can not only undo changes, but you can create named save points or restore the app to an earlier point in time.

    • : Bubble also lets you easily create different branches where you can work on separate parts of the app in isolation to make it easy to manage teamwork, feature development and hotfixes

  • Database: the same point-in-time backups are automatically handled for both the Development and Live database individually

Related articles

Server Logs

Every process performed by the Bubble engine is , meaning you can track what operations have taken place and navigate to the exact workflow where the process took place. The logs also give you a full overview of the user and parameters associated with each action.

Related articles

File storage

Uploading and using files is fully automated and secure, allowing you to work with files that can be kept private to each user. Files are hosted on the endpoint cdn.bubble.io.

Related articles

CDN

An essential feature of high-performing web applications is the implementation of a Content Delivery Network, or CDN. A CDN is a system that distributes copies of your data and content across a network of servers located around the globe, ensuring fast accessibility regardless of a user's geographical location. Each Bubble app is integrated with Cloudflare, a leading provider of web infrastructure services. This integration not only ensures rapid delivery of files worldwide but also bolsters your app's security against potential threats and cyberattacks.

Related articles

API

Bubble's engine also offers an easy way to set up APIs:

  • The allows external apps to connect securely to your databases to read and make changes to it

  • The allows external apps to trigger workflows in your app.

Related articles

How Bubble hosts apps

Bubble's servers are hosted on Amazon Web Services (AWS), a leading cloud services platform known for its robust security and scalability. Bubble uses many of the services that AWS offers to run the editor and apps, which means they are regularly audited by independent third parties and continually tested and optimized as a result of being used by millions of other software systems outside of the Bubble sphere.

AWS security

The security aspect is taken care of by AWS's comprehensive set of security tools and best practices. They have multiple layers of operational and physical security to ensure the integrity and safety of data. This includes features like keeping data centers safe from physical harm (such as natural disasters, power failures and overheating), data encryption, network firewalls, and secure access controls.

Amazon AWS is compliant with certifications such as SOC 2, CSA, ISO 27001, and more.

FAQ: Hosting your app on Bubble

Can I move my app to a server of my choice?

Can I choose the geographical location of where my app is hosted?

Can I get a static IP on Bubble?

Security: We provide tools to manage the security aspects of the database, including automated encryption and managing user access with . We use AWS RDS’s AES-256 encryption to encrypt data at rest. You can the encryption we use for data in transit.

Article series:

Article:

Article:

Article:

Article:

Article:

Article series:

Article series:

Article series:

External page:

Since Bubble operates on its proprietary engine, which is consistently maintained and updated, the migration of your app away from Bubble's hosting is not possible. However, Bubble does provide an alternative in the form of a dedicated server environment, enabling you to have a secluded and more adjustable server control as well as a static IP. You can read more about this in our article series on the . We recommending getting in touch with our to discuss the possibility of setting up a dedicated environment.

Bubble's shared server environment is hosted in the US, and we don't currently offer the possibility of changing that location. Our , on the other hand, lets you choose the AWS region where you want your app to be hosted. We recommending getting in touch with our to discuss the possibility of setting up a dedicated environment.

Bubble's shared server environment doesn't currently offer the possibility of assigning a static IP address. Our , on the other hand, lets you set this up. We recommending getting in touch with our to discuss the possibility of setting up a dedicated environment.

see for yourself
Data
The database
Restoring backups
Server logs
The file and image uploader elements
Managing files
CDN (Cloudflare)
API
The Data API
The Workflow API
Amazon AWS Cloud security
Enterprise plan
Sales team
Enterprise plan
Sales team
Enterprise plan
Sales team