Automation · Content and publishing
Build a complete Google Ads search campaign
An AI agent builds a Google Ads Search campaign with budget, targeting, a responsive ad and keywords, then leaves it paused for review.
How do I build a complete Google Ads search campaign and review it before it spends?
A Met connected to Google Ads builds a Search campaign without mixing creation with spend. It picks the account, checks for an existing campaign and resolves the identifiers for the locations you specify. It creates the campaign with its daily budget and leaves it PAUSED, then adds targeting, the ad group, the responsive ad and the keywords you approved. Before activation, it reads ad strength and the configuration stored in the account, and shows you the budget again. Activation happens in a separate message: the Met waits for an explicit yes for that campaign and amount, even if you initially asked it to leave the campaign running. From there it can read cost, clicks and conversions already configured, or pause the campaign. It does not create conversions and there is no rollback between steps: if one call fails, earlier resources may remain created and paused.
What starts it
When someone asks for it
The recipe starts when someone on the team asks in the internal chat to prepare a search campaign and provides the offer, final URL, budget, locations, language, bid and keyword list. It is not triggered by a prospect message and does not run in the background.
A manual task: someone on the team runs it with a button, or asks the Met for it in chat.
Who runs it
Search advertising Met
Social team
Not a named, seeded Met. It is the Marketing Met with Google Ads connected, working in the ad account you already own. Its job here is to execute a structure you decide, verify what Google received, and keep the decision to spend on the human side.
What you need connected
- Google Ads Create and promote
10 steps · 13 tools
The procedure, step by step
Each step shows the tool that runs. They belong to the real connector: if one of them stopped existing, this page would not build.
- 1
Pick the account and rule out a duplicate campaign
The Met lists the accounts visible to the Google permission and works on the one you confirm. In that account it reads campaigns with their type, status and daily budget before creating anything. If it finds a Search campaign with the same name or job, it does not invent another one: it shows the existing campaign and asks whether you want to adjust it or build a new one under another name.
- 2
Resolve the locations you chose
Google Ads does not target the text "Medellin" or "Colombia" but identifiers from its catalog. The Met searches every name with the country you specified and shows the type and reach of each match so you can select the right one. It does not infer a city from the business address or widen the territory by itself.
- 3
Create the Search campaign with the confirmed budget
With the name and daily budget in the account currency, the tool first creates the budget object and then a SEARCH campaign. The campaign is born PAUSED and uses manual cost per click bidding; it still has no targeting, group, ad or keywords. The Met keeps the identifier Google returns and does not try to activate it in this step.
- 4
Apply location, language and schedule without guessing
The Met passes the chosen location identifiers to the campaign. If a language id is needed, it queries the Google catalog; schedules use the time bands you supplied, in fifteen minute increments. With no schedule it runs all the time. With no location it would run worldwide, so this step happens before building the rest and long before activation.
- 5
Create the ad group, still paused
The campaign gets the group that will contain the ad and keywords. The name and maximum cost per click bid come from what you defined with the team; the bid is optional, not a number the Met fills in to get the task out of the way. The group is also born PAUSED, so it still cannot deliver or spend.
- 6
Create the responsive search ad
The ad contains three to fifteen headlines of up to thirty characters, two to four descriptions of up to ninety, and a final URL with http or https. The Met works from the facts, offer and URL you provided; it does not invent prices, guarantees or superlatives. When the sector may touch a policy, it can first simulate so Google validates the content without creating anything, then repeat the call to create it PAUSED.
- 7
Load keywords and exclusions
The list is loaded as clean text with match type in a separate field: EXACT, PHRASE or BROAD. The recipe starts from the words you approved and uses PHRASE when you did not choose another, because that is the connector default; it does not turn a campaign idea into keywords on its own. Negative keywords are added as exclusions and never carry a bid.
- 8
Read quality and audit the stored configuration
With the structure created, the Met reads the ad strength Google assigns and the advice it returns already written. It then reads the campaign, criteria, group, ad and keywords over GAQL, and lists the campaign again to show the PAUSED status and daily budget stored in the account. A recommendation is displayed; it is not applied by itself.
- 9
Wait for a second yes before activation
The summary names the campaign, account, locations, ad, match type and daily budget, and ends with an activation question. The Met does not call this tool in the same turn in which it builds or reviews: it waits for a new, explicit response confirming that campaign and budget. Activating starts spending real money under the Google Ads configuration.
- 10
Read performance and pause if the team decides
Once active, the campaign is queried over a defined window for cost, impressions, clicks, click-through rate, average cost per click and the conversions the account already measures. This is reading for a decision, not accounting or conversion setup. If the team decides to stop it, the Met pauses it by id; that action stops spend and can be reversed with another approval.
Before you start
What you need ready
The Met solves none of these for you. If one is missing, the automation stops there.
-
A Google Ads account with access
Use the account you already advertise from. OAuth permission is granted once so Meteor can read and manage that account; the skill does not create or bill from an account of its own.
-
A Google Ads developer token
Requested from a Google Ads manager account and configured in the skill. Without that token the API does not answer even when the user can access the advertising account.
-
Campaign inputs decided by your team
Name, offer, final URL, daily budget, bid, locations, language, schedule, headlines, descriptions and keywords with their match type. The Met validates and executes those inputs; it does not choose strategy, territory or searches for the business.
-
A person authorized to approve spend
Decide who can answer the final confirmation. Creating and reviewing do not spend; activating does. The yes is requested again with the daily budget in view and is not inherited from the initial request.
The limits
What this automation does NOT solve
Better said here than discovered halfway through the rollout.
-
It does not create Shopping, Display, Video, Performance Max or Demand Gen campaigns. The connector builds Search campaigns with an ad group, responsive ad and keywords.
-
It does not configure or measure new conversions. It reads the conversion field the account already has; if it is zero because nobody set up measurement, this recipe does not install or repair it.
-
It does not decide strategy, budget, bid, keywords or location. It executes the values your team confirms and shows what Google returns.
-
It has no transaction or end-to-end rollback. Every step creates its own resource, and if a later step fails, earlier resources can remain in the account, even though they stay paused.
-
If campaign creation fails after Google created the budget, an orphan budget remains. The error returns its identifier, but removing it and reconciling the resources that were created are manual tasks in Google Ads.
-
It does not activate in the same step in which it creates. Activation is a separate call, starts spending real money and only happens after an explicit answer with the daily amount in view, and only after a new message from the authorized person.
-
It does not create message ads or the Google asset that opens a WhatsApp chat. This recipe uses a standard Search ad with the final URL you provide and makes no click-to-message promise.
FAQ
Questions about this automation
It is complete for this Search scope: budget, targeting, ad group, responsive ad and keywords, all created and paused. It does not include conversions, extensions, Shopping, Display, Video or Performance Max. Review happens before any activation decision.
The initial request authorizes assembly, not spend. After creating, the Met shows the daily budget stored in Google Ads and waits for a new message confirming that campaign and amount. Only then does it call activate.
It lists campaigns in the account before creating and compares name, type, status and budget. If it finds one that appears to solve the same job, it shows it and asks. Google does not enforce unique names, so the control depends on this check, not a constraint.
Earlier work is not rolled back. A campaign, group or ad already created remains in the account and paused. If the failure happened between budget and campaign, the orphan budget remains and the error returns its identifier. Your team must remove it by hand and reconcile the resources that were created before retrying.
It can read conversions that Google Ads already attributes to the campaign in the account. It does not create the conversion action, install a tag or decide how it is counted. A zero may mean there were no conversions or measurement was not configured.
Not as part of this recipe. Your team supplies and approves the list and match type. The Met validates Google limits, loads the keywords, and can later read search terms so you can decide which negatives to add.
This recipe does not create Google's messaging asset or promise click-to-WhatsApp. It creates a standard search ad and uses the final URL you defined. First-class ads that open WhatsApp live in Meta Ads today, not in this flow.
Keep going
Other automations built on the same tools
Operations and reporting
Create a weekly Google Ads report in Google Sheets
How do I send a weekly Google Ads report to Google Sheets without duplicate rows?
Social
- Starts:
- when someone asks for it
- Steps:
- 5, with 5 real tools
- Needs:
- Google Ads · Google Workspace
Content and publishing
Build a Meta Ads campaign that moves the conversation to WhatsApp
How do I build a Meta Ads campaign that opens WhatsApp without assembling each part separately?
Social
- Starts:
- when someone asks for it
- Steps:
- 7, with 8 real tools
- Needs:
- Meta Ads
Content and publishing
Publish to Instagram and Facebook the moment somebody approves the piece
How do I publish to Instagram and Facebook without scheduling every piece by hand?
Social
- Starts:
- when a record changes state
- Steps:
- 5, with 11 real tools
- Needs:
- Facebook and Instagram · Replicate
Content and publishing
Publish a Webflow article with human review and approval
How do I publish a Webflow article without duplicating it or taking it live before review?
Social
- Starts:
- when someone asks for it
- Steps:
- 6, with 9 real tools
- Needs:
- Webflow
Want this automation running on your own data?
We will show it to you with your accounts connected, not with a canned demo.