OrbTop

MindBody Fitness Studio Scraper

LEAD GENERATIONBUSINESSAUTOMATION

MindBody Fitness Studio Scraper

Scrapes fitness, wellness, and beauty studios from MindBody — the consumer marketplace powering roughly 70,000 studios globally. Returns full studio profiles, pricing on intro offers, and the booking-page URL, all in flat JSON ready for a CRM.


MindBody Fitness Studio Scraper Features

  • Searches by city, zip, or direct lat/lon coordinates.
  • Filters by category type (Fitness, Beauty, Wellness) and by specific modality — Yoga, Pilates, Barre, CrossFit, Martial Arts, Dance, Cycling, Spa, and a couple dozen more.
  • Returns 30+ fields per studio. Address, phone, geocoordinates, modalities, amenities, owner-identity flags, ratings, gallery images, intro pricing — the things you'd actually use, plus a few you didn't know to ask for.
  • Hits MindBody's public discovery JSON API directly. No browser, no proxies, no auth tokens.
  • Bulk-pulls intro offers and matches them to studios in the same call. Class pricing is a high-signal lead-gen field that most competitors skip.
  • Configurable radius, up to 100 miles. Default 25 mi.

Who Uses MindBody Studio Data?

  • B2B SaaS sales teams — payment processors, scheduling alternatives, and payroll vendors prospecting fitness/wellness SMBs.
  • Equipment dropshippers — filter by amenity flags (showers, parking) or modality (CrossFit, Boxing) and call studios actually buying gear.
  • Class-pass-style marketplaces — build a coverage map before launch, with intro pricing already attached.
  • Insurance brokers — fitness studios are a known underwriting niche; this gives you the contact set in one run.
  • Market research and M&A — count yoga studios in a metro, segment by modality, track openings and closures over time.
  • Local marketing agencies — pitch the 200 boutique studios in your city without scraping them by hand like it's 2009.

How MindBody Fitness Studio Scraper Works

  1. Pick a location. A free-text city or zip works ("New York, NY", "90210"), or supply latitude and longitude directly to skip the geocode step.
  2. Choose the categories. Fitness, Beauty, Wellness, or any combination — narrow further to a specific modality if you want only yoga studios, only barre, only spas.
  3. The scraper resolves your location, paginates MindBody's discovery API, and pulls intro-offer pricing for the same radius in a single bulk call.
  4. Records stream into the dataset as flat JSON. Stop early with maxItems, or let it run through every studio in radius.

Input

{
    "location": "New York, NY",
    "radiusMiles": 10,
    "categoryTypes": ["Fitness"],
    "categories": ["Yoga"],
    "maxItems": 100
}
Field Type Default Description
location string City, zip, or "City, ST" to search around. Required unless lat/lon supplied.
latitude string Override the geocoded latitude. Use with longitude to skip geocoding.
longitude string Override the geocoded longitude. Use with latitude to skip geocoding.
radiusMiles integer 25 Search radius in miles, 1–100.
categoryTypes array ["Fitness"] Top-level categories. Any subset of Fitness, Beauty, Wellness. Empty = all three.
categories array [] Specific modalities — Yoga, Pilates, Barre, CrossFit, Martial arts, Dance, etc. Empty = no narrowing.
maxItems integer 100 Cap on records returned, 1–5000.

Lat/lon mode (skip geocoding):

{
    "latitude": "34.0522",
    "longitude": "-118.2437",
    "radiusMiles": 15,
    "categoryTypes": ["Fitness", "Wellness", "Beauty"],
    "maxItems": 250
}

MindBody Fitness Studio Scraper Output Fields

