Built in-house by Uppercut Digital

Signed deal in.
Campaign build out.

The Campaign Build Console turns a signed HubSpot deal into a Google Ads build, researched through Google's own APIs and written by a language model. A person approves every step.

Google Ads API Keyword Planner Google Analytics 4 Search Console Business Profile Drive Meta HubSpot Australian Business Register

What the console reads, through each platform's own API

Stylised illustration. Not the real interface or a real client.

The category question

What technology is powering the cutting edge for agencies and clients this year?

For us: Google's APIs, a language model, and a person.

Google's APIs aren't new. What changed in 2026 is what can sit on the other end. A model can now read a client's sales notes and website, call those same APIs for real data, and write a build a person would happily sign off.

What the client told us

HubSpot deal, brief, call notes, pitch deck, questionnaire, live website.

The console

A language model drafts the build against our written standards, with real data from Google's APIs and the ABR. An AI reviewer checks it.

Google Ads

A person approves. The build goes in through the Google Ads API, every campaign paused, then a 19-point launch check reads it back.

How it works

Seven steps. A person signs off.

Ad copy was never the slow part of taking on a new client. The slow part was everything around it. So that is what we wrote software for.

  1. A deal is marked closed-won in HubSpot

    That is the trigger. The console picks up the new client from the CRM.

  2. It gathers everything we know

    The sales rep's brief, the call notes, the pitch deck, the client's questionnaire and their live website. If they already run Google Ads, it audits the last 90 days of the account, search terms report included.

  3. It does the research

    Keyword research goes through the Google Ads API, so volumes and costs are real. It looks at competitors and their ads, maps keywords to landing pages, and pulls demographic, location and Australian Business Register data for the client's market.

  4. It drafts the build against our written standards

    When inputs conflict, the sales rep's brief beats the questionnaire, and the questionnaire beats the website. A $1,500 a month client gets one focused campaign, not five thin ones.

  5. An AI reviewer checks it

    Every Google Ads and Meta build is checked against our build standards before a person sees it for approval.

  6. A person edits in plain English and approves

    The team reads the build, asks for changes in plain words ("Edit with Claude") and approves it. Nothing moves forward without that approval.

  7. It is versioned into Drive. Never launched automatically.

    Client feedback becomes V2, then V3, in their Drive. A build already in Drive is never drafted over without permission.

Audience research

Who the client is, and who they serve.

Before a keyword is chosen, the console checks the business on the Australian Business Register and pulls demographic and location data for the client's service area. It matters for targeting, and for what an ad is allowed to promise.

Australian Business RegisterABN lookup
Entity
Demo Dental Co Pty Ltd
ABN status
Active
Entity type
Australian private company
GST
Registered
Main location
NSW 2154
Trading names
Demo Dental, Demo Smiles

Why it matters: trading names become brand keywords and negatives, and the registered location anchors the geo targets.

Service area and audienceLocation data
Families with kids62%
Aged 35 to 5434%
Aged 55 plus27%
Searches on mobile71%

What the build does with it: radius targeting around the practice, family and implant ad groups split, mobile-first ads with a call extension.

Demo client and sample figures, for illustration

Keyword analysis

Real volumes, real costs, a verdict on each.

Keyword research goes through the Google Ads API, so volumes and bids are Google's own. Each keyword is mapped to an ad group and a landing page, and keywords that already converted in the 90-day audit come across first.

Keyword Planner, via the Google Ads APIDemo Dental Co
KeywordMatchAvg monthly searchesTop of page bidAd groupLanding pageVerdict
dental implants near mePhrase1,900$9.40 to $24.10Implants/dental-implantsConverted before
emergency dentistExact2,400$6.80 to $17.30Emergency/emergencyKeep
kids dentistPhrase880$3.10 to $8.60Family/childrens-dentistryKeep
teeth whiteningPhrase1,300$2.90 to $7.80Cosmetic/teeth-whiteningKeep
dental implants costPhrase720$7.20 to $19.50Implants/dental-implantsKeep
dental assistant jobsPhrase590$1.10 to $3.40NoneNoneNegative
-jobs-course-free-diy-salary-university-bulk billing-vet

