/bubble-tutorials

How to set up analytics in Bubble

Learn how to set up analytics in Bubble with a clear step‑by‑step guide to track user behavior, improve performance, and optimize growth.

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 set up analytics in Bubble

To set up analytics in Bubble, the simplest valid approach is to add a tracking script (like Google Analytics or Plausible) in Settings → SEO/metatags and then trigger custom events using Bubble’s built‑in “Run JavaScript” action or native plugin events, so pageviews and actions are tracked automatically.

 

What “analytics in Bubble” means

 

Bubble doesn’t provide built‑in behavioral analytics. Instead, you connect an external analytics tool. The most common are Google Analytics, Plausible, and Amplitude. These tools track page views and events when their script runs on your page.

  • Pageview = user navigates to a page or Bubble loads a new SPA state.
  • Event = user clicks a button, completes signup, submits a form, etc.

 

Step-by-step: Install Google Analytics

 

Add your GA snippet in Bubble:

  • Go to Settings → SEO/metatags
  • Paste the script into “Script/meta tags in header”
<!-- Google tag -->
<script async src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXX"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-XXXXXXX'); // Replace with your measurement ID
</script>

 

Track custom events

 

For user actions you care about (signup, purchase, clicked CTA), trigger a GA event using Run JavaScript in your workflow.

gtag('event', 'signup_completed'); // Fires a custom event

You add this via: Workflow → Add an action → Plugins → Run JavaScript.

 

Track Single Page App pageviews

 

Bubble loads pages dynamically, so GA might not auto-track SPAs. Add a workflow on Page is loaded (entire) and trigger a manual pageview:

gtag('event', 'page_view', { page_path: window.location.pathname });

 

Alternative: Privacy-friendly tools

 

Plausible or Fathom are similar: paste their script in the header and they auto-track pageviews. Events work the same way—call their JS function in Bubble workflows.

plausible('Signup'); // Example Plausible event

This keeps your Bubble app fast and private without extra configuration.

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