---
title: "To the Agency Owner About to Build an AI Media Buyer"
description: "Before you fund six months of in-house Google Ads automation, compare the build costs with a white-label engine—and count the client accounts exposed while you debug."
image: "https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8018cdcd5715e0e4716_ddb5bcca-ef6a-4e0f-b1b8-857fb72ba85b.png"
---

September 28, 2026

•

min read

# To the Agency Owner About to Build an AI Media Buyer

![Young man with curly hair wearing a black shirt outdoors against green foliage background.](https://cdn.prod.website-files.com/6821efca072e48f6f495a47e/68562d390107b3921a6e3d68_1743932904108.jpg)

**Alexander Perleman**, Head Of Product @ groas
Ex-Goldman Sachs and Stanford Computer Science

alex@groas.ai

[LinkedIn](https://groas.com/post/to-the-agency-owner-deciding-whether-to#)

![Cover image for: To the Agency Owner About to Build an AI Media Buyer](https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8018cdcd5715e0e4716_ddb5bcca-ef6a-4e0f-b1b8-857fb72ba85b.png)

If you are the agency owner about to approve six months of work on a “proprietary AI media buyer,” stop at the line in your roadmap marked *testing*. That testing will happen in your clients’ live ad accounts. The developer’s salary is visible; the accounts stuck in learning while you debug are the cost your spreadsheet is least likely to catch.

You can see why the pitch landed. Your clients pay somewhere between $2,500 and $8,000 a month in retainers. Delivery costs keep eating the margin. Your media buyers spend hours excluding search terms, copying ad variations, and watching target CPA thresholds. Then someone offers you an exit: spend sixty grand and three months of sprint time, own the code, remove the vendor bill, and collect an eighty-percent delivery margin forever.

I understand the appeal. I also remember agencies building custom reporting portals in 2017, then building Python bid scripts before Smart Bidding changed the job those scripts were meant to do. The code was real. So was the maintenance. **Owning an automation layer does not make the work of running it disappear.**

You are not simply choosing between buying a tool and building an asset. You are deciding whether your service business should carry a software lab as well. Before you sign the roadmap, count what that lab will cost and where its mistakes will land.

#### The internal pitch leaves out the operating job

The build proposal usually sounds tidy: put a backend developer or technical co-founder on a six-month sprint, connect the Google Ads API to an LLM pipeline, add a dashboard with your logo, and stop paying for software across 10 to 25 accounts. Once the code ships, the spreadsheet reduces marginal cost to API tokens. Your agency gets proprietary IP. Your retainers look safer.

A script that emails search terms to an account manager once a week is a reasonable build. An autonomous system that allocates budgets, adjusts targets, prunes poor queries, and updates campaigns across client accounts is a different commitment. It needs to execute safely, make its actions intelligible to your team, and keep working when the platform changes. A dashboard with your logo is the easy part.

That distinction matters when you [compare building with buying Google Ads execution](https://groas.com/post/build-or-buy-google-ads-execution-agency-scale). The estimate in front of you may cover the first release while leaving the continuing engineering job outside the margin calculation. **Ask who owns the system after launch, not just who can ship version one.**

![Agency owner at a desk studying developer costs and software diagrams on a whiteboard](https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8018cdcd5715e0e471a_7c91a891-9688-4fcd-8baa-d6bdba9e7fc2.png)

#### Put the full build cost beside the roadmap

For an in-house autonomous engine serving roughly 10 to 20 clients, the planning range in this draft is **$118,000 to $184,000 in Year 1**, with a further $28,000 to $45,000 annual maintenance floor. Treat that Year 1 range as a scenario, not a vendor quote or a sum you can reproduce by adding every low or high figure below. Some rows are budget estimates; lost retainers are a possible outcome, not a bill you pay to launch.

| Cost | When it hits | Figure and basis | What makes it move |
| --- | --- | --- | --- |
| Backend developer | Six-month build | $66,500–$85,000. The low end corresponds to six months of the $133,000 median base salary in the [Kore1 developer salary guide](https://kore1.com/insights/python-developer-salary-guide); the range is the draft’s planning estimate. | Compensation and time assigned to the build. |
| API maintenance and refactoring | Recurring | $20,000–$35,000 a year, a planning estimate. [Software-maintenance research](https://savi.im/blog/software-maintenance-costs-gartner-rule-2026) cited in the draft puts a large share of lifecycle work after launch. | API changes, campaign features, and the number of accounts you support. |
| Access and compliance work | Build and ongoing | $8,000–$15,000, a planning allowance for engineering and review work—not a Google access fee. [Google’s access-level documentation](https://developers.google.com/google-ads/api/docs/access-levels) describes the requirements, not that price. | The access level you need and the work required to meet its conditions. |
| Hosting and inference | Recurring | $3,600–$6,800, a planning estimate from the draft. | Servers, databases, models, and usage. |
| Lost retainers during a bad rollout | Contingent revenue exposure | $17,400–$52,200, the draft’s scenario for losing 1–3 clients. Its $5,800 monthly retainer assumption comes from [PPC.io pricing data](https://ppc.io/insights/ppc-management-pricing). | Whether accounts leave, and how long those retainers would otherwise have continued. |

The first four rows require a budget even if the software behaves. The fifth is **not a predictable cash expense**. It is a reason to keep the rollout risk out of the footnotes. Your own roster will give you a better exposure figure than an average retainer: look at the accounts you would put on the system first and what it would mean to lose one.

The recurring work is easy to underprice because it looks like the same developer fixing small things between other assignments. Google releases new Ads API versions regularly; the [developer blog’s release roundup](https://ads-developers.googleblog.com/2025/12/2025-google-ads-developer-blog-roundup.html) is a useful reminder that your integration will not sit untouched. Access requirements add another operating task. [Google’s documentation](https://developers.google.com/google-ads/api/docs/access-levels) describes Basic and Standard Access and the review involved. None of that makes an internal build impossible. It means someone has to keep owning it after the launch party, assuming you were planning a launch party for API maintenance.

Then come the per-account economics. On the draft’s example of 12 clients and a $140,000 Year 1 burden, the build works out to roughly $11,660 per account a year, or nearly $972 per client a month, before you claim it has replaced all delivery labor. I have seen engineering time treated as an *internal investment* in these comparisons. It is still money you spend. The same blind spot appears in [in-house Google Ads team costs](https://groas.com/post/in-house-google-ads-team-cost-analysis-vs-engine-strategist): moving work off the media buyer’s desk does not make the new owner of that work free.

The cheapest mistake here is a $600 experiment that summarizes search terms in Slack. Your team still has to act on them, but you can stop. The most expensive is putting unproven budget or bidding automation into live accounts, unsettling performance, and losing a retainer while you work out what the code did. Changes to campaign settings can trigger a [learning period](https://support.google.com/google-ads/answer/13018804); they do not come with a guarantee that the account will recover on your preferred schedule. **Keep that risk in the decision, even though it will never appear on the developer’s invoice.**

#### A white-label engine changes what you have to own

If you buy the execution layer, you still own the client relationship, the commercial direction, and the guardrails. You do not have to build the machinery that acts on them. That is the case for groas: it handles campaign and optimization work continuously, while a named human strategist remains responsible for direction and accountability. Its flat monthly fee, no setup fee, and month-to-month terms give you a cost you can place beside your retainer without first funding a six-month build.

That distinction is more useful than a promise that buying will deliver a particular gross margin on day one. Your margin depends on what you charge, what work your team still performs, and how you run the accounts. The practical advantage is that you can test a working delivery model rather than price an unfinished one.

![Linocut illustration of a leaking, script-powered Rube Goldberg machine](https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8028cdcd5715e0e471e_1bdc733c-e9a5-4b8c-9c7e-7460ad3cac19.png)

A reporting dashboard that flags a poor search term for someone to review on Monday does not solve your Friday-night spreadsheet problem. **Execution is the point.** groas can act within client guardrails, adjust targeting and budgets, and log what it changed and why. Your team can examine those actions against qualified pipeline and return on ad spend instead of treating a tidy report as proof that the account improved. You remain the agency your client hired; you are not asking that client to become a test environment for your first release.

You do give something up. You cannot present a vendor’s backend code as your proprietary repository or rewrite its model architecture to suit your preferred approach. If owning that architecture is the business you want to build, a white-label arrangement will not get you there. If the business you want to build is a stronger agency, though, owning every layer of the software is a costly way to avoid a vendor line item. **Keep the work that differentiates you; do not take on infrastructure merely so you can say you wrote it.**

#### Build only if the software is the business

There are exceptions. If your agency has proprietary offline data that a third-party system cannot use, and that data genuinely dictates bids, custom software may give you an operational advantage. The draft’s example is a tightly focused group of two hundred multi-unit dental clinics, where daily chair occupancy and localized billing data shape decisions. That is a specific reason to build, not a general preference for owning code.

The other exception is simpler: you have funded a dedicated engineering team and intend to leave client services for a software business. In that case, the product is the point. You are accepting a different business model, not improving agency delivery on the cheap.

For a retainer-based agency trying to serve its current roster better, neither exception follows from “our media buyers are busy.” Busy media buyers need better execution capacity. They do not, by themselves, justify a software company inside your agency. **Build for an advantage you cannot buy, not for a dashboard you would enjoy showing prospects.**

#### Test the alternative before the next sprint

Before you commit the next quarter of developer time, I would run the 60-day comparison on two demanding, low-margin accounts. Choose the ones where your team spends its time on search-term reviews, target CPA babysitting, and slide formatting. Write down that workload and the delivery cost before you change anything. If those accounts are already volatile, note that too; you need to know what you are comparing the test against.

Then put both accounts on a white-label autonomous engine such as groas with clear business guardrails. Watch the actions it takes, the account volatility, and what your media buyers still need to do. At the end of the test, compare the flat monthly cost with the delivery time you actually recovered. Do not assume the full twenty hours a month your busiest manager says an account consumes will come back. Measure it.

You should also ask the question your build proposal avoids: who explains an action when your client calls? An action log and a named strategist give your team somewhere to start. You still need to understand the account and stand behind the recommendation. Buying execution is not buying permission to stop paying attention.

Your clients hire you for qualified pipeline, sound judgment, and protection against waste. They do not pay a retainer because they want your developers to maintain an API integration. If the test shows that a flat-rate engine does the repetitive work while your team keeps control of strategy, you have your answer without spending six months finding it in production.

Make the call before the next sprint starts.

Alexander

## Related Posts

[![](https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg) ##### Autonomous Ad Budget Allocation: Cost and How It Works FAQ Wasting ad budget and can't optimize fast enough? How real-time AI budget allocation works, what autonomous setup costs, and what to use at scale. September 28, 2026 • min read Written by](https://groas.com/post/autonomous-ad-budget-allocation-cost-faq)

[![](https://cdn.prod.website-files.com/plugins/Basic/assets/placeholder.60f9b1840c.svg) ##### AI Agents vs PPC Agencies: When to Fire Your Google Ads Agency Paying $4k/month with no improvement in 6 months? Learn when AI beats your agency, what fees buy, and how to switch without losing performance. September 28, 2026 • min read Written by](https://groas.com/post/ai-agents-vs-ppc-agencies)

[![Cover image for: The Fully Autonomous Google Ads Sales Page That Explains Nothing](https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f962a6f05098a5427812_1857e562-347b-480f-a838-1dee0315bba6.png) ##### The Fully Autonomous Google Ads Sales Page That Explains Nothing A straight-faced parody of the AI Google Ads pitch, with five questions its sales page hopes you never ask. September 28, 2026 • min read Written by](https://groas.com/post/the-fully-autonomous-human-led-ai-powere)

![](https://cdn.prod.website-files.com/6821efca072e48f6f495a47e/6823c03839b2b618430d5ae6_Light-p-500.png)

[![White stylized owl eyes with green background icon.](https://cdn.prod.website-files.com/6821efca072e48f6f495a47e/6a68a036a5dd5627409d3579_Groas%20Icon.png)](https://groas.com/post/to-the-agency-owner-deciding-whether-to#)

[contact](mailto:scale@groas.ai)

Explore

[Home](https://groas.com/)[Philosophy](https://groas.com/our-philosophy)[Blog](https://groas.com/blog)

What We Do

[Paid Search](https://groas.com/paid-search)[Earned Search](https://groas.com/earned-search)

Who We Serve

[Businesses](https://groas.com/for-businesses)[Agencies](https://groas.com/for-agencies)

MCP

[ChatGPT](https://chatgpt.com/plugins/plugin_asdk_app_6a9c2d7108f08191beb5b3d736be8655?q=groas)[Claude](https://claude.ai/directory/mcp-groas-ai)

Legal

[Privacy Policy](https://groas.com/legal/privacy-policy)[Terms of Service](https://groas.com/legal/terms)

Get Started

[Apply](https://groas.typeform.com/to/xC1bQNUT)

© 2026 groas 🇺🇸

[![](https://cdn.prod.website-files.com/62434fa732124a0fb112aab4/62434fa732124a389912aad8_linkedin%20small.svg)](https://www.linkedin.com/company/groas/)

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "",
      "@id": "https://www.groas.com/post/to-the-agency-owner-deciding-whether-to#article",
      "headline": "To the Agency Owner About to Build an AI Media Buyer",
      "description": "Before you fund six months of in-house Google Ads automation, compare the build costs with a white-label engine—and count the client accounts exposed while you debug.",
      "url": "https://www.groas.com/post/to-the-agency-owner-deciding-whether-to",
      "image": {
        "@type": "ImageObject",
        "url": "https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8018cdcd5715e0e4716_ddb5bcca-ef6a-4e0f-b1b8-857fb72ba85b.png"
      },
      "thumbnailUrl": "https://cdn.prod.website-files.com/6823bbd57170ea42b357cf81/6ab9f8018cdcd5715e0e4716_ddb5bcca-ef6a-4e0f-b1b8-857fb72ba85b.png",
      "datePublished": "2026-09-28T05:15:47.507Z",
      "dateModified": "2026-09-28T05:15:47.507Z",
      "inLanguage": "en-US",
      "isAccessibleForFree": true,
      "articleSection": "",
      "keywords": "Google Ads, ",
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://www.groas.com/post/to-the-agency-owner-deciding-whether-to"
      },
      "author": { "@id": "https://www.groas.com/author/#person" },
      "publisher": { "@id": "https://www.groas.com#organization" },
      "about": [
        { "@type": "Thing", "name": "Google Ads" },
        { "@type": "Thing", "name": "Pay-per-click advertising" },
        { "@type": "Thing", "name": "Performance marketing" }
      ],
      "mentions": [
        { "@type": "Organization", "name": "groas", "url": "https://www.groas.com" },
        { "@type": "Thing", "name": "Google Ads" }
      ],
      "speakable": {
        "@type": "SpeakableSpecification",
        "cssSelector": ["h1"]
      }
    },
    {
      "@type": "Person",
      "@id": "https://www.groas.com/author/#person",
      "name": "",
      "description": "",
      "jobTitle": "",
      "email": "",
      "url": "https://www.groas.com/author/",
      "image": {
        "@type": "ImageObject",
        "url": ""
      },
      "sameAs": [
        ""
      ],
      "knowsAbout": [
        "Google Ads",
        "Performance Max",
        "AI Max",
        "Pay-per-click advertising",
        "Conversion tracking",
        "Bid management",
        "Search advertising"
      ],
      "worksFor": { "@id": "https://www.groas.com#organization" }
    },
    {
      "@type": "Organization",
      "@id": "https://www.groas.com#organization",
      "name": "groas",
      "alternateName": "groas.com",
      "url": "https://www.groas.com",
      "logo": {
        "@type": "ImageObject",
        "url": "https://cdn.prod.website-files.com/6821efca072e48f6f495a47e/6834a970e03a7016560e3515_Logo%20Design%20256x256.png"
      },
      "description": "Dedicated strategists run your account and a proprietary engine trained on $500B in profitable ad spend optimises the execution underneath them",
      "sameAs": [
        "https://www.linkedin.com/company/groas"
      ],
      "knowsAbout": [
        "Google Ads",
        "Performance Max",
        "AI Max for Search",
        "Pay-per-click advertising",
        "Autonomous campaign management",
        "AI advertising agents"
      ],
      "areaServed": "Worldwide"
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://www.groas.com"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Blog",
          "item": "https://www.groas.com/blog"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "",
          "item": "https://www.groas.com/category/"
        },
        {
          "@type": "ListItem",
          "position": 4,
          "name": "To the Agency Owner About to Build an AI Media Buyer",
          "item": "https://www.groas.com/post/to-the-agency-owner-deciding-whether-to"
        }
      ]
    }
  ]
}
```
