Short Links

Track WhatsApp Campaigns with UTM + Short Links (GA4 Guide)

By Carmen Ooh, Executive Assistant of Founder — Big Domain Sdn Bhd / Colla.Team September 13, 2026 10 min read
Track WhatsApp campaigns with UTM parameters and WAPP.MY short links in GA4

Most Malaysian businesses run more than one WhatsApp campaign at a time. A broadcast to old customers, a link-in-bio post, a sticker on a parcel, a paid ad — all of them point somewhere, and all of them end up in the same GA4 report as direct or referral if nobody tags them.

UTM parameters are how you fix that. WAPP.MY shipped UTM support on short links in September 2026, which means you can now set the tags once on a branded link and have every click recorded in your dashboard and forwarded to your landing page.

This guide is written for the person who actually runs the campaigns: what UTM is in plain language, the naming convention that keeps Malaysian reports readable, exactly how WAPP.MY handles the tags, a worked Raya campaign, and one honest limitation you need to know before you build your reporting on it.

What UTM Parameters Actually Do

A UTM parameter is a note you stick onto the end of a URL. It does nothing to the page your visitor sees. Its only job is to tell your analytics tool where that visitor came from, so the visit is not lumped into "direct" or "referral".

There are five standard parameters, and three of them do almost all the work:

  • utm_source — the platform the click came from: whatsapp, instagram, tiktok, facebook, email.
  • utm_medium — the type of channel: broadcast, bio, paid-ads, sticker-qr, newsletter.
  • utm_campaign — the specific push: raya-2026, merdeka-promo, 1111-sale.
  • utm_content — which creative or placement within the campaign, useful when you run A/B variants.
  • utm_term — the paid keyword. Rarely needed outside search ads.

Without UTM, a click from a WhatsApp broadcast on a phone usually arrives with no referrer at all, because the WhatsApp app does not pass one. GA4 then files it under direct traffic. That is the single most common reason a Malaysian business cannot tell which channel is working.

A UTM Naming Convention for Malaysian Campaigns

UTM only works if you are disciplined. GA4 treats WhatsApp, whatsapp and wa as three different sources, and once your reports split like that, they are useless. Pick a convention and never improvise it mid-campaign.

  • Always lowercase. Never mix caps.
  • Use hyphens, never spaces. A space in a UTM value becomes %20 in the URL and looks like a data error later.
  • Source is the platform, medium is the channel type. Keeping these two separate is what lets you roll up "all WhatsApp campaigns" later.
  • Date-stamp the campaign. raya-2026 beats raya, because the offer will come back next year.
  • Never reuse a campaign name for a different offer. Reports will silently merge two campaigns into one.
  • Write the convention down and give it to whoever schedules your broadcasts.

How WAPP.MY Stores UTM on a Link

Most UTM builders generate a long, ugly tagged URL that you then have to paste somewhere. WAPP.MY takes a different approach: the UTM values are stored on the short link itself, so you set them once and every click inherits them.

  • Paste your destination, choose an alias, and fill in the UTM source, medium and campaign fields.
  • The stored values appear in your WAPP.MY dashboard on each click, under the UTM source column.
  • They are also appended to the destination URL when the visitor is redirected.
  • You can edit them later. Edits apply from that moment forward; past clicks keep what was recorded at the time.

The result is that your campaign link stays readable — wapp.my/r/raya-2026 instead of a 180-character URL with five question marks in it — while still carrying full attribution. There is no tag manager and no developer involved. The whole short-link feature is labelled BETA in the member app, so expect the analytics fields to keep expanding.

How UTM Reaches the Destination and Shows Up in GA4

When a visitor clicks a tagged WAPP.MY short link, the redirect carries the UTM parameters through to your destination page. The tags are inserted safely before any page fragment, so they never break an anchor link on the destination.

Your destination then has a URL that looks like this:

yourbrand.com/raya?utm_source=whatsapp&utm_medium=broadcast&utm_campaign=raya-2026

GA4 reads those parameters the moment the page loads. To see them, open Reports → Acquisition → Traffic acquisition and look at Session source / medium and the campaign dimension. Add utm_content as a secondary dimension if you are comparing creatives.

Two things worth knowing about the mechanics:

  1. The tags are also recorded in your WAPP.MY dashboard, so you get attribution inside WAPP.MY even if your website has no analytics installed.
  2. Because the tags travel on the landing URL, a standard GA4 tag is enough. No Google Tag Manager is required.

Naming Table with Real Campaign Examples

Campaignutm_sourceutm_mediumutm_campaign
Raya broadcast to past customerswhatsappbroadcastraya-2026
Instagram bio linkinstagrambioraya-2026
TikTok video descriptiontiktokorganic-videoraya-2026
QR sticker on parcelspackagingsticker-qrparcel-insert-q3
Meta paid ad, carousel Afacebookpaid-adsmerdeka-promo
Email to existing listemailnewslettermerdeka-promo
Shopfront window QRshopfrontsticker-qrwalkin-2026

