Google Ads

Step-by-step: set up conversion tracking for Google Ads on a Peoria contractor website

Install Google Ads conversion tracking on a Peoria contractor site — gtag, phone calls, forms, and offline imports with Google Help citations.

On this page
  1. Before you install code: decisions that prevent rework
  2. Step 1: Create conversion actions in Google Ads
  3. Step 2: Install the Google tag (gtag.js) on every page
  4. Step 3 (alternate): Use Google Tag Manager instead of raw gtag
  5. Step 4: Fire the conversion on form submit (event snippet)
  6. Step 5: Configure website phone call conversions
  7. Step 6: Link Google Analytics 4 (optional but recommended)
  8. Step 7: Test before you trust the dashboard
  9. Step 8: Set primary vs secondary conversions for bidding
  10. Step 9: Import offline conversions when CRM data is clean
  11. Step 10: Reconcile, coach, then optimize campaigns
  12. Common Peoria / Phoenix contractor mistakes
  13. When conversion tracking is “good enough”
  14. Bottom line
  15. FAQ

Peoria roofers, HVAC crews, and plumbing shops running Google Ads without conversion tracking are flying blind: you see clicks and calls, but not which campaigns deserve tomorrow’s budget. Google’s own conversion tracking overview is clear — you define valuable actions, tag them, then bid and report against those actions instead of guesswork.

This step-by-step tutorial is for contractor websites on WordPress, Webflow, or similar stacks serving Peoria, Phoenix, Glendale, and northwest Valley corridors. It covers the global site tag, form events, phone conversions, validation, and when to import offline booked jobs. If phones are your lifeblood, plan alongside call tracking and speed-to-lead so Google’s numbers and dispatch’s numbers eventually agree.

Before you install code: decisions that prevent rework

Contractor sites fail tracking at the definition layer, not the JavaScript layer. Answer these on paper:

  1. Primary conversion — estimate form submit, click-to-call over 90 seconds, or booked job import?
  2. Thank-you behavior — dedicated /thank-you URL vs modal vs same-page message (affects URL-based tags)
  3. Phone setup — Google forwarding only, third-party DNI, or both (avoid both on the same visible number without a plan)
  4. Who validates — owner, agency, or developer — and who fixes the theme when it breaks

Document Peoria-specific landing pages (AC repair, roof replacement, water heater) that must fire conversions. Generic site-wide goals often count blog readers and careers pages — useless for lead generation.

| Conversion action | Best for | Watch out for | | --- | --- | --- | | Form submit (primary) | Contact and estimate requests | Bot spam; double fire on refresh | | Website call (duration) | High-intent phone leads | Thresholds that are too short inflate ROI | | Call extension reporting | Mobile search call buttons | Not the same as on-site dynamic numbers | | Offline import | CRM booked jobs | Needs clean GCLID or match keys | | Page view (secondary only) | Micro-commitments | Do not optimize bids on these alone |

Step 1: Create conversion actions in Google Ads

  1. Sign in to Google Ads and open the contractor account (or MCC → sub-account).
  2. Go to Goals → Conversions → Summary (wording may vary slightly; Google moves menus — use Search in the UI if needed).
  3. Click + New conversion action.
  4. Choose Website for forms and on-site events; choose Phone calls for call-specific flows per About call reporting.
  5. Name actions clearly — Peoria - Form - Estimate beats Conversion 1.
  6. Set value if you know average job value; otherwise use same value per conversion for rough ROAS, or leave unset until data matures.
  7. Set count — for lead forms, One conversion per click is typical (conversion settings).
  8. Set click-through conversion window (30 days is common for services).
  9. Save — Google generates a Conversion ID and Conversion label for event snippets.

Repeat for each distinct action, but mark only one as primary for bidding when you are ready.

Step 2: Install the Google tag (gtag.js) on every page

Follow Install the global site tag:

  1. Copy the global site tag snippet from Google Ads (or Google Analytics if linked).
  2. Paste immediately after the opening <head> on all pages — including service-area templates for Peoria and Phoenix.
  3. If using WordPress, use a vetted header plugin or child theme — avoid pasting into a widget area that loads late.
  4. Deploy once. View page source on live site; confirm gtag or googletagmanager.com appears once.

