All posts
·9 min read

How to set up GA4 conversions (key events) in 10 minutes — without breaking your tag

GA4 renamed 'conversions' to 'key events' and the setup is confusing. Here's the cleanest 10-minute path to track form submissions, button clicks, and purchases — with a working example for WordPress, Shopify, and custom sites.

Founder, Plainly

Setting up GA4 conversions — now called 'key events' — is the single most important thing you can do after installing GA4, and the thing that 70% of people skip. Without key events, GA4 is measuring how many people visited but has no idea whether your site is actually working for your business. Traffic without conversions is decoration; it doesn't tell you anything actionable.

Good news: setting up the four conversions that matter for most small businesses takes about 10 minutes if you know the cleanest path. Bad news: GA4's documentation makes this look harder than it actually is, and most online tutorials are written for the previous version of GA4 before Google renamed things. Here's the current, clean version.

First: what changed and what to call it

New here? Start with the plain-English guide
GA4 for small business owners
GA4 explained for small business owners who run the marketing themselves. The metrics that matter for revenue, what to ignore, and how to spend 5 minutes a week, not 5 hours.
Read the guide

In late 2024, Google renamed 'conversions' to 'key events' in GA4. The functionality is the same. The terminology change matters because tutorials referencing 'conversions' as a separate concept are outdated. Here's the current vocabulary:

  • Event. Any action GA4 records — page view, scroll, click, form submission, anything. GA4 tracks dozens of events automatically; you create custom ones for the things specific to your business.
  • Key event. An event you've manually marked as 'this is important.' Key events flow into your conversion reports and into Google Ads bid optimization. An event is just data; a key event is data with intent.
  • Conversion. Now an alias for 'key event' in most contexts. You'll still see the word 'conversion' in some Google Ads UIs, but in GA4, the term is officially 'key event' going forward.

The four key events most businesses need

Resist setting up 20 key events on day one. You won't track them all, and you'll confuse Google Ads' bid optimization. Pick four. The right four for most businesses:

  • Form submitted. Contact form, demo request, newsletter signup — whichever is your primary lead-capture form. Track when the form actually submits successfully, not when the submit button is clicked.
  • Primary CTA clicked. Whichever button you most want people to click — 'Buy now', 'Start free trial', 'Book a call.' Tracks intent even if they don't complete the next step.
  • Pricing page viewed. Anyone who views your pricing page is showing high intent. Treating this as a key event lets you compare 'people who viewed pricing' against 'people who actually converted' to calculate pricing-page conversion rate.
  • Purchase (e-commerce only). If you sell anything online. Tracked with monetary value so GA4 can also show revenue alongside conversion count.

Setup path #1: WordPress (5 minutes)

Easiest path. Use the official Google Site Kit plugin combined with your form plugin's GA integration.

  • Install Site Kit by Google. From WordPress admin → Plugins → Add New, search 'Site Kit by Google.' Install and activate. Connect your Google account. This handles base GA4 installation and the page_view event automatically.
  • Form submissions: use your form plugin's GA add-on. Gravity Forms, WPForms, Contact Form 7, and Ninja Forms all have either built-in GA event tracking or a free add-on. Set the event name to form_submit_contact (or your preferred name). The plugin fires the event on successful submission.
  • Pricing page view: use GA4's built-in custom event. In GA4: Admin → Events → Create event. Match the existing page_view event with parameter page_location containing /pricing. Save as viewed_pricing_page.
  • Primary CTA click: enable Enhanced Measurement outbound clicks. GA4 already tracks outbound clicks automatically. For internal buttons, the easiest path is to wrap your button in an HTML link with a tracked ID like /pricing#cta-primary-clicked and use the page_view trick above.
  • Mark as key events. In GA4: Admin → Events → toggle 'Mark as key event' for each of the events you created. Without this toggle, the events track but aren't surfaced in conversion reports.

Setup path #2: Shopify (3 minutes)

Shopify auto-tracks the big ones if you've connected GA4. From Shopify admin → Online Store → Preferences → Google Analytics, paste your Measurement ID. Shopify automatically fires purchase, add_to_cart, begin_checkout, and view_item events.

To mark them as key events, go to GA4: Admin → Events. You'll see purchase, add_to_cart, begin_checkout in the list. Toggle 'Mark as key event' for purchase only. Don't mark add_to_cart and begin_checkout as key events — they happen for non-buyers too, and treating them as conversions inflates your conversion rate.

