Before you begin
You need:- A connected Google Ads account in HireOtto.
- The Google Ads customer ID without hyphens.
- Standard access to a HireOtto plan. URL tracking uses the core Google Ads tools available on Free, Starter, Pro, and Agency.
- Sufficient Google Ads permission to edit the selected account or entity. Read-only account access cannot save changes.
- The campaign, ad-group, or ad ID when you want a lower-level override.
Choose the right field
Supported scope
Inspect the current setup
Start with the account and campaign that own the rule. Include lower levels when you suspect an override.For Google Ads customer 1234567890, review the current URL tracking setup for campaign 111222333. Include the account, campaign, ad-group, and ad levels wherever available. Show tracking templates, final URL suffixes, custom parameters, final URLs, inherited values, and the exact entity IDs. Do not change anything.
For Google Ads customer 1234567890, inspect ad 444555666 and show its campaign ID, ad-group ID, ad type, final URLs, tracking template, final URL suffix, and custom parameters. Do not change anything.
Set account-level defaults
Account-level tracking applies broadly. Use it only when the same rule should be the default across campaigns. You can update:tracking_url_templatefinal_url_suffix
For Google Ads customer 1234567890, set the account tracking template to {lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={campaignid} and leave the final URL suffix unchanged. Show the exact proposed change and wait for my approval before saving it.
For Google Ads customer 1234567890, set the account final URL suffix to utm_source=google&utm_medium=cpc and leave the tracking template unchanged. Show the exact proposed change and wait for my approval before saving it.
Set campaign-level tracking
Use the campaign level when the campaign needs its own naming convention or tracker while its ad groups and ads can inherit the same rule.For Google Ads customer 1234567890 and Search campaign 111222333, set the tracking template to {lpurl}?utm_source=google&utm_medium=cpc&utm_campaign={_campaign}, set the final URL suffix to utm_content={creative}, and replace the campaign custom parameters with campaign=brand_search. Leave every non-URL campaign setting unchanged. Show the exact diff and wait for my approval before saving it.
Set ad-group tracking
Use an ad-group override only when that ad group needs a different value from its campaign.For Google Ads customer 1234567890, campaign 111222333, and ad group 222333444, set the final URL suffix to utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_adgroup={adgroupid}. Leave the tracking template and custom parameters unchanged. Show the exact diff and wait for my approval before saving it.
Update a Search or Demand Gen ad
An ad-level value is the most specific override. Use it sparingly because it is easier for account-wide conventions to drift.For Google Ads customer 1234567890 and ad 444555666, set the final URL suffix to utm_source=google&utm_medium=cpc&utm_campaign={campaignid}&utm_content={creative}. Leave the final URL, mobile final URL, tracking template, custom parameters, headlines, descriptions, paths, and status unchanged. Show the exact proposed change and wait for my approval before saving it.
For Google Ads customer 1234567890, inspect Demand Gen ad 444555666 and prepare a direct update that changes only its top-level final URL suffix to utm_source=google&utm_medium=cpc&utm_campaign={campaignid}. Preserve the ad ID, creative, status, top-level final URL, mobile final URL, tracking template, and custom parameters. Do not change carousel-card URLs. Show the exact diff and wait for my approval.
Clear a value
Clearing and omitting are different:For Google Ads customer 1234567890 and campaign 111222333, clear the campaign tracking template and final URL suffix. Leave its custom parameters and every other campaign setting unchanged. Explain what higher-level values may apply afterward, show the exact diff, and wait for my approval before saving it.
For Google Ads customer 1234567890, campaign 111222333, and ad group 222333444, remove all custom parameters from this ad group. Leave its tracking template, final URL suffix, status, name, bid, and all other settings unchanged. Show the exact diff and wait for my approval before saving it.
Custom parameter limits
HireOtto validates custom parameters before sending the change to Google Ads:- Maximum 8 custom parameters per supported entity.
- Keys must contain letters and numbers only.
- Pass the key without the leading underscore.
- A key can be at most 16 UTF-8 bytes.
- A value can be at most 200 UTF-8 bytes.
- Keys must be unique regardless of capitalization.
- An update replaces the full existing set; it is not a partial merge.
{_campaign} and {_source} in the tracking template or suffix.
Credits and access
- Reading Google Ads entities uses 1 credit per tool call.
- Search campaign, account-tracking, Search ad-group, and ad URL updates use 2 credits per tool call.
- A Demand Gen campaign update uses 3 credits per tool call.
- Free, Starter, Pro, and Agency plans include the core Google Ads tools, subject to the plan’s credit allowance and access period.
- Accounts connected through an additional Google login require Agency.
Verify every change
A successful update response confirms that Google Ads accepted the request. It does not prove that the final click route is correct. After a write:- Read the affected entity again where the field is available.
- Confirm the account, campaign, ad-group, or ad ID.
- Confirm only the intended URL fields changed.
- Use the Test action in Google Ads URL options.
- Open a real landing page and confirm the final host, path, redirects, and query parameters.
- Check that analytics and third-party tracking receive the expected values.
Verify the URL tracking change for Google Ads customer 1234567890 and campaign 111222333. Read the affected campaign and its ads, restate the saved tracking template, final URL suffix, and custom parameters wherever available, identify inherited or overriding values, and flag anything that differs from the approved change. Do not make another change.
Common failures
The landing page breaks
Account-, campaign-, and ad-group-level tracking templates must insert the final URL with a supported ValueTrack parameter such as{lpurl}. A missing or invalid insertion parameter can produce a broken click URL.
Google rejects the suffix
Pass the suffix as query parameters without a leading?. Check separators, unsupported ValueTrack parameters, and malformed percent encoding.