Do not install the same tag via theme, plugin, and GTM simultaneously. Duplicate loads are a top reason contractors “double conversions” and panic-lower bids.

Step 3 (alternate): Use Google Tag Manager instead of raw gtag

If you chose GTM, read Use Google Tag Manager with Google Ads:

  1. Create a GTM container; install the container snippet in <head> and <body> per Google’s instructions.
  2. In GTM, add Google Ads Conversion Tracking tag type with Conversion ID and Label from Step 1.
  3. Create Triggers — typically Form Submission listeners or Thank You Page View (Page URL contains thank-you).
  4. Use Preview mode; submit a test form; confirm tag fires once.
  5. Publish the container version with a note (“Peoria form primary conversion”).

GTM helps when multiple stakeholders touch marketing pixels; it adds failure points if nobody owns the container after launch.

Step 4: Fire the conversion on form submit (event snippet)

For standard contact forms:

  1. In Google Ads, open the website conversion action → Tag setup → choose Use Google Tag Manager or Install the tag yourself.
  2. If manual, add the event snippet on the thank-you page only — not the form page — so partial views do not count.
  3. For AJAX forms without a redirect, fire a custom event via gtag:
gtag('event', 'conversion', {
  send_to: 'AW-CONVERSION_ID/CONVERSION_LABEL',
  value: 1.0,
  currency: 'USD'
});
  1. Replace AW-CONVERSION_ID/CONVERSION_LABEL with your real pair from Ads.
  2. Restrict firing to successful validation (honeypot empty, required fields present).

Map each Peoria service landing page form to the same primary action unless you deliberately segment (commercial vs residential).

Step 5: Configure website phone call conversions

Phone tracking splits into extension reporting vs on-site number swaps. For website calls:

  1. In Goals → Conversions, add Phone calls → Calls from website using a number you provide (wording per current Google UI).
  2. Google supplies a JavaScript snippet that displays a Google forwarding number to visitors from Ads traffic.
  3. Set minimum duration — many contractors use 60–120 seconds for “qualified conversation.”
  4. Replace the visible number on paid landing pages carefully; test click-to-call on iOS and Android.

If you use CallRail or similar DNI, decide whether Google’s forwarding number or the vendor owns Ads optimization. Mixing both on the same user session without documentation creates reconciliation nightmares — the workflow in our call tracking guide applies to northwest Valley shops too.

GA4 does not replace Ads conversions, but it helps debug paths:

  1. Link GA4 property to Google Ads under Admin → Product links.
  2. Enable auto-tagging in Ads (About auto-tagging).
  3. Mark key events in GA4 as conversions only if you understand they may differ from Ads primary actions.

Use GA4 explorations to see which Peoria landing pages assist calls; optimize pages before you touch keyword bids.

Step 7: Test before you trust the dashboard

  1. In Google Ads, open Tools → Conversions → Diagnose (or the conversion action’s status column).
  2. Submit a test form with a real email/phone you control; wait for status Recording conversions or see the hit in real-time diagnostics.
  3. Place a test call over the minimum duration from a mobile device; confirm the conversion appears (may delay).
  4. Use Tag Assistant or GTM Preview to verify single-fire behavior.
  5. Record a short Loom or screenshot for your future self when the theme updates in six months.

Step 8: Set primary vs secondary conversions for bidding

Open each action in Conversion action settings:

  • Mark primary the one action that best reflects a sales-ready lead
  • Set secondary for micro-actions (directions, short calls, email clicks)
  • Align account-default goals so campaign-level experiments use the same definition

When HVAC season spikes, secondary noise increases — revisit thresholds monthly, not annually.

Illustrative monthly conversion volume before Smart Bidding (example account)
  • Week 1 (tag live)4conv.
  • Week 211conv.
  • Week 318conv.
  • Week 426conv.

Illustrative ramp for a Peoria contractor account — not a guarantee; use your own 30-day totals.

