Laptop with analytics charts on the screen
Article

GA4 Setup for Small Businesses: Conversion Tracking with Google Tag Manager

· April 30, 2025· 4 min read
Back to Blog

If your analytics only reports pageviews, you’re flying blind. This guide shows how to implement Google Analytics 4 (GA4) with Google Tag Manager (GTM), name events correctly, and measure real outcomes—form submissions, phone/email clicks, downloads, and bookings.


What you’ll set up

  • GA4 property with data streams
  • GTM container to manage tags without code deploys
  • Key events & conversions (e.g., 'generate_lead', 'submit_form', 'click_phone')
  • Search Console connection for queries & indexing insights
  • Basic dashboards that tie marketing to leads

Step 1 — Create a GA4 property

  1. In Google Analytics, create a GA4 property → add Web data stream for your domain.
  2. Copy the Measurement ID (looks like 'G-XXXXXXX').
  3. Disable Enhanced Measurement items you don’t want (you’ll control events through GTM).

Tip: Keep Enhanced Measurement “on” to start, but don’t rely on it for critical conversions—GTM events are more explicit and portable.


Step 2 — Install Google Tag Manager

  1. Create a GTM container for your site.
  2. Add the GTM head and body snippets to your site template (or via your CMS integration).
  3. In GTM, add a GA4 Configuration tag:
    • Measurement ID = your 'G-XXXXXXX'
    • Trigger = All Pages
    • Save & submit.

Use GA4’s recommended event names where possible—Google treats some as key conversions out-of-the-box.

Core lead events for service businesses

  • 'generate_lead' — successful form completion or high-intent contact
  • 'submit_form' — generic form submit (use only if you can’t confirm success)
  • 'click_phone' — tap-to-call ('tel:' link)
  • 'click_email' — clickto-email ('mailto:' link)
  • 'file_download' — proposal/guide downloads
  • 'view_item' / 'select_item' — service/package clickthroughs
  • 'purchase' — if you sell templates or deposits online

Use parameters to add context (e.g., 'form_id', 'form_name', 'lead_type').


Step 4 — Implement events in GTM

A) Phone & email click tracking

Triggers

  • Link Click trigger where 'Click URL starts with tel:' → name it Tel Clicks
  • Link Click trigger where 'Click URL starts with mailto:' → name it Mailto Clicks

Tags

  • GA4 Event: 'click_phone'

    • Parameters: 'link_url={{Click URL}}', 'link_text={{Click Text}}'
    • Trigger: Tel Clicks
  • GA4 Event: 'click_email'

    • Parameters: 'link_url={{Click URL}}', 'link_text={{Click Text}}'
    • Trigger: Mailto Clicks

B) File downloads (PDFs, docs)

Trigger: Link Click where 'Click URL matches RegEx' '.(pdf|docx?|xlsx?|pptx?)$'
Tag: GA4 Event 'file_download'
Parameters: 'file_url={{Click URL}}', 'file_name={{Click URL}}'

C) Form submissions (no code access)

If your forms redirect to a “thank you” page, use a Page View trigger on that URL and fire 'generate_lead'.

If your forms submit AJAX (stay on the same page), listen for a success signal:

  • Many form builders dispatch a DOM event or add a success element.
  • Use a DOM Element or Custom Event trigger in GTM.

Example (Custom Event trigger named 'form_success'):

  • Tag: GA4 Event 'generate_lead'
    • Parameters: 'form_name=contact', 'lead_type=quote'
    • Trigger: Custom Event with Event Name = 'form_success'

If you control the form code, push a dataLayer event on success:

<script>
  // Call this only after the form is actually accepted by the server
  window.dataLayer = window.dataLayer || [];
  window.dataLayer.push({
    event: "form_success",
    form_name: "contact",
    lead_type: "quote"
  });
</script>

Then map those to GA4 event parameters in the tag.


Step 5 — Mark conversions in GA4

In GA4 Admin → Data display → Conversions, toggle the events you care about:

  • 'generate_lead' (primary)
  • 'click_phone', 'click_email' (optional)
  • 'file_download' (optional)
  • Any checkout or booking events

Keep your “Conversions” list focused—too many will muddy reports.


Step 6 — Connect Search Console

  1. In GA4 Admin → Product Links → Search Console, link your property.
  2. In Search Console, verify your domain and submit your sitemap.
  3. Use the Search Console reports in GA4 to correlate queries → landing pages → conversions.

Step 7 — QA & publish

  • Use Preview mode in GTM and the DebugView in GA4 to verify events.
  • Test on desktop and mobile.
  • Publish the GTM container once everything fires correctly.

Event naming & parameter cheat sheet

Event names (copy/paste)

generate_lead
submit_form
click_phone
click_email
file_download
view_item
select_item
purchase

Useful parameters

form_name, form_id, lead_type
link_url, link_text
file_url, file_name
page_location, page_referrer
value, currency

Simple scorecard dashboard (what to watch)

  • Leads by source/medium (generate_lead)
  • Phone vs. form split (click_phone vs. generate_lead)
  • Top landing pages → conversion rate
  • Core Web Vitals trend (from PSI/Site Speed tooling)
  • Organic queries (via Search Console link)

Troubleshooting

  • No data in GA4? Check the GA4 Config tag is firing on all pages and that the Measurement ID is correct.
  • Events show in GTM Preview but not GA4? Open DebugView (GA4) while testing; ensure ad blockers aren’t suppressing.
  • Thank-you page fires twice? Exclude page reloads or ensure the confirmation route doesn’t double load.
  • Cross-domain forms? Configure cross-domain measurement in GA4 data stream settings.

Next steps

  • Add UTM parameters to campaigns (e.g., email, social, ads).
  • Layer in scroll depth or engagement time if relevant.
  • If you sell online, implement full ecommerce events for revenue attribution.

With GA4 + GTM, you’ll know which channels generate qualified leads—not just clicks—and you can double down on what works.