How to manage a paid ads budget as Fitness Studio Founders

Marketing & GrowthFor Fitness Studio Founders2 apps10 steps~20 min to set up

You're running a boutique fitness studio and your paid ads budget is probably $1,500–$4,000/month split across Meta and Google, maybe TikTok if you've been experimenting. The problem: you have no unified view of what's actually working. You're logging into Meta Ads Manager on Monday, Google Ads on Tuesday, and trying to manually reconcile cost-per-lead against new member signups that live in Mindbody or MarianaTek. There's no clean attribution. You don't know if that $800 you spent on Instagram Reels last month drove the six new members who joined after your free trial promotion, or if they found you on Google Maps. You're making budget decisions based on vibes and whatever screenshot your social media person texted you.

Marketing & GrowthFor Fitness Studio Founders2 apps10 steps~20 min to set up
Outcome

What you'll set up

A cross-channel paid ads dashboard that shows Google and Meta spend, cost-per-lead, and ROAS in one place — no tab-switching between ad platforms
An AI agent that flags underperforming ad sets, surfaces which creatives are driving trial signups, and recommends where to shift budget before you waste another week of spend
A weekly digest that ties ad performance back to actual studio metrics — new member joins, class package purchases, trial redemption rate — so you can see whether your ads are filling classes or just burning cash
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Ads Agent connects to Meta Ads and Google Ads from Starch's integration catalog — the agent queries them live when your dashboard loads or an automation runs. Growth Analyst connects to PostHog from Starch's integration catalog for web traffic and conversion data. If your studio booking data lives in Mindbody or MarianaTek (which have no open API for independents), Starch automates those platforms through your browser — no API needed — to pull trial redemption rates and new member counts on a schedule.

Prompts to copy
Connect my Meta Ads and Google Ads accounts. Show me cost-per-lead and ROAS for each campaign this month, flag any ad set that has spent more than $200 with a cost-per-lead above $35, and pause those automatically.
Every Monday morning, email me a digest: which campaigns drove the most trial signups last week, what our blended cost-per-acquisition was across Meta and Google, and one recommendation for where to shift budget this week.
Build me a dashboard that shows weekly ad spend by platform next to new member signups and trial redemption rate, so I can see if my ads are actually filling classes.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect Meta Ads and Google Ads from Starch's integration catalog. This takes about two minutes per platform — authorize the accounts and the agent can query live spend, impressions, clicks, and conversions.
2 If you're running TikTok ads, connect TikTok Ads the same way from Starch's integration catalog. If TikTok isn't in the catalog, Starch can automate your TikTok Ads Manager through your browser — no API needed.
3 Tell Starch your monthly budget cap and your target cost-per-lead (for most boutique studios, $20–$40 per trial signup is a reasonable benchmark). Say: 'My total monthly ad budget is $2,500. Alert me if any single campaign is pacing to exceed its weekly allocation, and flag ad sets where cost-per-lead has exceeded $40 over the last 7 days.'
4 Install the Growth Analyst starter app. Connect PostHog from Starch's integration catalog so the agent can track traffic from your ad campaigns through to your booking page or trial sign-up form.
5 If your trial redemption or new member data lives in Mindbody or MarianaTek, tell Starch: 'Log into my Mindbody account on a schedule every Monday morning and pull the count of new members who joined in the past 7 days and how many free trials were redeemed.' Starch handles this through browser automation — no API needed.
6 Set up the cross-channel dashboard. Tell Starch: 'Build me a dashboard that shows weekly spend on Meta and Google side by side, cost-per-trial-signup for each platform, ROAS if I have purchase data, and total new member signups from Mindbody for the same week.'
7 Set the Ads Agent budget reallocation rule. Say: 'If Meta cost-per-lead drops below $25 and Google cost-per-lead is above $45 in the same week, automatically shift $200 of weekly budget from Google to Meta and Slack me a note explaining why.'
8 Configure the weekly Growth Analyst digest. It will email you every Monday with the three things that changed most in your funnel — traffic sources, landing page conversion rate, which ad creative drove the most trial signups — so you can make one budget decision per week instead of guessing daily.
9 Add a creative performance tracker. Tell Starch: 'Every Friday, pull the top 5 and bottom 5 performing ad creatives on Meta by cost-per-result this week, and draft a Slack message to my studio account summarizing what to kill and what to scale.'
10 Once you've run this for 4 weeks, ask Starch: 'Compare my cost-per-new-member from paid ads to my cost-per-new-member from organic (referrals and walk-ins pulled from Mindbody) and tell me if paid acquisition is worth what I'm spending.' This cross-source comparison is the question most studio owners never actually answer.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

April 2026 — CrossFit box spring membership push

Sample numbers from a real run
Meta Ads — Instagram Reels (30-day free trial creative)1,100
Meta Ads — Facebook Feed (class schedule carousel)400
Google Ads — branded search (CrossFit + neighborhood)600
Google Ads — non-branded search (gym near me, functional fitness)500