Health clients: keywords Google's health ad policy will flag are either sent for policy review with the deploy, or held back and listed for a person.

Demo client and sample figures, for illustration

The ads

Written from the client's words, checked before a person sees them.

dental implants castle hill
Sponsored
D
Demo Dental Codemodental.example/dental-implants
Dental Implants Castle Hill | Free Implant Consult | Demo Dental Co

Local implant dentist with payment plans. Book a free consult online or call today. Same week appointments for new patients.

Sponsored
D
Demo Dental Codemodental.example/emergency
Emergency Dentist Castle Hill | Open Saturdays | Call Now

In pain? Same day emergency appointments when available. Call our team now or book online in a minute.

30/30Character limitsEvery headline and description is counted before it is allowed into the build.
FOUNDOffer is really on the site"Free implant consult" is only used because the reviewer found it on the client's page.
200 OKEvery URL crawledEach final URL and sitelink is loaded before it goes in. A dead page never makes it.
MAPPEDSuburbs to Google locationsA pre-flight check resolves every location to a Google geo target and stops the deploy if one fails.
HELDHealth policyAd text and keywords Google's health policy would flag are held or sent for review.

Demo client and sample ads, for illustration

What comes out

The work we used to make by hand.

Google Ads

Search build

Ready to import. Campaigns, ad groups, exact and phrase keywords, ads, sitelinks, callouts, snippets and negative keywords.

Meta

Paid social build

A Meta build across the funnel.

For the client

Plan, deck and audit

A campaign plan, strategy deck and account audit we can hand straight to the client.

SEO

Domain map

For SEO clients, an SEO domain map and a deliverables sheet.

Features

What it does that a template can't.

Google Ads API

Deploys in one pass

An approved build goes straight into the client's account through the API, hundreds of items, every campaign paused.

Pre-flight

Geo check before anything is created

Every location resolves to a Google geo target or the deploy stops. On our first live deploy it caught a suburb that didn't match.

Launch

19-point launch checklist

After a deploy it reads the live account back through the API, marks what passed, and leaves judgement calls to a person.

Inputs

Client's words beat templates

The sales brief beats the questionnaire, and the questionnaire beats the website. Budget decides the structure.

Audit

90-day account audit

For clients already on Google Ads, search terms and converting keywords from the last 90 days feed the new build.

Policy

Health policy handling

Spots what Google's health ad policy will flag, and submits it for review or holds it for a person.

Reviewer

An AI reviewer with a scorecard

Fixed checks first, then a judgement against our standards. A rule graduates after 10 agreed builds in a row.

Edit

Plain-English edits

"Split the implants ad group by suburb." The team asks for changes in words, and every revision is versioned in Drive.

MCP

Runs from Claude too

The same engine runs as an MCP server, so the team can drive it from Claude as well as the console.

Guardrails

Nothing goes live without a yes.

Live changes

Preview, then a confirm code

Any change to a live account is previewed first and needs a confirm code a person approved.

Performance Max

Always created paused

Any Performance Max campaign in a build is created paused. Switching it on is a separate decision.

Reviewer

Trust is earned rule by rule

The AI reviewer keeps score of whether the team agreed with it. A rule only graduates after 10 agreed builds in a row. One disagreement resets it.

Real sites

Every URL is crawled

Every sitelink and landing page URL is crawled before it is allowed into a build.

Key numbers

Days of work, now an hour or two.

< 72 hrsFrom signed deal to research, strategy deck and campaigns ready for a new client. It used to take 2 to 3 weeks.
18Clients with Google Ads builds since July 2026. 34 versions once client revisions are counted.
~US$1Model cost per service per build, where a manual build took hours of staff time.
11Google Ads builds approved since August 2026.
6 / 15 / 4Meta builds, strategy decks and SEO domain maps over the same period, plus 7 tracking audits.
377Items created in one pass on our first live deploy: 2 campaigns, 7 ad groups, 86 keywords, 7 ads and 156 negatives, all paused.
~490Updates shipped by our own team between 16 July and late October 2026.

Figures from Uppercut Digital's own records. It is an internal tool. We don't sell it. What it gives us is time for strategy and for looking after clients.