Bubble Docs

The Glossary

This is a non-exhaustive list of some Bubble terms you may see in Core Reference. Generally this will only feature terms that have Bubble-specific meanings and will not define technical terms used in their normal sense.


  • An action is a part of a workflow
  • It is a step that a Bubble workflow takes, i.e. the different kinds of things that workflows can do
  • Examples include sending an email, logging the user in, showing an element, hiding an element, etc.
  • Article: Workflows

API Connector

  • A Bubble-built plugin that lets you set up outbound API connections with external services
  • Can set up the API calls to be used as data sources or workflow actions
  • Can be installed via the plugins library (Plugins > Add Plugins)
  • To learn more, see Adding API Connections (which is framed in the context of creating a plugin, but has a similar flow to the API Connector)

API Workflows

  • A type of backend workflow which can be triggered via another workflow anywhere in the app or via an API call
  • These are defined in the "Backend workflows" page, which shows up in the page selector dropdown in the topnav, once the feature is turned on in Settings > API
  • These can be scheduled to run at a later time
  • If the app's Workflow API is turned on, then an API workflow can also be initiated by an external API call to the app
  • Article: The Workflow API

App Connector

  • A feature that lets you connect two Bubble apps so that they interact with one another more seamlessly (versus connecting the two strictly via APIs as if one was a third party)
  • Can be installed via the plugins library (Plugins > Add Plugins)
  • To learn more, see section in the Reference

Backend workflow

Custom Event

  • A group of workflow actions that can be defined so that other workflows can invoke that group
  • These must be triggered from another workflow, via the "Trigger a custom event" action
  • Useful when you have multiple UI components or workflows that share some logic in common, and saves time by avoiding copy-pasting the same set of actions in multiple places
  • To learn more, see this guide on custom events

Custom State

  • Bubble elements can store bits of data on themselves - this data only exists when the page is loaded (i.e. not in the database), and resets when the page refreshes
  • For example, you could have a group that shows different information depending on the tab that's currently active - the group could have a custom state to keep track of which tab is active, which would then influence the text that shows up
  • You can create custom states on an element and set their initial values via the "i" icon at the upper right of the property editor when you have the element selected
  • You can edit the custom state of an element via the workflow action "Set state"

Data API

  • A feature that lets outside apps access the data in your Bubble app via API calls
  • Allows querying your data as well as creating / updating / deleting data
  • Controlled via authorization and Privacy rules
  • Off by default; controlled in Settings > API
  • To learn more, see Using the Bubble API guide

Data Source

  • A statement that reflects some kind of data which powers dynamic statements in elements or workflows
  • A commonly used data source is "Do a search for...", which allows you to construct a query for data from the app's database
  • Wherever you see an "Insert dynamic expression" button, all the choices in the first dropdown are considered data sources
  • Examples include "Do a search for...", "Current user", "Current date / time"
  • To learn more, see Displaying Data guide

Database Things

  • The number of unique database things you have across versions

Data Type

  • A collection of Things in the database that share the same fields, which often semantically refers to a cohesive idea an app wants to represent
    • Slightly more technical: a collection of records with the same fields
    • For those familiar with spreadsheets: a data type is kind of like a single sheet in a spreadsheet file
    • More technical: an "object", or for those familiar with relational databases, a table
  • For example, for a project management app, there might be the "Project" and "Task" data types
  • Built-in Data Type: there is only 1 built-in data type which comes with all Bubble apps: User
    • Unlike Custom Data Types, Users 1) cannot be created by the "New Thing" action; 2) have some extra built-in fields like "email" and "is logged in"; and 3) can be extended with additional extra fields via connecting with a social network or oauth provider
  • Custom Data Type: all the other data types of an app, which an app creator creates and defines
    • The app creator determines which fields each Custom Data Type has (i.e. which columns exist on that table)
  • To learn more, see this guide on structuring data


  • A feature that helps an editor the app see what's happening "behind the scenes" while interacting with an app in Run Mode
  • Appears automatically when getting to Run Mode via the "Preview" button in Edit Mode
  • Has the following features which help with debugging an app:
    • Inspect: focuses in on a specific Element on the page to show you its properties
    • Normal / Slow / Step-by-step: runs the workflows on the page at different speeds so that you can see what goes on at each action of the workflow
    • Errors: a log of errors and warnings that the app triggers as it's running
  • To learn more, see Using the Debugger