Step 9: Import offline conversions when CRM data is clean

If dispatch books jobs days later, website tags under-report ROI. Google supports offline conversion imports — see Import conversions from ad clicks:

  1. Capture GCLID in hidden form fields or call tracking metadata when legally and technically feasible.
  2. Export booked jobs with GCLID, conversion time, and value from ServiceTitan, Jobber, HubSpot, or spreadsheets.
  3. Upload via scheduled SFTP or API integrations approved by Google.
  4. Start with won estimates only — not every lead — so the signal stays quality-weighted.

This step is optional for solo operators; it pays off when Google Ads spend exceeds five figures monthly across Phoenix-metro service areas.

Step 10: Reconcile, coach, then optimize campaigns

Weekly, same chair, same coffee:

  1. Compare Ads conversions by campaign to dispatch’s booked jobs by intake date
  2. Listen to one call that fired a conversion — was it qualified?
  3. Pause keywords that generate conversions but not revenue (wrong service, wrong side of Peoria)
  4. Fix landing page message match before raising tCPA targets
  5. Document changes — Google’s learning resets when you break tags

Pair this rhythm with operational follow-up — ads can only buy conversations your office converts. For habits, see 9 lead follow-up habits for East Valley HVAC and plumbing.

Common Peoria / Phoenix contractor mistakes

Tag on staging only — Production site never got the deploy. Always view-source on the live domain customers click.

Thank-you page indexed without noindex — SEO thin content; also skews Analytics. Noindex thank-you pages unless you have a strategic reason.

Emergency keywords without call coverage — Conversions fire while voicemail kills ROI. Fix speed-to-lead before scaling.

Competing agencies — One installs Meta pixel, another GTM, a third drops gtag in footer. Consolidate ownership.

Optimizing on spam forms — Add reCAPTCHA, honeypots, or server-side validation before Smart Bidding trusts junk.

When conversion tracking is “good enough”

You are ready to tune bids aggressively when:

  • Primary conversions fire once per intended action in tests
  • 30-day volume supports your bidding strategy (or you consciously stay manual)
  • Weekly reconciliation variance is explainable (lag, imports, thresholds)
  • Landing pages and GBP align with ad promises — use the Phoenix GBP checklist if Map pack shares credit with Search

Until then, treat Google Ads as a measured experiment, not a slot machine.

Bottom line

Conversion tracking is the bridge between Google Ads spend and booked jobs on your board. Create actions in Ads, install one reliable tag path (gtag or GTM), fire form and qualified call events deliberately, test with Google’s diagnostics, reconcile with dispatch weekly, and only then let automation chase tCPA.

Peoria contractors competing across the northwest Valley do not need more dashboards — they need trustworthy signals. Build the signal first; scale second. Questions on tags, calls, or offline imports? Contact Arizona Strategy.

Frequently asked questions

What counts as a conversion for a Peoria contractor Google Ads account?

A conversion is any valuable customer action you are willing to optimize toward — not every click and not vanity page views. For Phoenix-metro trades (roofing, HVAC, plumbing, electrical, remodeling), conversions usually fall into a short list.

Common primary conversions:

  • Phone calls from ads or site (minimum duration you define — often 60–120 seconds for real conversations)
  • Form submits on contact, estimate, or service request pages
  • Booked appointments via scheduling widgets when the integration reports reliably
  • Offline booked jobs imported from CRM or field service software (advanced, but powerful)

Secondary / observation-only actions might include:

  • Click-to-call on mobile without duration threshold (noisy)
  • “Directions” clicks if you also care about showroom traffic (rare for contractors)

Google’s overview in About conversion tracking emphasizes choosing actions that match business goals. Pick one primary conversion for Smart Bidding experiments; keep others as secondary until data is clean.

Align definitions with dispatch — see call tracking for East Valley home services so Peoria Google Ads numbers match who actually booked the job.

Should Peoria contractors use Google Tag Manager or install gtag directly on the site?

