/bubble-tutorials

How to build charts and graphs in Bubble

Learn how to build charts and graphs in Bubble with simple steps, plugins, and tips to visualize data and enhance your app’s usability.

Matt Graham, CEO of Rapid Developers

Book a call with an Expert

Starting a new venture? Need to upgrade your web or mobile app? RapidDev builds Bubble apps with your growth in mind.

Book a Free Consultation

How to build charts and graphs in Bubble

You build charts in Bubble by adding a chart element (usually from the built‑in Chart plugin or a plugin like Chart.js), then connecting its Data source to a list of things in your database. The chart automatically reads your fields (like dates, numbers, categories) and turns them into bars, lines, or pies. The main work is preparing clean data using Search for..., grouping with Group by, and formatting the values so the chart can plot them.

 

How Bubble Charts Work

 

Bubble doesn’t generate values for you. A chart needs two things: a list of labels (like dates or categories) and a list of numeric values (like totals or counts). The chart element reads these directly from your database through Search for Things. If your data is messy, you use Group by to structure it.

  • Label field → what appears on the X‑axis (example: Created Date:formatted as)
  • Value field → numbers the chart plots (example: Sales Amount, Count of Users)

 

Basic Steps to Build a Chart

 

Add the element (Bubble’s built‑in Chart element). Then set:

  • Type of data: usually your Thing (Sale, Task, Order)
  • Data source: Search for YourThing
  • Group by (optional): needed for totals per period or per category
  • XAxis labels: choose the field for labels
  • Values: choose the number to plot

 

Example: Total Sales Per Month

 

If you have a Sale data type with a amount (number) and a created date, you can group by month.

  • Data source → Search for Sales:grouped by Created Date:month
  • Label → This group’s Created Date:formatted as "MMM"
  • Value → This group’s amount:sum

 

Example: Chart Using API Data

 

If your API returns a list of values, you can feed it directly to a chart if the response is a list of objects. Use the API Connector and then set the chart’s data source to the API call.

 

{
  "month": "Jan",
  "total": 1200
}

 

In the chart element:

  • Labels → Current page data's month
  • Values → Current page data's total

 

Common Fixes

 

  • If a chart shows blank: check privacy rules (user may not be allowed to see the data).
  • If values look wrong: ensure the Group by aggregation (sum, count, average) is correct.
  • If dates look messy: use :formatted as on the label field.

Explore More Valuable No-Code Resources

How to integrate Bubble.io with Git?

Learn how to seamlessly integrate Bubble.io with Git through our comprehensive step-by-step guide. Perfect for beginners and professionals.

Explore

How to integrate Bubble.io with Reddit Ads?

Learn how to seamlessly integrate Bubble.io with Reddit Ads using our easy step-by-step guide. Boost your ad management today!

Explore

How to integrate Bubble.io with AWS S3?

Explore our step-by-step guide on integrating Bubble.io with AWS S3, making your app development process more efficient and secure.

Explore

How to integrate Bubble.io with Lucidchart?

Follow our step-by-step guide to seamlessly integrate Bubble.io with Lucidchart, enhancing your workflow & productivity.

Explore

How to integrate Bubble.io with Kentico?

Learn how to seamlessly integrate Bubble.io and Kentico with our comprehensive, easy to follow step-by-step guide.

Explore

How to integrate Bubble.io with Box?

Discover easy-to-follow steps for integrating Bubble.io with Box. Boost your workflow and secure your files seamlessly today.

Explore

Stuck in Bubble.io? We’re here to help!

Fix broken workflows | Optimize logic | Boost performance | Scale with confidence

4.9
Clutch rating 🌟
600+
Happy partners
17+
Countries served
190+
Team members

By clicking “Accept”, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our Privacy Policy for more information.

Cookie preferences