# Create Google Ads search campaign (adsap_google_create_search_campaign)

Creates a full Google Search campaign in one request: budget, campaign, location and language targeting, an ad group, keywords and a responsive search ad.

Canonical: https://adsap.ai/docs/tools/adsap_google_create_search_campaign
Updated: 2026-09-13

**Platform:** Google Ads · **Read or write:** Write · **Plan:** All plans · **Consumes a task:** Yes · **Preview supported:** Yes

## What it does

Creates a full Google Search campaign in one request: budget, campaign, location and language targeting, an ad group, keywords and a responsive search ad. The campaign is always created paused, so nothing spends until you activate it. Ask for a preview first: Google validates the whole plan without creating anything.

## Parameters

Descriptions are shortened from the tool schema. Your assistant sees the full text.

| Name | Type | Required | Description |
|---|---|---|---|
| `ad_account_id` | string | Yes | Bare 10-digit Google Ads customer ID (from adsap_google_list_ad_accounts). No dashes, no act_ prefix. |
| `campaign` | object | Yes |  |
| `campaign.name` | string | Yes |  |
| `campaign.daily_budget` | number | Yes | Daily budget in the ACCOUNT CURRENCY as a plain number (e.g. 12.50): NOT micros, NOT cents. |
| `campaign.bidding_strategy` | one of `auto`, `maximize_conversions`, `target_spend` | No | 'auto' (default) picks by preflight: maximize_conversions when conversion actions exist, else target_spend (Maximize Clicks). Set explicitly to override. |
| `campaign.search_partners` | boolean | No | Also serve on Google search partner sites. |
| `campaign.display_network` | boolean | No | Also serve on the Google Display Network. |
| `campaign.asset_automation` | object | No | Optional per-type opt-in/out of Google's asset automations at create (e.g. \{TEXT_ASSET_AUTOMATION: 'OPTED_OUT'\} stops Google generating extra RSA text). Search accepts ONLY these two types (GENERATE_IMAGE_ENHANCEMENT is rejected by Google on Search: probe-verified). Absent = Google defaults. |
| `geo` | object | Yes |  |
| `geo.location_ids` | array of string | Yes | Geo target constant ids to TARGET (from adsap_google_search_geo_targets). |
| `geo.negative_location_ids` | array of string | No | Geo target constant ids to EXCLUDE. |
| `language_ids` | array of string | No | Language constant ids. No default. Google removes language targeting from Search campaigns in late September 2026 (ads then match on the language of the ad itself). |
| `ad_group` | object | Yes |  |
| `ad_group.name` | string | Yes |  |
| `ad_group.keywords` | array of object | Yes | Search keywords with match types. |
| `ad_group.negative_keywords` | array | No |  |
| `rsa` | object | Yes |  |
| `rsa.headlines` | array of object | Yes | 3-15 unique headlines, each &lt;=30 characters. |
| `rsa.descriptions` | array of object | Yes | 2-4 unique descriptions, each &lt;=90 characters. |
| `rsa.final_url` | string | Yes |  |
| `rsa.path1` | string | No | Display-URL path segment (&lt;=15 chars). |
| `rsa.path2` | string | No | Second path segment (&lt;=15 chars, requires path1). |
| `dry_run` | boolean | No | Preview only: the request is validated and the resolved payload returned, nothing is created or changed. |

## Example prompts

- "Preview a Google Search campaign for my trail shoes at 50 dollars a day, targeting France, with these 10 keywords."
- "Create the Search campaign we just previewed."
- "Build a Search campaign for 'emergency plumber Boston' with a responsive search ad and Maximize Clicks bidding."

## Notes

With bidding set to auto, the tool picks Maximize Conversions when the account has conversion actions, otherwise Maximize Clicks with a warning. Google removes language targeting from Search campaigns in late September 2026.

## Related tools

- [`adsap_google_create_app_campaign`](/tools/adsap_google_create_app_campaign): Create a complete Google App campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with...
- [`adsap_google_create_demand_gen_campaign`](/tools/adsap_google_create_demand_gen_campaign): Create a complete Google Ads Demand Gen campaign (YouTube, Discover, Gmail, Maps and the Google Display Network) in ONE atomic request...
- [`adsap_google_create_display_campaign`](/tools/adsap_google_create_display_campaign): Create a classic standalone Google Display campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with...
- [`adsap_google_create_pmax_campaign`](/tools/adsap_google_create_pmax_campaign): Create a complete Google Ads Performance Max campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with...
- [`adsap_google_create_shopping_campaign`](/tools/adsap_google_create_shopping_campaign): Create a complete standard Google Shopping campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with...
- [`adsap_google_list_campaigns`](/tools/adsap_google_list_campaigns): List Google Ads campaigns in a Google Ads account (cache-first; auto-refreshes from Google when the cache is missing or older than 1 hour).

## Guide

Read [Google Search campaigns](/guides/google-ads/search) for the workflow around this tool, and the [Tool reference](/tools) for every tool.
