Episode 37: Pixel, conversion tracking and UTM parameters
Finding out which ad brought which sale with Meta Pixel, Conversions API, Google Ads conversion tracking and UTM links.
In one day StyleStreet shared its link in 6 places: Reel bio, story, Riya’s post, salon QR, WhatsApp broadcast, Google ad. 9 orders came in by the evening.
Which link worked? Without tracking, it’s a guess. UTM and the Pixel turn it into “we know”.
Meta Pixel and standard events
Code on the website that tells Meta what people do on the website after seeing an ad.
| Event | When |
|---|---|
| PageView | Any page opened |
| ViewContent | A product page viewed |
| AddToCart | Added to cart |
| InitiateCheckout | Checkout started |
| Purchase | Order completed (with value) |
The Pixel does 3 jobs: measure (how many sales), optimize (Meta finds buyers) and retarget (Chapter 26).
Conversions API: data even without the browser
Because of ad blockers, browser privacy and iOS changes, the Pixel misses some events.
Conversions API (CAPI) sends events straight from the server to Meta. Pixel + CAPI together = more complete data. Platforms like Shopify have this setting in their Meta integration.
Google Ads conversion tracking
- Create a conversion action in Google Ads: Purchase (with value)
- Add the tag to the website (Shopify Google channel, GTM, or import GA4 key events)
- “Enhanced conversions” give better measurement with hashed first-party data
Without conversion tracking, Google’s smart bidding doesn’t even know what a sale is.
UTM parameters
Small tags at the end of a link that tell GA4 where the visitor came from:
| Parameter | Meaning | Example |
|---|---|---|
| utm_source | From where (platform) | |
| utm_medium | What type | story / bio / influencer / qr |
| utm_campaign | Which campaign | diwali_office_edit |
| utm_content | Which creative/link | wash_test_reel |
| utm_term | Keyword (mostly search) | cotton_office_kurti |
Example: stylestreet.in/office-kurtis?utm_source=instagram&utm_medium=influencer&utm_campaign=jan_creators&utm_content=riya
UTM rules
- Always lowercase: “Instagram” and “instagram” show up separately in GA4
- No spaces; use underscores
- Keep a UTM sheet: every link and where it was used
- Use Google’s Campaign URL Builder
- Don’t put UTMs on links within your own website (it breaks the session)
- Use a short link or QR for long links
StyleStreet’s real problem
“How many sales came from Riya?” “No idea”
Creators, salons and stories all used the same plain link. In GA4 everything was mixed into “instagram / referral” or “direct”.
Plus, the Pixel was only firing PageView, not the Purchase event. Meta didn’t even know which ad brought a sale, so it couldn’t optimise.
Practical example: StyleStreet UTM sheet
| Use | source | medium | campaign | content |
|---|---|---|---|---|
| Bio link | bio | evergreen | linkinbio | |
| Story link | story | jan_restock | mustard_kurti | |
| Riya post | influencer | jan_creators | riya | |
| Salon QR | offline | qr | salon_partners | cscheme |
| WhatsApp broadcast | broadcast | jan_restock | squad_list |
Your mission: Tracking setup checklist
For StyleStreet:
- List the Pixel’s 5 standard events and when each fires
- Write the Pixel + CAPI setup steps (through the platform integration)
- Write the steps to set up a Google Ads Purchase conversion
- Write UTM naming rules
- Build a UTM sheet for 10 links
- Write how you’ll test in Meta Events Manager / GA4 Realtime
Quiz
-
Why is the Pixel’s “Purchase” event necessary?
- A. For design
- B. So Meta knows which ad brought a sale, and finds buyers
- C. For followers
- D. For SEO
Show answer
Correct answer: B. So Meta knows which ad brought a sale, and finds buyers
For both measuring and optimizing.
-
What does the Conversions API solve?
- A. Ad design
- B. Events missed because of browsers/ad blockers
- C. Keyword research
- D. Speed
Show answer
Correct answer: B. Events missed because of browsers/ad blockers
It sends data from the server, without depending on the browser.
-
“Instagram” vs “instagram” in a UTM?
- A. They show up the same
- B. They create separate rows in GA4
- C. An error
- D. No difference
Show answer
Correct answer: B. They create separate rows in GA4
UTMs are case-sensitive. Always lowercase.
-
What should the UTM medium be for Riya’s post?
- A. cpc
- B. influencer
- C. organic
- D. email
Show answer
Correct answer: B. influencer
A consistent medium name lets you compare all creators together.
Output for the client project
Your project file now has a Tracking Stack:
- Pixel events + CAPI
- Google Ads purchase conversion
- UTM rules + 10-link sheet
- Testing checklist
Golden rule: Name every link, keep track of every sale. Don’t split the budget by guesswork; split it by tracking.