upstream Case Studies – Real Business Success Stories

Mindbody + HubSpot: Every Studio's Data in One CRM

Written by Storm Jenkin | Oct 2, 2026, 1:45:00 AM
Connecting Mindbody to HubSpot for a Multi-Studio Fitness Brand

For fitness businesses, Mindbody is where the day-to-day happens: class bookings, appointments, memberships and payments. HubSpot is where marketing and customer relationships are managed. When the two systems don't talk to each other, the people running campaigns and following up with members are working from half the picture.

We recently delivered a custom Mindbody to HubSpot integration for a boutique fitness brand with more than a dozen studios, including several franchise locations. Here's what the project involved and how we approached it.

The starting point

The business had previously relied on a Mindbody integration built by another provider. When that integration was switched off, data stopped flowing into HubSpot, leaving a gap in the records from that date onwards.

At the same time, the brand was growing. A new studio had been operating since February 2024, and its data needed to reach HubSpot too, including its history. The client also wanted two further changes. Membership and service pack details should be visible against each contact in HubSpot. And the integration should make fewer calls to Mindbody.

Our approach

We delivered the work in stages. First we got the data flowing reliably again, then we extended what the integration could do.

Restoring the sync and filling the gaps

We moved the integration's hosting onto upstream's servers. We then ran a data migration to fill the gap left when the previous integration was switched off. We also connected the new studio and brought across its historical data.

Memberships and service packs, visible in HubSpot

We built a "Service Packs / Memberships" custom object in HubSpot, associated with each contact. For every pack or membership, it holds:

  • the sessions remaining and the total number of sessions purchased
  • whether it's current
  • its activation, expiration and payment dates
  • the membership type and total amount

Later additions brought in location, the number of classes attended, autopay status, and membership start and end dates.

A few rules keep this data clean:

  • Each record shows whether it's a service pack or a membership.
  • Where the same membership appears in two places in Mindbody, HubSpot shows it only once.
  • Memberships that cover more than one studio show every location in a single field.

Alongside this, the integration syncs bookings, appointments, sales and membership contracts into their own HubSpot deal pipelines. Deal stages mirror Mindbody's statuses, such as booked, arrived, no-show and late cancelled for appointments, or active, suspended and cancelled for contracts. Items purchased come through as line items.

Fewer calls to Mindbody

Rather than asking Mindbody for the same information over and over, the integration now stores data that rarely changes and refreshes it on a schedule:

  • Staff details are cached and refreshed once a day, with webhooks catching any changes in between.
  • Site locations and products are cached and refreshed daily.
  • Sales sync every hour, and new sales also come through straight away when Mindbody reports them.
  • Client visit data is cached when a visit is created, and later changes update only the fields that changed.

Knowing where each member started

We added a "first class booked" date to each contact for every studio, plus a "first class ever booked" date. We applied these fields to new data as it came in and to a historical migration back to February 2024. That historical sync also fixed an issue the client had reported, where some studios' intro offers weren't attached to the right membership records.

Adding new studios

As the brand opened more locations, we connected two further studios to the integration. We migrated their existing records and added their own "first class booked" fields.

Testing with real data, safely

Every stage was tested before it touched the client's live HubSpot account. We first connected the client's real Mindbody account to a test HubSpot account, limited to two studios. This let us check new records syncing in real time, plus a small sample of historical data. Only then did we connect all locations to the live account.

Testing was a joint effort. The client's own QA tester worked alongside upstream's at the same time. For historical migrations, they compared a selection of past records in Mindbody against HubSpot, field by field. Franchise studios were left out of live testing.

The outcome

The brand's studios now feed a single HubSpot account. That includes current and historical memberships, service packs, bookings, sales and first-visit dates, all tied to the right contact. The gap left by the previous integration has been filled, the intro offer issue has been corrected, and the integration now uses caching and scheduled syncs in place of repeated calls to Mindbody. New studios can be added as the business grows.

Running your business on Mindbody and HubSpot?

As a HubSpot partner, upstream builds custom integrations that fit the way your business actually works, not just what an off-the-shelf connector allows. If your studio data lives in Mindbody but your marketing runs in HubSpot, we can help connect the two.

     

Custom Integrations > Mindbody
HubSpot services page