Dynamic Expression

  • A statement that isn't the literal text that shows up to the end-user, but which represents a calculation or query that the app does
  • Data sources are all dynamic expressions
  • For elements which show text, the text can be 'calculated' via a dynamic expression (and can even be a mix of static content with dynamic expression(s))
  • To learn more, see Building Dynamic Expressions


  • When you are viewing your app in the Bubble editor, i.e. the mode where you can edit your app, view your app data via the Data tab, etc.
  • Contrasts with "Run-mode" (see below)



  • The basic building block of what a Bubble website looks like
  • Everything visible on a Bubble page is an element
  • They are generally self-contained pieces of content that a user can see and potentially interact with
  • Examples include "Text", "Button", "Image", etc.; they are found on the left side in the Design tab


  • Something that happens that starts a workflow
  • Examples include a user action (e.g. clicking on an element), certain data changing, some amount of time elapses, "User is logged in", etc.
  • Article: Workflows

Field Type

  • What type of information is stored in a field of a Data Type
  • There is a built-in set of Field Types that all Bubble apps have, including numbers, text, geographic addresses, etc.
  • A field can have a data type as its type - for example, in a classroom management app, for a given class, the Teacher can have "User" as the field type
  • Fields can also be "a list of" a given type - for example, in the classroom management app, for a given class, the Students can have "list of Users" as the field type
  • To learn more, see this guide on creating a data structure


  • Edit-mode - the state of your app when you are editing it on bubble.io
  • Run-mode - the state of your app when your end-users are visiting your app (you can get from Edit Mode to Run Mode by clicking on the "Preview" button in the editor)

Monthly unique daily visitors

  • The number of unique visitors to your app each day, added up over a calendar month
  • This number is reset to zero at midnight UTC on the first day of the next month


  • A transformation / manipulation that can be applied to data in a dynamic expression
  • These can be chained together to perform a computation
  • For example, in the dynamic expression "Current User's email:number of characters > 5", the following are all operators: "email", "number of characters", ">5"
  • When building a dynamic expression, the operators available at any point depends on the dynamic expression as written thus far; for example, the ":number of characters" operator makes sense when attached to some text, but not when attached to a number
  • To learn more, see Building Dynamic Expressions


  • A feature in Bubble that restricts who can see the Things of a Data Type based on rules the app creator defines
  • Independently defined for each Data Type in an app's database
  • Handled by creating Privacy Roles that each define a group of users or Things the role applies to and what that role can / can't see
  • To learn more, see Privacy in the Reference

Property Editor

  • The part of the Design tab that appears when you double-click on an element, where you control the properties of that element
  • Can be made to always be visible by toggling View > Lock Property Editor
  • To learn more, see here

Run as

  • A feature found in Edit Mode (via Data > App Data > "All Users" table) that allows an app editor to run the app (i.e. in Run Mode) as if they were logged in as a specific user
  • To learn more, see this guide on managing data


  • When you app is actually running and you have users engaging with it, i.e. when you're "running" your app, not in the editor
  • When you click "Preview" in the editor, that simply opens up the app in run mode, just as if you had visited the URL of your app
  • Both the "Development" version and the "Live" version of your app have run modes, i.e. if you are editing your app on the Development version and click "Preview", you will enter run mode of the Development version
  • Contrasts with "Edit-mode" (see above)


  • A set of properties about the look-and-feel of an element that can be reused on other elements of the same type (e.g. Styles A and B can apply to any buttons in your app, Style C can apply to any text elements in your app, etc.)
  • These are edited via the Styles tab, and can be applied to a particular element via the Property Editor
  • New Bubble apps come with a default set of Styles., i.e. a default Theme (see Theme)
  • Styles help with consistency in the look-and-feel of an app, and if you have a large app, using Styles instead of applying custom individualized look-and-feel properties to each item could result in a performance improvement
  • To learn more, see Using Styles


  • A pre-built app that you can use as a starting point for creating your own app
  • Can only be used when starting a brand new app, i.e. cannot be applied retroactively
  • Usually includes a combination of pages, elements, styles, workflows, etc.
  • Bubble has a template gallery here with templates from (third party) community members


  • A default set of Styles that come with a new Bubble app, which provides some Styles for all native Bubble elements
  • There are currently 8 Themes to choose from, the default being the "Standard Bubble Theme"
  • You can choose a Theme for your app as part of the New Application Assistant flow when first creating that app, or you can apply a Theme to an existing app by going to Styles > Apply theme
  • To learn more, see Using Styles


  • A single instance of a Data Type
  • Corresponds to a row (record) in the database (or: it's like a row in a spreadsheet)
  • Bubble generally uses the term "Thing" when it wants the user to provide a Thing but it doesn't yet know which specific data type it is yet
  • To learn more, see this guide on structuring an app


  • A workflow is the combination of an event (such as a button-click) and one or more actions.
  • Workflows either belong to a specific page (and thus only run when a user is on that page) or is an API Workflow that can be run anywhere in the app or with an API call
  • Article: Workflows

Workflow API

  • A feature that allows other apps to run workflows (specifically, API workflows) in your Bubble app
  • (Very closely tied to API Workflows, see above)
  • Off by default; controlled in Settings > API
  • To learn more, see this guide on using the API