How to add analytics to Bubble

Bubble apps can load scripts in the page header from the app settings. Your live app needs a paid plan and custom domain for public use.

No cookies, no banner ~3 KB script About 2 minutes

Before you start

Create a free Cool Analytics account and add your site. You'll get a site ID — replace YOUR_SITE_ID in the code below with it. The dashboard shows the snippet with your ID already filled in.

Install on Bubble

  1. 1In the Bubble editor, open Settings → SEO / metatags.
  2. 2Paste the snippet into the Script/meta tags in header box.
  3. 3Deploy to Live.
Settings → SEO / metatags → Script/meta tags in header
<script defer src="https://coolanalytics.dev/hb.js" data-site="YOUR_SITE_ID"></script>

Check that it works

Open your live site in a new tab, then open your Cool Analytics dashboard. Your visit appears on the live map within seconds — with the page you're on, where you came from and your browser.

Nothing showing up? Make sure you're looking at the published site (not a preview or editor), that an ad blocker isn't blocking the script, and that you're not testing on localhost.

Track signups, purchases and clicks

Pageviews, sources, countries and outbound link clicks are tracked automatically. For the moments that matter to you, send a custom event. Events named like a signup show up as signups, and events with an amount show up as revenue — on the live map and per traffic source.

custom events
// anywhere in your Bubble site's browser code
window.hb?.track("signup");

// with an amount, it shows up as revenue
window.hb?.track("purchase", { amount: 49 });

Bubble tips

  • Bubble apps change pages client-side in single-page setups; those changes are tracked.
  • Track workflow steps by adding a Run JavaScript action (from the Toolbox plugin) that calls hb.track('signup').

Want to keep your own visits out of the stats? Open your site once with #hb-ignore at the end of the URL. That browser is excluded until you visit with #hb-track.

Bubble analytics FAQ

Does it track the Bubble editor or test version?+

Only pages where the script loads. Visits to the version-test URL are counted unless you exclude your browser with #hb-ignore.

Can I track signups in Bubble?+

Yes — run hb.track('signup') in a JavaScript action at the end of your signup workflow.

Do I need a plugin?+

No plugin is needed for pageviews. For custom events you need a way to run JavaScript, such as the Toolbox plugin.

See who's on your Bubble site right now.

One line of code. No cookies. 7 days free.