Google Ads on autopilot: −38% CPA, +52% ROAS
✓ CPA down 38% ($142 → $88)
✓ ROAS up 52% (2.1× → 3.2×)
✓ 140+ ad variations tested automatically, weekly

Before → after

Metric Before After
Cost per acquisition (CPA) $142 $88
Return on ad spend (ROAS) 2.1× 3.2×
Ad variations live at any time 12 140+

A B2B SaaS team was running Google Ads the manual way: a dozen static ads, weekly spreadsheet reviews, and bid changes that arrived days too late. Their CPA was creeping up while the team burned hours on chores.

The challenge

  • Ads were written once and rarely refreshed, so creative fatigue set in fast.
  • Bid and budget changes were reactive, based on stale weekly reports.
  • No structured experimentation, the team guessed instead of tested.
  • Engineers and marketers spent their week on copy-paste reporting.

What we built

  1. Ad copy agent generates on-brand ad variations from product docs and top landing pages, then pushes them to Google Ads.
  2. Bid management reads conversion data from GA4 and BigQuery and adjusts bids and budgets against CPA targets.
  3. Experiment engine continuously A/B tests headlines, descriptions, and landing pages, killing losers automatically.
  4. MCP layer connects the agent to Google Ads, GA4, and Slack through a single interface.
  5. Slack digest posts performance and every decision the agent made, in plain language.

The results

Cost per acquisition fell from $142 to $88 (−38%) while return on ad spend rose from 2.1× to 3.2×. The team now runs 140+ ad variations at any time and reviews a daily digest instead of a weekly spreadsheet.

The takeaway

Ads are a perfect agent problem: lots of small, data-driven decisions that humans are slow at. Let the agent do the testing and tuning, and keep the humans on strategy.

Stack Google Ads APIGA4BigQueryMCPSlack
Start a project like this ← All case studies