Either works if installed once and maintained. Small WordPress or Webflow contractor sites often start with gtag pasted in the theme header; growing shops with multiple tags (Analytics, Ads, Meta, call tracking) usually move to Google Tag Manager (GTM).

Choose direct gtag when:

  • One marketing person owns the site and rarely adds pixels
  • You only need Google Ads + maybe GA4
  • Your theme has a stable header injection point

Choose GTM when:

  • An agency or developer rotates tags without redeploying the whole site
  • You fire form events, click listeners, and third-party scripts
  • You test conversion changes in Preview mode before publishing

Google documents both paths under Install the global site tag and Google Tag Manager for Google Ads conversions. Whichever you pick, one Ads tag — avoid duplicate gtag loads that double-count.

After install, use Tag Assistant or GTM preview plus a test conversion in Ads to confirm firing before you turn on Target CPA or Maximize Conversions.

How do I track phone call conversions from Google Ads for a Phoenix-area contractor?

You have two official layers: call extensions / call-only ads reporting, and website call conversions using a Google forwarding number or imported call data from a tracking vendor.

Website call conversions (high level):

  • Create a Phone call conversion action in Google Ads
  • Google provides a forwarding number snippet or you configure call reporting per About call reporting
  • Set minimum call length so wrong numbers and pocket dials do not count as booked jobs
  • Replace or swap numbers carefully if you also use dynamic number insertion — double tracking breaks attribution

Many Peoria and Phoenix contractors prefer a dedicated call tracking platform for recordings and source tags, then import qualified calls as conversions. That path needs consistent rules (only calls over N seconds from paid landing pages) documented in your weekly review.

Pair call conversion setup with speed-to-lead habits — tracking proves which keywords buy calls; follow-up proves which calls become revenue. Read our East Valley call tracking guide before merging DNI with Google forwarding numbers.

Why do my Google Ads conversions not match jobs booked in ServiceTitan or Jobber?

They measure different moments in the funnel. Ads conversion tags usually fire at submit or qualified call; your CRM counts scheduled work or completed revenue days later.

Typical gaps:

  • Duplicate tags firing on thank-you page reloads
  • Forms that spam partial submissions or bot traffic
  • Calls counted at 30 seconds but dispatch only counts 2+ minute bookings
  • Cross-device journeys (research on desktop, call from car) under-reported without call tracking
  • Offline lag — job booked Thursday, imported never

Fixes:

  • Audit tag firing once per quarter (theme updates break headers)
  • Set call duration thresholds that match “conversation,” not “connect”
  • Use offline conversion imports when CRM data is clean — Google outlines imports in Import conversions from ad clicks into Google Ads
  • Reconcile weekly like a trades shop should reconcile inventory — one owner, one spreadsheet row per source

Until reconciliation is boring, avoid aggressive Smart Bidding on thin conversion volume (<30 conversions per month per action is a common rough floor; your vertical may differ).

When should a Peoria contractor turn on automated bidding based on conversions?

After primary conversion actions are accurate, stable, and numerous enough for the algorithm to learn — not the day you paste the tag.

Practical gates:

  • 30+ primary conversions in 30 days is a common starting conversation for Maximize Conversions or tCPA in local services; lower volume accounts often stay on Manual CPC or Maximize Clicks with tight geo
  • One primary action — usually qualified calls or booked forms — not five competing goals
  • Landing pages match ad promises for Peoria, Glendale, and Phoenix service areas you actually staff
  • Follow-up SLAs hold — bidding into voicemail teaches Google the wrong lesson

Use Conversion action settings to mark primary vs secondary and set counting (every vs one) appropriately: lead gen typically counts one conversion per click for forms, while e-commerce counts every purchase differently.

If seasonality swings your HVAC or roofing pipeline, combine conversion tuning with channel strategy from Google Ads vs SEO for Phoenix HVAC. Request an audit if tags, CRM, and dispatch still tell three different stories.

Sources & further reading

Arizona Strategy

Arizona Strategy helps Phoenix Valley service businesses grow with local SEO, Google Ads, lead systems, and practical AI automation. Request a free audit.