Note how the same campaign keeps one utm_campaign value across every channel. That is deliberate: it lets you ask "how did raya-2026 do overall?" and "which channel inside raya-2026 did best?" with the same data.

The Honest Limit: WhatsApp Drops UTM

This is the part most UTM guides get wrong, so it is worth being blunt about it.

WhatsApp does not read UTM parameters. When a WAPP.MY link opens a chat instead of a page, there is no browser and no landing URL for the tags to attach to, so they cannot reach the conversation.

Link typeClick recordedUTM behaviour
/r/ URL short linkYesRecorded and forwarded to the destination
/w/ link aimed at a URLYesRecorded and forwarded to the destination
/w/ link aimed at a WhatsApp chatYesRecorded only
Bare number linkYesRecorded only

What this means in practice:

  • You can still count every WhatsApp chat click, and every UTM value you set is stored and visible in the WAPP.MY dashboard. Attribution inside WAPP.MY works.
  • You cannot pass the campaign name into WhatsApp, so nothing appears in the chat itself, and a chat cannot be attributed inside GA4.
  • If you need the UTM to arrive at a destination page and show up in GA4, use a /r/ URL short link and send people to a page — not straight into a chat.

This is why the two link types exist side by side. Send people to content with a short link, send people to a conversation with a WhatsApp link, and do not expect the WhatsApp link to carry campaign data it cannot carry. The full breakdown of the four link types is in Short Link vs WhatsApp Link.

Worked Example: A Raya Campaign End to End

A bakery in Ipoh runs one campaign across four channels. Here is the whole setup.

  1. Destination. They build one promo page at theirbrand.com/raya.
  2. Links. In WAPP.MY they create three short links, all pointing at that page:
    • wapp.my/r/raya-wa with utm_source=whatsapp, utm_medium=broadcast, utm_campaign=raya-2026
    • wapp.my/r/raya-ig with utm_source=instagram, utm_medium=bio, utm_campaign=raya-2026
    • wapp.my/r/raya-qr with utm_source=packaging, utm_medium=sticker-qr, utm_campaign=raya-2026
  3. WhatsApp chat link. For customers who want to ask a question, they also create wapp.my/w/kedai-kek-ipoh with a pre-filled message. They know this link records clicks but not destination attribution, and they accept that.
  4. Distribution. The broadcast link goes into the WhatsApp list, the Instagram link into the bio, and the QR is printed on every box.
  5. Read the results. At month end, the WAPP.MY dashboard shows clicks by link and by UTM source. GA4's traffic acquisition report shows sessions by source and medium for the same campaign.
  6. Act. If packaging QR beats the broadcast on conversion, they move budget to a parcel insert — a decision they could not have made from a single untagged link.

For more on making the messages themselves work, see our WhatsApp marketing tips for Malaysian businesses and how to get more WhatsApp leads.

Troubleshooting: When UTM Does Not Show Up

SymptomLikely causeFix
Traffic shows as direct or referral in GA4No UTM on the link, or the visitor arrived through a WhatsApp chat linkAdd UTM defaults to the link, and use a URL short link when you need GA4 attribution
Two rows for the same channelInconsistent casing or spelling, e.g. WhatsApp vs whatsappStandardise to lowercase and hyphens, then stick to it
Channel shows as (not set)utm_source is missing but utm_medium is present, or vice versaAlways send both source and medium together
Campaign merged with an older oneThe same utm_campaign value was reused for a different offerGive every offer a unique, date-stamped campaign name
UTM missing only on chat clicksExpected behaviour — WhatsApp does not read UTMNothing to fix; read those clicks inside the WAPP.MY dashboard instead

Setting Up Your First Tracked Campaign

  1. Write your convention down before you create anything: source = platform, medium = channel type, campaign = offer + year.
  2. Open the WAPP.MY short link tool and create one link per channel, not one link for everything.
  3. Fill in the UTM defaults on each link so nobody has to remember them later.
  4. Test each link by clicking it yourself, then check GA4 realtime to confirm the session is tagged.
  5. Download the QR code for any placement that gets printed, and pair it with Bio Links if a single scan needs to offer several destinations.
  6. Leave the campaign running long enough to produce meaningful numbers, then compare channels at month end.

More than 150,000 Malaysian businesses build their links on WAPP.MY, and over 18 million links have been created here. Short links, custom aliases, click analytics, UTM and QR downloads are all free, with no premium tier. The free version has no ads. Password protection, expiry dates and custom domains are not part of the feature today. Start with the free URL shortener guide for Malaysia, add a digital vCard to your campaign links if you want contacts saved, and list your business in the WAPP.MY Marketplace so new customers can find you.