{
    "studioId": "455843",
    "slug": "gibney-dance",
    "profileUrl": "https://www.mindbodyonline.com/explore/locations/gibney-dance",
    "bookingUrl": "https://www.mindbodyonline.com/explore/locations/gibney-dance/book",
    "studioName": "Gibney Dance",
    "locationName": "Gibney Dance",
    "categoryType": "Fitness",
    "categories": ["Barre", "Dance", "Other", "Pilates"],
    "modalities": ["Ballet", "Cardio", "Contemporary", "Hip hop", "Mat", "Pilates"],
    "address": "53A Chambers Street",
    "address2": "",
    "city": "New York",
    "state": "NY",
    "county": "New York County",
    "zip": "10007",
    "country": "United States",
    "countryCode": "US",
    "neighborhood": "",
    "latitude": 40.7139234,
    "longitude": -74.0054772,
    "timezone": "America/New_York",
    "phone": "6468376809",
    "description": "MAKING SPACE FOR DANCE. Gibney's Training Department serves the current and holistic needs of adult dance artists...",
    "locationDescription": "Gibney operates in TWO Manhattan locations...",
    "logoUrl": "https://prodapilymberfitness.mindbodyonline.com/organizations/15125/original_logo.gif",
    "mobileLogoUrl": "https://prodapilymberfitness.mindbodyonline.com/organizations/15125/mobile/original_logo_mobile.png",
    "stockImageUrl": "",
    "galleryImages": [
        "https://prodapilymberfitness.mindbodyonline.com/studios/24145/gallery_images/183512/cropped_image_1.jpg",
        "https://prodapilymberfitness.mindbodyonline.com/studios/24145/gallery_images/183513/cropped_image_2.jpg"
    ],
    "amenities": ["lockers", "showers", "elevator/ramps to all areas", "wheelchair accessible entrance", "close to public transit"],
    "businessIdentifiesAs": ["lgbtq+-owned", "women-owned"],
    "averageRating": 4.95,
    "totalRatings": 410,
    "totalDeals": 0,
    "classPricing": [],
    "currencyCode": "USD",
    "onlineStoreActive": true,
    "scrapedAt": "2026-04-25T14:44:41.158Z"
}
Field Type Description
studioId string Internal MindBody location ID.
slug string URL slug used by mindbody.io.
profileUrl string Public profile URL on mindbodyonline.com.
bookingUrl string Direct booking-page URL.
studioName string Studio / business name.
locationName string Location-specific name for multi-location businesses.
categoryType string Top-level category — Fitness, Beauty, or Wellness (joined if multiple).
categories array Studio categories — Yoga, Pilates, Barre, etc.
modalities array Specific subcategories — Vinyasa, Hot yoga, HIIT.
address string Street address.
address2 string Suite or unit.
city string City.
state string State or region code.
county string County (US only, when reported).
zip string Postal code.
country string Country name.
countryCode string ISO country code.
neighborhood string Neighborhood, when MindBody has it.
latitude number Studio latitude.
longitude number Studio longitude.
timezone string IANA timezone identifier.
phone string Studio phone number.
description string Studio business description.
locationDescription string Location-specific description.
logoUrl string Primary logo URL.
mobileLogoUrl string Mobile-optimized logo URL.
stockImageUrl string Default stock image used when the studio has no real photo.
galleryImages array Studio photo gallery URLs.
amenities array Amenity flags — showers, lockers, parking, wheelchair access.
businessIdentifiesAs array Owner identity flags — women-owned, lgbtq+-owned.
averageRating number Average user rating, 0–5.
totalRatings number Number of ratings collected.
totalDeals number Number of active intro offers.
classPricing array Intro offers as formatted strings, e.g. "First Class Free ($0 USD)".
currencyCode string ISO currency code.
onlineStoreActive boolean True when MindBody online booking is active.
scrapedAt string ISO timestamp of extraction.

FAQ

How do I scrape MindBody studio data?

MindBody Fitness Studio Scraper takes a location (city, zip, or lat/lon) and a category filter, then pulls every studio in radius from MindBody's public discovery API. It returns flat JSON. Run it once per metro and you have the lead set for that market.

How much does MindBody Fitness Studio Scraper cost to run?

Pay-per-event pricing — $0.10 per actor start plus $0.001 per record. A run that returns 1,000 studios costs about $1.10. Larger metros with 2,000+ Fitness studios run in the $2–3 range.

What data can I get from MindBody?

The scraper returns 30+ fields per studio: name, full address, geocoordinates, phone, modalities (Yoga, Pilates, Barre, etc.), amenities (showers, parking, wheelchair access), owner identity flags (women-owned, lgbtq+-owned), ratings, gallery images, and any intro pricing the studio is currently offering. Email and direct website are not in MindBody's API response — phone and the booking URL are.

Can I filter by specific modality?

Yes. Set categoryTypes: ["Fitness"] and categories: ["Yoga"] to get only yoga studios. Combine modalities — ["Yoga", "Pilates"] returns both. Leaving categories empty returns everything in the chosen category types.

Does MindBody Fitness Studio Scraper need proxies?

No. MindBody's discovery gateway is a public JSON API with no auth, no Cloudflare, no rate-limit gymnastics. The scraper hits it directly with a polite courtesy delay between pages. Most runs finish in seconds to a few minutes depending on metro size.

How fresh is the data?

Records reflect MindBody's current consumer-facing index, refreshed at run time. Studio listings update slowly — most metro coverage is stable week to week. Intro-offer pricing changes more often, which is part of why we pull it on every run.


Need More Features?

Need custom fields, a different geographic filter, or scheduling on a cron? File an issue on the actor page or get in touch.

Why Use MindBody Fitness Studio Scraper?

  • Comprehensive — 30+ fields per studio, including modalities, amenities, intro pricing, and owner-identity flags. Most competing scrapers stop at name, address, phone.
  • Cheap to run — about $1 per 1,000 records on the standard PPE profile, which beats the cost of most lead-gen lists by an order of magnitude and gives you fresher data.
  • Fast — direct JSON API, no browser, no proxies. A 1,000-record run takes under a minute. Compare that to spinning up Playwright for a hundred SPA-rendered profile pages.