Skip to main content
RapidDev - Software Development Agency
bubble-tutorial

How to set up automated performance monitoring in Bubble.io: Step-by-Step Guide

Set up performance monitoring for your Bubble app by using Bubble's built-in App Metrics and Server Logs, integrating external uptime monitors like UptimeRobot, tracking page load times with custom logging, and setting up alert thresholds so you catch performance issues before users complain.

What you'll learn

  • How to use Bubble's built-in App Metrics and Server Logs
  • How to set up external uptime monitoring with UptimeRobot
  • How to track custom performance metrics in the database
  • How to configure alerts for performance degradation
Book a free consultation
4.9Clutch rating
600+Happy partners
17+Countries served
190+Team members
Beginner5 min read15-20 minAll Bubble plans (external tools on free tiers)March 2026RapidDev Engineering Team
TL;DR

Set up performance monitoring for your Bubble app by using Bubble's built-in App Metrics and Server Logs, integrating external uptime monitors like UptimeRobot, tracking page load times with custom logging, and setting up alert thresholds so you catch performance issues before users complain.

Overview: Setting Up Performance Monitoring in Bubble

This tutorial shows you how to monitor your Bubble app's health and performance. You will use Bubble's built-in metrics dashboard, set up external uptime monitoring, create custom performance logging, and configure alerts. This is essential for any production app where downtime or slow performance impacts users and revenue.

Prerequisites

  • A Bubble account with an app deployed to live
  • A free UptimeRobot account (or similar monitoring service)
  • Basic understanding of Bubble's Settings tab
  • Familiarity with Bubble workflows and data types

Step-by-step guide

1

Explore Bubble's built-in metrics

Go to Settings then click on the Metrics section (or the Logs tab). Here you will find the Workload metrics chart showing WU consumption over time, broken down by activity type. The Server Logs tab shows individual workflow executions with their WU cost and duration. Review the pie chart to identify which workflows and searches consume the most resources. Check this regularly to spot trends before they become problems.

Expected result: You can identify your app's heaviest WU consumers and monitor trends in the Metrics dashboard.

2

Set up external uptime monitoring