For form submissions on Shopify content pages (contact forms, newsletter signups), use the Shopify Customer Events feature: Admin → Settings → Customer events → Add custom pixel. Fire a gtag('event', 'form_submit_contact') call on form submission.

Setup path #3: Custom site with Google Tag Manager (10 minutes)

Most flexible path, recommended if you're not on a platform with built-in GA integration.

  • Step 1: Install GTM if you haven't. Get a container at tagmanager.google.com. Paste the GTM snippet in your site's <head> and right after the opening <body> tag.
  • Step 2: Add a 'Google tag' (GA4 base) tag in GTM. New tag → Tag type 'Google Tag' → enter your Measurement ID → trigger on All Pages → publish. This fires GA4 page_view on every page automatically.
  • Step 3: Form submissions via a Form Submission trigger. New trigger → Trigger type 'Form Submission' → trigger on specific Form ID or URL contains '/contact'. New tag → Tag type 'GA4 Event' → Event name 'form_submit_contact' → trigger on the form trigger. Test in GTM Preview mode.
  • Step 4: Button click via a Click Listener trigger. New trigger → Trigger type 'Click - All Elements' → fire on Click Classes matches CSS Selector .cta-primary (or whatever your button class is). New tag → 'GA4 Event' → Event name 'primary_cta_clicked' → trigger on the click trigger.
  • Step 5: Pricing page view via GA4's existing event. Same as the WordPress path: in GA4 directly, Admin → Events → Create event → match page_view + page_location contains /pricing → name viewed_pricing_page.
  • Step 6: Mark all four as key events. GA4: Admin → Events → toggle 'Mark as key event' for each. Wait 24 hours for the first conversion reports to populate.

Verify they're actually firing

Don't trust the dashboards yet. Verify each event individually:

  • Open your site in incognito. Avoids login/cache confusion.
  • Open GA4 → Reports → Realtime → Events. Live event stream.
  • Trigger each event by performing the action. Submit a test form, click the button, view the pricing page.
  • Watch the event appear in Realtime within ~30 seconds. If it doesn't, your tag isn't firing. Use GTM Preview mode or browser console to debug.

Common mistakes that silently break tracking

  • Firing form_submit on button click instead of form success. If the user clicks Submit but the form has a validation error, you'll count it as a conversion. Trigger on actual successful submission only — typically by hooking into the form library's success callback.
  • Forgetting to mark events as key events. The events flow in but don't appear in conversion reports. Easy fix; just toggle them.
  • Duplicate events from two tag sources. If you have both Site Kit AND a manual GTM install, every event fires twice. Realtime will show 2x your actual traffic. Pick one source and remove the other.
  • Missing the 24-hour processing delay. GA4 takes 24-48 hours to populate non-Realtime conversion reports. If you check the standard Engagement reports the day after setup and see zero conversions, that doesn't mean tracking failed. Wait 48 hours and re-check.
  • Re-using event names across different actions. Don't call your contact form submission 'submit' and your newsletter submission 'submit' both. Pick distinct names like form_submit_contact and form_submit_newsletter. Otherwise you can't tell which is which in reports.

After setup: don't go event-crazy

Once you've nailed the four basics, resist the temptation to add 15 more events. Each additional event dilutes Google Ads' optimization signal (it has less data per event to learn from) and clutters your reports. Add a fifth or sixth event only when you have a specific question that requires it — like 'how many users watch the demo video?' Don't add events because they're easy to add.

Tracking is the boring half of analytics. Without it, the fun half (insight) is built on sand. Spend the 10 minutes; you'll get them back a hundred times.

What happens after key events are firing

Once your four key events have been live for a week or two, you finally have something worth analyzing. You can answer real questions: 'What's my pricing-page-to-purchase conversion rate?' 'Which channel drives the most form submissions per session?' 'Is the new homepage CTA design beating the old one?' All of those questions are impossible without key events; all become trivial once they're set up. If you want those questions answered automatically every Monday morning in plain English instead of digging through reports, that's exactly what Plainly was built to do — connect once, get a weekly read-out, free demo on the homepage.

Keep reading
Plain-English guides
Try Plainly

Read your GA4 in two paragraphs, not two hours.

We do exactly what this post describes — automatically, every Monday morning. Try the demo for free, no credit card.

Try the demo
Weekly GA4 tips

One short, practical GA4 tip in your inbox each week.

No fluff. No jargon. The kind of tip that actually changes a number on your dashboard. Unsubscribe any time.

Made with Emergent