Google Ads Conversion Tracking: A 2026 Implementation Guide
Conversion actions, GA4 import, enhanced conversions, calls, and the June 2026 shift toward Data Manager for offline uploads — set up so one real outcome becomes one usable conversion.

Updated July 22, 2026.
Google Ads conversion tracking can receive outcomes from a website, Google Analytics 4, an app, phone calls, CRM or offline systems. The correct setup is not “install the Google tag.” It is to create the right conversion action, choose the right data source, preserve identifiers and values, decide whether the action belongs in bidding, and prove that one real outcome produces one usable conversion.
Verification boundary. This guide was checked against official Google Ads advertiser help, developer documentation, and release notes available on July 22, 2026. It does not rely on agency blogs, community posts, or third-party tutorials. Interface labels can differ during account-level rollouts. Where the official documentation describes a pilot, gradual rollout, regional limit, or incomplete availability, the guide says so rather than assuming access.The June 2026 offline-upload and enhanced-conversion changes are material; older tutorials that route every CRM upload through the Google Ads API can now be wrong for new integrations.
What Google Ads calls a conversion
Google Ads stores a measurable outcome as a conversion action. Conversion actions can be grouped under goals, selected at the account or campaign level, and marked primary or secondary. A conversion action can be created directly in Google Ads, imported from GA4, derived from an app or phone source, or uploaded from an offline system.
| Source | Use it for | Important constraint |
|---|---|---|
| Website—Google Ads tag | Page loads, clicks, form completions, purchases and other site actions | Use event code or Tag Manager when dynamic values, transaction IDs or enhanced-conversion data matter. |
| Website—URL rule | A unique confirmation URL that reliably represents completion | Not appropriate for dynamic values, transaction IDs or enhanced-conversion data. |
| Google Analytics 4 import | Existing GA4 key events you want available in Google Ads | No historical backfill; Analytics-created conversions are secondary by default. |
| App | Installs, first opens and in-app actions | Typically requires Firebase, an app analytics provider, or an approved app measurement path. |
| Phone | Calls from ads, assets, a website or imported call records | Availability and forwarding-number behavior vary by country and call setup. |
| Offline / CRM | Qualified leads, opportunities, closed sales and other later outcomes | Capture click IDs and/or first-party lead data early; use the current Data Manager/enhanced-conversion path. |
Step 1: Design the conversion actions before creating them
Create a specification for each outcome. For lead generation, a defensible sequence is usually:
| Business stage | Suggested Google Ads action | Typical bidding role |
|---|---|---|
| Form submitted | Submit lead form or a closely matching category | Primary only when lead volume and quality are acceptable; otherwise secondary. |
| Meeting booked | Book appointment | Often a stronger primary action than raw forms. |
| Qualified lead | Qualified lead uploaded from CRM | Primary when volume is sufficient and upload latency is controlled. |
| Opportunity | Converted lead or a custom lifecycle action | High-value primary or value-based signal. |
| Closed customer | Purchase or closed-sale action with real value | Use for value-based bidding when volume and attribution coverage support it. |
Do not create multiple actions that count the same outcome and leave all of them primary. A page-load action, a button-click action and a GA4-imported action may all represent the same form submission. Keep one canonical primary action; retain alternatives as secondary diagnostics only when they serve a clear purpose.
Step 2: Create a website conversion action
- In Google Ads, open Goals, then the conversion summary, and choose to create a conversion action.
- Select Website and choose or create the website data source.
- Scan the domain when Google offers the scan. Review detected pages and existing tags rather than assuming the scan proves the implementation is complete.
- Create the conversion action. Choose the goal/category, name, value behavior, count behavior, conversion windows, attribution setting and optimization status shown in your account.
- Choose a setup path: a URL-based rule, manual event code, Google Tag Manager, or an eligible partner integration.
- Save the action and record its conversion ID and conversion label if the implementation uses a Google Ads event tag.
Use a URL rule only when the URL itself proves completion
A URL rule is appropriate for a unique confirmation page that cannot be reached before the action completes and does not need a dynamic value or transaction ID. Configure the URL condition, test every allowed URL variant, and prevent search engines or users from reaching the page outside the intended flow.
Do not use a URL rule for a single-page application that changes state without a reliable page load, a form that stays on the same URL, a purchase that needs order revenue, or any event that needs enhanced-conversion fields.
Use manual event code or Google Tag Manager for action-level events
For direct code, install the Google tag once and fire the conversion event only when the business action succeeds. For Tag Manager, create a Google Ads Conversion Tracking tag using the conversion ID and label, map value, currency and transaction ID variables, add a trigger that represents success, and ensure a Conversion Linker is present where required by the official Tag Manager workflow.
// Illustrative gtag event. Replace all placeholders with values from Google Ads.
gtag('event', 'conversion', {
'send_to': 'AW-CONVERSION_ID/CONVERSION_LABEL',
'value': ORDER_VALUE,
'currency': 'USD',
'transaction_id': ORDER_ID
});The transaction ID should be stable and unique for the business transaction. Do not generate a new random ID every time the confirmation page reloads; that defeats duplicate protection.
Step 3: Set values and counting correctly
Purchases and subscriptions
Send the actual conversion value and ISO currency when the platform action represents revenue. Use a stable transaction ID. Decide whether the value should be gross revenue, net revenue, contribution margin or another business value, then use that definition consistently across all channels and reporting.
Lead generation
A fixed lead value is better than zero only when it reflects a documented expected value. For example, expected lead value can be modeled from lead-to-sale rate and average contribution value. Do not assign arbitrary values merely to activate value-based bidding. If later CRM stages are uploaded with better values, make the relationship between the early lead and later event explicit so bidding is not taught that both are separate customers.
Count setting
Use a single-count approach for lead actions that should count once per ad interaction; use every-count behavior for purchases when multiple legitimate orders should each count. Confirm the current label and description in the conversion-action settings because Google can revise interface wording.
Step 4: Import GA4 key events when Analytics is the intended source
- Link the GA4 property and Google Ads account with the correct permissions and data-sharing settings.
- In Google Ads, create/import a conversion from Google Analytics.
- Select the GA4 key events to import and complete the import.
- Review the resulting Google Ads conversion actions. Official guidance says Analytics-created conversions are secondary by default; change the optimization status only after comparing them with any native Google Ads actions.
- Allow for processing. Imported conversions do not backfill activity that happened before the import.
Use GA4 import when the Analytics event is already the governed source and its timing, value and deduplication are correct. Use a native Google Ads action when you need Google-specific enhanced conversions, direct control of conversion parameters, or a separate optimization signal.
Step 5: Configure enhanced conversions
Enhanced conversions use consented first-party customer data—such as email, phone or address fields—transformed with SHA-256 where required, to improve matching. Google unified enhanced conversions for web and leads under a common account-level setting in June 2026, and its April/June updates allow multiple eligible data inputs.
- Confirm your notice, consent and data-use basis before collecting or transmitting customer data.
- Turn on enhanced conversions in the current Google Ads account settings.
- Choose an implementation path supported for the conversion: Google tag, Google Tag Manager, a partner, Data Manager or another current official path.
- Map only fields you legitimately collect. Normalize them according to Google’s current instructions before hashing when your chosen implementation requires you to hash.
- Use diagnostics to confirm the fields are received and matching. Do not treat “tag fired” as proof that enhanced data is usable.
Step 6: Send qualified leads and offline sales
For a new July 2026 implementation, design around enhanced conversions for leads and Google Ads Data Manager, not an old tutorial that assumes the legacy Google Ads API upload path is universally available. Google’s official offline-conversion page says uploads migrated toward the Data Manager API on June 15, 2026 and that Google Ads API upload access is restricted for developer tokens that are not allowlisted for the legacy workflow.
Capture at lead creation
- GCLID and, where relevant, other Google click identifiers supported by the current workflow.
- Original landing URL and timestamp.
- Consented first-party identifiers used for enhanced conversions for leads.
- The internal lead/contact ID that survives deduplication and CRM merges.
- Consent state and collection source.
Create the offline action
- Create a conversion action for the lifecycle stage—qualified lead, opportunity, purchase or another supported category.
- Set value, count, attribution and optimization behavior.
- Configure the Data Manager source, eligible partner, scheduled file or current API path shown in the account.
- Map click IDs and/or first-party matching fields, conversion timestamp, value, currency and order/transaction identifiers.
- Upload a small controlled test set first. Confirm processing status and individual row errors before automating.
- Schedule ongoing uploads frequently enough that bidding receives timely feedback.
Use adjustments or retractions when the official workflow supports them and the source transaction changes. Do not silently leave cancelled orders or disqualified conversions in the training data.
Step 7: Track calls
Google documents several call-conversion paths: calls from call assets or call ads, calls to a number on your website after an ad interaction, clicks on a phone number on a mobile website, and imported call data. Choose the path that reflects whether the business needs a dial, a connected call, a duration threshold or an offline qualified-call outcome.
- Create a phone-call conversion action and select the applicable source.
- Configure call length, value and count behavior.
- For website calls, follow the official Google forwarding-number setup and test number replacement on eligible devices and geographies.
- For imported calls, preserve the required ad interaction and call identifiers and upload the qualified outcome.
- Reconcile Google call records against the call platform or CRM.
Step 8: Track app conversions
App conversion tracking can cover installs, first opens, purchases and other in-app events. Use Firebase or another supported app analytics or attribution path, link the app data source, import/create the events, then verify that the events are available for the intended App campaign objective.
Campaign-level goal control
After the actions exist, inspect which account-default goals or campaign-specific goals each campaign uses. A technically perfect action that is not selected cannot guide that campaign. Conversely, a weak micro-conversion left in an account-default primary goal can redirect bidding across many campaigns.
QA checklist
- Google tag or Tag Manager container is installed once in the intended environment.
- Consent behavior is tested before and after the user choice.
- Each conversion fires only after success, not on form initiation or button press unless that is the declared event.
- Value and currency match the source order or documented lead-value model.
- Transaction ID is stable across reloads and shared where duplicate protection requires it.
- Enhanced-conversion diagnostics show usable customer fields rather than only a base event.
- GA4-imported and native actions are compared for duplication.
- Offline test rows process without unresolved errors and can be traced to CRM records.
- Primary/secondary status and campaign goal selection match the measurement plan.
- Google Ads totals are reconciled with the order, CRM, call or app source over a defined test period.
Common failures
| Failure | Why it happens | Correction |
|---|---|---|
| Every page view is counted as a lead | Trigger attached to the base tag or wrong URL rule | Move the event to the confirmed success condition and test excluded pages. |
| Purchases duplicate on refresh | No stable transaction ID or event re-fires on page load | Use the order ID and prevent repeated client execution. |
| GA4 and Google Ads both optimize to the same event | Imported and native actions both left primary | Choose one canonical primary action; keep the other secondary only if useful. |
| CRM uploads have low match rate | Click/lead identifiers were not stored at acquisition | Capture identifiers and consented first-party data in the form/CRM workflow. |
| New API build fails after June 2026 | Implementation follows legacy Google Ads API upload tutorial | Use Data Manager/current supported integration unless the developer token is explicitly eligible. |
| Campaign ignores the new action | Action not selected in the campaign’s goals | Review account-default and campaign-specific goal configuration. |
Implementation blueprints
B2B lead-generation blueprint
| Action | Source | Value | Optimization |
|---|---|---|---|
| Form accepted | Google Ads website event | Documented expected lead value or none | Primary only while it is the best reliable signal |
| Meeting booked | Scheduler success event or backend | Expected meeting value | Often primary |
| Qualified lead | CRM through Data Manager/enhanced conversions for leads | Expected qualified-lead value | Primary when volume and latency support it |
| Closed won | CRM/order system | Actual agreed revenue or contribution value | Value-based bidding when viable |
Acceptance criteria: one website lead per accepted form; identifiers persist into CRM; the later conversion uses the actual stage-change time; upload errors are monitored; and only the intended stage is primary for each campaign.
Ecommerce blueprint
| Action | Method | Required controls |
|---|---|---|
| Purchase | Native Google Ads event or governed GA4 import | Dynamic value, ISO currency and stable transaction ID |
| Refund/cancellation | Current adjustment/retraction workflow | Same transaction reference and documented correction reason |
| Phone order | Imported call/offline outcome | Call/ad identifier, qualified outcome and actual value |
Do not mix a GA4 purchase and native Google Ads purchase as two primary revenue actions. Choose one source for bidding and reconcile it against the order system.
Developer handoff
The developer handoff should include the Google Ads conversion ID/label, exact success callback, data-layer variable names, value and currency data types, transaction-ID source, consent behavior, test order/lead IDs, environment exclusions, enhanced-conversion field mapping and rollback instructions. It should not include credentials in a ticket or document.
Release acceptance criteria
- Test lead/order can be found in the source system and Google Ads diagnostics.
- Reload and retry do not create a second conversion.
- GA4/native duplicates are intentionally primary or secondary.
- Offline rows arrive with acceptable latency and no unresolved errors.
- Campaign-specific goals have been audited after creation.
- The measurement owner has signed off on value and counting definitions.
Verification record
Technically verified: July 22, 2026
Official-source rule: Every platform-specific instruction and feature statement in this article is grounded in an official Google Ads source. The implementation recommendations are editorial guidance from The Ad Spend and are labeled as such.
Known limits at publication
- Some call features and forwarding numbers are country-dependent.
- App setup differs by Firebase, third-party analytics or mobile measurement provider.
- Data Manager connectors and enhanced-conversion options can vary by account, source and rollout.
- The Google Ads API legacy offline upload path is not assumed to be available to new integrations after the June 15, 2026 migration notice.
Official sources consulted
- Set up your web conversions
- Set up your conversions
- Set up conversions manually with code
- Set up URL-based conversions
- Google Ads conversion tracking in Tag Manager
- Import Google Analytics conversions
- Import offline conversions
- Updates to enhanced conversions
- About enhanced conversions
- Enhanced conversions for leads
- Phone call conversion tracking
- Mobile app conversion tracking
Related conversion tracking references
The Ad Spend
A conversion action that no one can explain later is a measurement liability. The Ad Spend keeps the operating record around changes, timing, and decisions, giving analysts cleaner context when they interpret what a test or model is actually measuring. See History.