Create a free account at UptimeRobot.com (or Pingdom, Better Uptime, etc.). Add a new monitor with type HTTP(s). Enter your live app URL (e.g., https://yourapp.bubbleapps.io or your custom domain). Set the monitoring interval to 5 minutes. Configure alert contacts (email and/or SMS). UptimeRobot will ping your app every 5 minutes and alert you immediately if it goes down or responds slowly.

Pro tip: Add a second monitor for a key API endpoint or backend workflow URL to catch partial outages where the page loads but backend features fail.

Expected result: External monitoring checks your app every 5 minutes and alerts you to downtime via email or SMS.

3

Create a custom performance log

Create a data type called PerformanceLog with fields: page_name (text), load_time_ms (number), user (User), timestamp (date), and notes (text). On key pages, add a Page is loaded workflow that calculates the time since the page started loading (using a Custom State set to Current date/time at the start) and creates a PerformanceLog record. This gives you real page load time data from actual users.

Expected result: Page load times are recorded in the database from real user sessions.

4

Build a performance dashboard

Create an admin page called admin-performance. Add charts or summary statistics: average page load time over the last 7 days, slowest pages, WU usage trend, and uptime percentage (from UptimeRobot's API if available). Display PerformanceLogs in a Repeating Group sorted by load_time_ms descending to identify the slowest page loads. For comprehensive monitoring solutions, consider working with RapidDev.

Expected result: An admin dashboard shows key performance metrics and identifies slow pages.

5

Set up alert thresholds

Create a backend workflow that runs daily. It searches for PerformanceLogs from the last 24 hours and calculates the average load time. If the average exceeds your threshold (e.g., 5 seconds), send an alert email to the admin. Similarly, check if daily WU consumption exceeds 80% of your plan's allocation. This gives you proactive warnings before performance degrades to the point where users notice.

Expected result: Automated alerts notify you when performance metrics exceed acceptable thresholds.

Complete working example

Workflow summary
1PERFORMANCE MONITORING WORKFLOW SUMMARY
2===========================================
3
4DATA TYPE:
5 PerformanceLog
6 - page_name (text)
7 - load_time_ms (number)
8 - user (User)
9 - timestamp (date)
10 - notes (text)
11
12PAGE LOAD TRACKING:
13 Custom State: page_start_time (date)
14 Workflow 1: Page is loaded
15 Action 1: Set state page_start_time = Current date/time
16 (This runs immediately when the page starts)
17 Workflow 2: Do when condition is true
18 Condition: RepeatingGroup Main's data source is loaded
19 Action: Create PerformanceLog
20 page_name = Current page's name
21 load_time_ms = (Current date/time - page_start_time) in ms
22 user = Current User
23 timestamp = Current date/time
24
25EXTERNAL MONITORING:
26 UptimeRobot (free tier):
27 Monitor type: HTTP(s)
28 URL: https://yourapp.bubbleapps.io
29 Interval: 5 minutes
30 Alerts: email + SMS
31
32BACKEND WORKFLOW: daily_performance_check
33 Runs: daily at 08:00
34 Step 1: Search PerformanceLogs (last 24 hours)
35 Step 2: Calculate average load_time_ms
36 Step 3 (Only when avg > 5000):
37 Send email alert to admin
38 Step 4: Check WU usage via Settings
39 Step 5 (Only when WU > 80% of allocation):
40 Send email alert to admin
41
42ADMIN DASHBOARD:
43 - Average load time (last 7 days)
44 - Slowest pages (top 10 by load_time_ms)
45 - WU usage trend chart
46 - Recent alerts list

Common mistakes when setting up automated performance monitoring in Bubble.io: Step-by-Step Guide

Why it's a problem: Only monitoring from within Bubble itself

How to avoid: Use an external service like UptimeRobot that checks your app from outside Bubble's infrastructure.

Why it's a problem: Logging performance data on every page for every user

How to avoid: Sample performance data — log every 10th page load (using a random number check) or only log for specific pages.

Why it's a problem: Not acting on the monitoring data

How to avoid: Set up automated alerts with thresholds and review the performance dashboard weekly.

Best practices

  • Use external uptime monitoring in addition to Bubble's built-in tools
  • Check Bubble's App Metrics weekly to identify WU consumption trends
  • Log page load times from real user sessions for accurate performance data
  • Set up automated alerts for performance thresholds
  • Sample performance logs to avoid excessive database writes
  • Review and optimize the heaviest WU-consuming workflows monthly
  • Monitor after each deployment for performance regressions

Still stuck?

Copy one of these prompts to get a personalized, step-by-step explanation.

ChatGPT Prompt

I am running a Bubble.io app in production and need to set up performance monitoring. How do I track page load times, monitor uptime, set up alerts, and build a performance dashboard?

Bubble Prompt

Set up performance monitoring for my app. Create a PerformanceLog data type for tracking page load times, add an external uptime monitor, and build an admin dashboard that shows average load times and sends alerts when performance degrades.

Frequently asked questions

Is UptimeRobot free?

Yes. UptimeRobot's free tier includes 50 monitors with 5-minute check intervals. This is sufficient for most Bubble apps.

How do I check my WU usage programmatically?

Bubble does not expose WU data via API. You can monitor it manually in Settings or set up budget alerts at 75% and 100% thresholds in your plan settings.

What is a good target for page load time?

Under 3 seconds is good, under 5 seconds is acceptable. Pages taking over 5 seconds should be optimized by reducing searches, limiting Repeating Group rows, and optimizing images.

Can RapidDev help with performance optimization?

Yes. RapidDev specializes in Bubble development and can audit your app for performance bottlenecks, optimize database queries, reduce WU consumption, and implement comprehensive monitoring.

Should I monitor the development environment too?

Focus monitoring on production. Development mode has its own WU allocation and different performance characteristics.

RapidDev

Talk to an Expert

Our team has built 600+ apps. Get personalized help with your project.

Book a free consultation

Need help with your project?

Our experts have built 600+ apps and can accelerate your development. Book a free consultation — no strings attached.

Book a free consultation

We put the rapid in RapidDev

Need a dedicated strategic tech and growth partner? Discover what RapidDev can do for your business! Book a call with our team to schedule a free, no-obligation consultation. We'll discuss your project and provide a custom quote at no cost.