Going into April, you're spending $2,600/month across Meta and Google and you have no idea which of your two Meta campaigns is pulling weight. The Ads Agent dashboard shows the Instagram Reels campaign (the 30-day free trial creative) is converting at $28 per trial signup, while the Facebook Feed carousel is at $74 per signup — nearly three times worse. The Growth Analyst digest from Monday surfaced that your landing page conversion rate dropped from 4.2% to 2.8% on the carousel traffic specifically, which means the ad is getting clicks but the landing page isn't closing them. The agent flags the carousel campaign and recommends pausing it, which you do in one click. You shift the $400 to the Reels campaign. Starch also pulls your Mindbody data through browser automation and reports that of the 22 trials redeemed in April, 14 converted to paid memberships — a 64% trial-to-member rate. That means your blended cost-per-new-member from paid ads is $119, well within your $150 target. The Google branded campaign is efficient at $18/click for people already searching your box name — you leave it alone. The non-branded Google campaign is at $47 per trial signup with a lower conversion rate to membership; you tell Starch to reduce that daily budget by 30% and reallocate to a new Reels test with a 'first class free' hook instead.

Measurement

How you'll know it's working

Cost-per-trial-signup by platform (Meta vs. Google vs. TikTok)
Trial-to-paid-membership conversion rate (from Mindbody, pulled via browser automation)
Blended cost-per-new-member across all paid channels
Ad spend pacing vs. monthly budget cap (weekly check to avoid overspend)
Top creative ROAS — which specific ad format or hook is driving signups this week
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Logging into Meta Ads Manager and Google Ads separately each week
You'll always have the raw data, but you'll spend 2-3 hours a week reconciling it manually against your Mindbody numbers with no automated alerting when something goes off the rails.
Triple Whale or Northbeam
Strong attribution tools built for e-commerce brands with Shopify stores — less useful if your conversion event is a trial booking in Mindbody rather than an online purchase, and both require meaningful monthly spend to justify the subscription cost.
Hiring a freelance media buyer or agency
A good media buyer costs $1,500–$3,000/month retainer — often more than the ad budget itself for a studio at your stage — and you still won't get the Mindbody attendance data tied back to campaign performance automatically.
Google Looker Studio with manual data connectors
Free and flexible, but you'll spend real time building and maintaining the connectors, and it won't proactively alert you or recommend budget shifts — it just shows you what happened.
On Starch RECOMMENDED

One platform — ads agent, growth analyst all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

Does Starch actually connect to Mindbody and MarianaTek? Their APIs aren't open to independent studios.
Correct — Mindbody and MarianaTek don't offer open API access for most independent studio operators. Starch handles this through browser automation: it logs into your account on a schedule and pulls the data you need (attendance, new member counts, trial redemptions) the same way you would manually. No API required. This is a first-class pattern in Starch, not a workaround.
The Ads Agent is listed as coming soon. What can I do with Starch today while I wait for beta access?
Quite a bit. You can connect Meta Ads and Google Ads from Starch's integration catalog today and ask Starch to build a custom cross-channel performance dashboard. You can also use the Growth Analyst starter app — which is live today — to get a weekly digest of traffic and conversion data from PostHog. The Ads Agent adds automated budget reallocation and campaign management on top of that; request beta access and you'll be notified when it launches.
Can Starch actually pause or adjust my ad campaigns automatically, or just report on them?
The Ads Agent is designed to take action — pausing underperforming ad sets, reallocating budget — not just report. For live-queried platforms like Meta Ads and Google Ads, write access depends on what the platform's API permits. In either case, Starch can be configured to recommend the action and ask you to confirm before it executes, which is the right default until you've seen it work for a few weeks.
Is Starch SOC 2 certified? I'd be giving it access to my ad accounts and billing data.
Not yet — Starch is not currently SOC 2 Type II certified. If compliance is a hard requirement for your studio's contracts or partnerships, that's worth knowing upfront. For most independent studio operators, the main consideration is being selective about which credentials you authorize and using read-only access where full access isn't needed.
I run two studio locations with separate ad accounts. Can I manage both from one Starch setup?
Yes. Describe both accounts when you set up your dashboard: 'Connect my Meta Business Manager which has ad accounts for both my Williamsburg and Park Slope locations, and show me spend and cost-per-trial broken out by location.' Starch builds the multi-account view you'd normally have to stitch together yourself.
I don't use PostHog — I use Google Analytics 4. Does Growth Analyst still work?
Growth Analyst's pre-built starter app connects to PostHog specifically for its scheduled sync. Google Analytics 4 is reachable from Starch's integration catalog — the agent can query it live. You can describe a custom version: 'Build me a weekly marketing digest using my Google Analytics 4 data, showing traffic by source, landing page conversion rate by campaign, and week-over-week changes.' You'd be building from scratch rather than using the pre-built app, but the output would be functionally similar.

Ready to run manage a paid ads budget on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.