Page Summary
-
Smart campaigns help small businesses reach more online customers with minimal setup and maintenance by automatically optimizing based on business details and goals.
-
Creating a Smart campaign involves several distinct steps, including building keyword themes, retrieving budget and ad text suggestions, and creating various campaign entities.
-
Providing your Business Profile location identifier is recommended when generating suggestions or creating a Smart campaign to maximize performance.
-
Your Business Profile location identifier can be obtained from either the Business Profile API or the Business Profile UI.
-
The Business Profile location identifier should be formatted as
locations/<locationId>when used with the Google Ads API.
Smart campaigns are designed to help small businesses reach more customers online. They require minimal setup and maintenance. Smart campaigns rely on Google's advertising technology to automatically optimize the campaign based on the details of your business and your goals, whether those be customer calls, visits to your location, or actions on your website.
Campaign creation
The Smart campaign creation workflow requires a few steps that are different
from other campaign types. As a best practice, add entities in a single
GoogleAdsService.Mutate request.
Here are the steps in the Smart campaign creation workflow (the entity relationships and settings described in these steps also apply when inspecting or updating Smart campaigns in your account). Check out the complete code sample for more details.
- Build a list of keyword themes with suggestions from the
SmartCampaignSuggestService, theKeywordThemeConstantService, or with free-form keyword themes. These keyword themes are used to retrieve different tiers of budget suggestions, create keyword theme campaign criteria, and generate suggestions for ad text creatives. - Retrieve suggestions for budget amount, ad headlines, and descriptions from
the
SmartCampaignSuggestService. This service uses information about your business, the target geographic location, target language, and keyword themes to suggest ahigh,low, orrecommendeddaily budget amount, as well as up to three headlines and two description texts for the ad itself. - Create a
CampaignBudgetusing the suggested budget amount. Using the suggested budget amount helps maximize your campaign's performance. A Smart campaign budget cannot be shared with any other campaigns. - Create a
Campaignand aSmartCampaignSetting. ASmartCampaignSettingcannot exist separately from theCampaignit's associated with, so create the two entities together in the sameMutaterequest using negative temporary resource names (such ascustomers/{customer_id}/campaigns/-1) to link dependent resources. - Create a list of
CampaignCriterionobjects. This guide uses the keyword themes compiled in step 1 to create keyword theme campaign criteria, and also describes the other supported campaign criterion types. - Create an
AdGroup. A Smart campaign can have only oneAdGroupassociated with it. - Create an
AdGroupAdusing aSmartCampaignAdInfocontaining 3 to 15 headlines and 2 to 4 descriptions.
Business Profile location
When generating suggestions or configuring a campaign, provide your Business Profile location identifier to maximize the performance of your Smart campaign.
Your Business Profile location identifier can be obtained from either the
Business Profile API's name field or the
Business Profile UI.
When set on either the
SmartCampaignSuggestionInfo or
SmartCampaignSetting object, the identifier should be a
string in this format:
locations/locationId
If retrieved from the Business Profile API, the identifier is already in the
correct format. However, if retrieved from the UI, the identifier needs to be
appended to locations/.
Campaign status
To retrieve the status of a Smart campaign, call
SmartCampaignSettingService.GetSmartCampaignStatus
with the resource_name of the campaign's SmartCampaignSetting
(customers/{customer_id}/smartCampaignSettings/{campaign_id}). This method
provides a more aggregated view of a Smart campaign's status than
campaign.primary_status or
campaign.primary_status_reasons.
The GetSmartCampaignStatusResponse
includes the SmartCampaignStatus (ELIGIBLE,
NOT_ELIGIBLE, PENDING, PAUSED, REMOVED, or ENDED) along with
status-specific details:
not_eligible_details: Includes theSmartCampaignNotEligibleReason(ACCOUNT_ISSUE,BILLING_ISSUE,BUSINESS_PROFILE_LOCATION_REMOVED, orALL_ADS_DISAPPROVED).eligible_details: Includeslast_impression_date_time(the timestamp of the last impression observed in the preceding 48 hours) andend_date_time(if applicable).paused_details,removed_details, andended_details: Include the respectivepaused_date_time,removed_date_time, orend_date_timetimestamps in the customer's time zone (yyyy-MM-dd HH:mm:ss).
Considerations for reporting
Smart campaigns are designed with a simplified structure, limiting each campaign to a single ad group. This structure has specific implications for reporting:
- Ad-group-level metrics: Because there is only one ad group per Smart campaign, any performance metrics (such as clicks, impressions, and conversions) at the ad group level are identical to the metrics for the entire campaign.
- Metrics retrieval: When querying for performance data, you can retrieve metrics at the campaign level. While you can retrieve metrics at the ad group level, they don't provide additional detail beyond what is available at the campaign level.
For most reporting needs concerning Smart campaigns, querying campaign and
its associated metrics provides a complete picture of performance.