How to Set Up Conversion Goals in GA4 (The Right Way)

Emily RedmondData Analyst, EmilyticsApril 18, 2026

How to Set Up Conversion Goals in GA4 (The Right Way)

By Emily Redmond, Data Analyst at Emilytics · April 2026

TL;DR: GA4 conversion setup requires three steps: define your events, send them via Google Tag Manager, then mark them as conversions in GA4. Miss any step, and your CRO data is broken.


I've looked at hundreds of GA4 accounts. I'd say 70% have broken conversion tracking.

Not broken in a way where data doesn't appear at all. Broken in a way where data appears, looks right, and leads you to wrong conclusions. A company might see "10 conversions per day" when they really had 14, or count form submits as conversions when half were spam.

That's worse than no data. Bad data kills growth.

Here's how to set it up right.


Why GA4 Conversion Setup Is Confusing

GA4 changed how conversions work compared to Universal Analytics. In UA, you set up goals in the GA interface. In GA4, you:

  1. Send events via Google Tag Manager (or your code)
  2. Then mark those events as conversions in GA4

Most people skip step 1 or do it wrong. Then they're confused why their data doesn't match their website activity.


Step 1: Define What a Conversion Is

This is harder than it sounds. You need to answer three questions:

Question 1: Macro or Micro?

  • Macro conversion: Your main business goal (purchase, trial signup, form submission)
  • Micro conversion: A signal that someone is moving toward conversion (page view, video watch, button click)

Track both. But know the difference. Micro-Conversions: Why Small Wins Matter explains why this matters for CRO.

Question 2: What's the actual action? "Form submission" is too vague. Is it:

  • Contact form submission?
  • Pricing page download?
  • Free trial signup?
  • Webinar registration?

Each should be a separate event. You need granularity.

Question 3: Should you count repeat conversions? If someone fills the form twice in one session, is that 1 conversion or 2?

Answer: Mark it as a conversion but track count. In GA4, you can see both conversion count (total events) and users converted (unique users). Both are useful.


Step 2: Send Events from Your Website

GA4 events flow through Google Tag Manager (GTM). You need to:

  1. Install Google Tag Manager on your website

    • Create a GTM container at tagmanager.google.com
    • Copy the GTM container code into your website header
    • Add it before the closing </head> tag (or right after opening <body>)
  2. Create a GA4 configuration tag in GTM

    • In GTM, click TagsNew
    • Choose Google Analytics: GA4 Configuration
    • Paste your GA4 measurement ID (found in GA4 Admin → Data Streams)
    • Set it to fire on All Pages
  3. Create event tags for each conversion

For example, if you want to track "Contact Form Submission":

  • In GTM, create a new Trigger for when the form submits
  • Create a new Tag of type "Google Analytics: GA4 Event"
  • Name it "form_contact_submit" (use snake_case, always)
  • Set it to fire on your form submission trigger
  • Publish the container

The technical: Events in GA4 are sent automatically for basic interactions (page view, scroll, click). You only need to create custom events for things GA4 doesn't track natively.

Common events you should track:

  • Form submission
  • CTA button click
  • Video play
  • Add to cart
  • Checkout start
  • Purchase (with revenue)
  • Sign-up / trial start
  • Chat open
  • Download

💡 Emily's take: One SaaS company was tracking "button clicks" as conversions. Cool, right? Except they were counting users clicking the same button 50 times in a session (UI bug). Their conversion count was 2x too high. The lesson: track specific, intentional actions—not every click.


Step 3: Mark Events as Conversions in GA4

Once events are coming in, you need to mark them as conversions.

  1. Go to GA4 Admin → Data Streams → select your stream

  2. Scroll down to "Event settings"

  3. Click "Create event" and select an existing event from your data, or type the event name

  4. Toggle "Mark as conversion"

That's it. Now GA4 counts those events as conversions.

Pro tips:

  • Only mark 1–5 events as conversions. Too many and the signal gets noisy.
  • Separate macro (purchase) from micro (button click) conversions—they tell different stories.
  • Use consistent naming: form_contact_submit, not form submit or Contact_Form.

Event Structure: What Data Goes With Each Event?

Events aren't just a name. They come with data. This is called an event parameter, and it's crucial.

Example: Someone submits a form. You want to know:

  • Which form? (Contact, pricing inquiry, etc.)
  • Which page? (tracked automatically)
  • How long did they spend? (tracked automatically)

Add parameters to capture the form name:

Event: form_submit
Parameter: form_name = "contact_form"
Parameter: form_location = "sidebar"

In GA4, you can then segment: "Which form types convert best?"

Standard parameters GA4 tracks automatically:

  • page_title
  • page_location
  • session_source
  • session_medium
  • session_campaign

Custom parameters you should add:

  • Button/form name
  • Product ID (for e-commerce)
  • Value/price (for revenue)
  • User property (free vs. paid tier, new vs. existing)

Revenue Tracking (Critical for E-Commerce and SaaS)

If money is involved, track it.

Step 1: Add revenue to your events

When someone purchases or signs up for a trial, send an event with a value:

Event: purchase
Parameters:
  value = 99.99
  currency = "USD"
  items = [
    {item_name: "Product A", price: 99.99, quantity: 1}
  ]

Step 2: Check it in GA4

Go to Reports → Monetization → E-commerce Purchases (or create a custom report with revenue as a metric).

You should see purchase count and revenue together.

Why this matters for CRO: A landing page variant might increase conversions by 5%, but if the average order value drops 10%, you've made a bad trade. Always track revenue, not just conversion count.


Debugging: How to Verify Your Setup Is Working

Step 1: Use Google Tag Manager's preview mode

  • In GTM, click Preview (top right)
  • Visit your website
  • You'll see a GTM debug panel at the bottom showing every event firing
  • Verify your conversion events are firing

Step 2: Check GA4's Real-Time Report

  • Go to GA4 → Reports → Real-Time
  • Trigger a conversion on your site
  • You should see it appear in real-time (within seconds)
  • If you don't see it after 2 minutes, your event isn't firing

Step 3: Use Google Analytics Debugger Chrome extension

  • Install Google Analytics Debugger
  • Visit your site
  • Open DevTools → Console
  • You'll see a detailed log of every event being sent

Common Mistakes to Avoid

Mistake 1: Setting up only macro conversions You should track both. Micro-conversions (button clicks) happen more often and predict macro-conversions. They're your early-warning system.

Mistake 2: Not separating different goals "Form submission" is too broad. Separate "contact form," "trial signup," and "whitepaper download." Each tells a different story about your funnel.

Mistake 3: Counting every click GA4 auto-tracks page views, scrolls, and some clicks. Adding a "click" event for every element is noise. Be selective.

Mistake 4: Using inconsistent event names Never do: contact_form and contact form and contactForm in the same property. Pick a naming convention and stick to it.

Mistake 5: Not checking your data Set up the events, verify they're firing, then move on. Don't assume they work. Spot-check monthly.


The Checklist: Before You Do Any CRO Testing

Use this checklist before you run your first optimization test:

  • GA4 account created and code installed
  • Google Tag Manager installed
  • At least 1 macro conversion tracked (purchase, form, signup)
  • At least 2 micro conversions tracked (button click, page view, etc.)
  • Real-time report shows conversions firing
  • Conversion data has been flowing for at least 2 weeks (to establish baseline)
  • You've set a benchmark conversion rate
  • You've identified your biggest funnel leak via funnel report

Don't skip this. If your conversion tracking is broken, all your CRO work is wasted.


Frequently Asked Questions

Q: Can I use GA4's built-in event tracking instead of GTM? A: You can, but GTM is better. It's easier to modify without touching your code, and it's standard practice. Use GTM.

Q: How many conversions should I track? A: Mark 1–5 events as conversions. Too many dilutes the signal. Focus on high-intent actions.

Q: What's the difference between an event and a conversion? A: An event is any action (page view, button click, form submit). A conversion is an event you've marked as "important to track." All conversions are events; not all events are conversions.

Q: Should I track form abandonment? A: Yes, but differently. Create an event for "form started" and "form submitted." The gap tells you abandonment rate. Form Analytics: How to Find Where People Stop covers this.

Q: How do I track cross-domain conversions (e.g., checkout on a different domain)? A: You need to link your domains in GA4 Admin → Data Streams → Web Stream Settings. Then configure GTM to pass user ID across domains. It's technical, but possible.

Q: What if I'm tracking an offline conversion (e.g., phone call)? A: Use GA4's import feature to upload offline conversions via CSV. GA4 Admin → Data Import. This is more advanced, but it's available.


The Bottom Line

Your conversion tracking is only as good as your setup. Spend the time here, verify it works, and then build on it.

Once you know your data is clean, you can run tests with confidence. Once you can run tests with confidence, you can optimize with conviction.

Start here. Everything else follows.


Emily Redmond is a data analyst at Emilytics — AI analytics agent watching your GA4, Search Console, and Bing data around the clock. 8 years experience. Say hi →