Help Center
Measure & grow10 min read

Know where every WhatsApp chat came from

Did that parent find you on Google, or scan the poster at your branch? This guide shows how Exabloom answers that without asking them to type a keyword, and what you need to set up for each place people start a chat.
Start here

The 30-second version

When a parent taps the WhatsApp button on your website, Exabloom writes down where they came from and gives them a short code. The code goes along on the last line of their WhatsApp message. When the message arrives, Exabloom matches the code and tags the new contact with its source.

Google
primary maths tuition
brightminds.sg › primary-maths
Primary Maths Tuition | Bright Minds
Small classes, P1 to P6. Trial lesson at every branch.
1Finds you on GoogleTaps your site in the results.
Bright Minds
brightminds.sg/primary-maths
Primary Maths
BMBright MindsOnline
Bright Minds
Hello 👋
Hi! I’d like to know more about Primary Maths classes.
Chat On Whatsapp
2Taps Chat On WhatsappOn your site’s widget. Exabloom notes where they came from.
BMBright Minds
Hi! I’d like to know more about Primary Maths classes.

Ref: #4F2K
3Sends the messageWhatsApp opens with your greeting. The Ref: #4F2K line rides along.
app.exabloom.com
Lead Info
NOTES
COLLABORATORS
MARKETING SOURCE
CONTACT DETAILS
First nameMei LingPhone+65 9123 4567
Created by
Inbound · WhatsApp widget
/primary-maths
Organic · Google search
4You see the sourceExabloom matches the code and fills in Created by.
One parent, start to finish. Read left to right; the violet rings are where they tap. The code is the only part that has to survive the trip.

New widgets have this on already. If yours was set up earlier, check it’s on (see Turn it on). The rest of this guide explains why it works this way, and how to cover entry points that don’t go through your website.

The model

How the widget does it

Think of a coat check. When the parent taps your WhatsApp button, Exabloom keeps a stub: the page they were on and how they reached your site. The parent gets the matching ticket, the Ref: #4F2K line at the end of their message. When the message arrives, Exabloom pairs the ticket with its stub.

1Parent: On your website, the parent opens the WhatsApp widget and taps Chat On Whatsapp.
brightminds.sg/primary-maths
Bright MindsClassesBranchesFees
Primary Maths
BMBright MindsOnline
Bright Minds
Hello 👋
Hi! I’d like to know more about Primary Maths classes.
Chat On Whatsapp
2Exabloom: In that instant Exabloom files a stub for the visit, and hands the widget its code, #4F2K.
Visit on file#4F2K
Page
/primary-maths
Came from
Organic · Google search
Valid for
7 days, one use
Waiting for a message with this code
3Parent: WhatsApp opens with the greeting and Ref: #4F2K on the last line. The parent taps send.
BMBright Minds
Hi! I’d like to know more about Primary Maths classes.

Ref: #4F2KSent ✓✓
4Exabloom: The message arrives. Its code matches the stub, and the contact is tagged with the source.
Visit on file#4F2K
Page
/primary-maths
Came from
Organic · Google search
Valid for
7 days, one use
Matched · the contact gets this source
Follow the numbers. ① and ③ happen on the parent’s phone, ② and ④ at Exabloom. Only the four-character code travels inside WhatsApp.

What the stub knows

The stub is written from what the parent’s browser told your website on arrival, checked in this order. The first match wins:

  1. An ad click ID in the address (Google’s gclid, Meta’s fbclid, TikTok’s ttclid). This means Google Ads, Meta Ads or TikTok Ads.
  2. A paid UTM tag, when utm_medium is cpc, ppc, paid, paid_social or display.
  3. The site they came from. Google, Bing and other search engines read as Organic · Google search and so on. Facebook, Instagram, TikTok and others read as Organic · Instagram and so on. Any other site reads as Referral · its name.
  4. utm_source on its own, when there’s no previous site, as with a QR scan. This is what the poster setup uses.
  5. Nothing at all reads as Direct.

If the link had a utm_campaign, it’s added on the end: Referral · poster · bishan-branch. The browser remembers the visit for 7 days, so a parent who reads your page on Monday and taps the button on Thursday is still credited correctly.

The honest edge

If the parent deletes the Ref line

The code is only a line of text, so the parent can remove it. Editing the greeting is fine. Only removing the Ref: #4F2K line loses the match.

Sent as it was
BMBright Minds
Hi! I’d like to know more about Primary Maths classes.

Ref: #4F2K
Created by
Inbound · WhatsApp widget
Organic · Google search
Edited, Ref kept
BMBright Minds
Hello, is there a P4 class on Saturdays?

Ref: #4F2K
Created by
Inbound · WhatsApp widget
Organic · Google search
Wiped, typed “Hi”
BMBright Minds
Hi
Created by
An ordinary inbound chat, with no source. It still lands in your Inbox as normal.
Three parents, three messages. Anything above the Ref line can change. Delete the line and the chat still arrives, just without a source.
How often this happens
Most parents send the pre-filled message as it is. You can check your own numbers: in Analytics, the Marketing sources section counts enquiries with a tracked source. Compare it with your total new chats for the same period. The gap is roughly how many chats arrived without a code.
Setup

Turn it on

Source tracking is a setting on your WhatsApp widget, and the widget lives in the Admin Dashboard, not inside a workspace. You need to be an Owner or Admin of the brand. From anywhere in the app:

1

Open the Admin Dashboard

app.exabloom.com/conversations
1BMBright MindsOrchard
Inbox
Leads
Calendars
Contacts
Bulk Actions
Win-back
Workflows
Analytics
Forms
Settings
Search
Mei Ling Tan
Hi! I’d like to know more…
Daniel Koh
Is there a trial class?
Priya S.
Thank you!
Aaron Lim
What time on Saturday?
Brands
Find brand...
BMBright Mindsowner
WorkspacesBright Minds
Find workspace...
2
Admin DashboardManage brand settings
Orchard
Tampines
Jurong East
① Click your brand at the top of the left sidebar. A panel opens beside it. ② Click Admin Dashboard, pinned above your workspaces.
2

Go to Website Chat Widget

The Admin Dashboard opens on Analytics. The sidebar now shows a violet Admin view badge under your brand, so you know you’re in the right place.

app.exabloom.com/agency/analytics
BMBright MindsAdmin view
Analytics
Analytics
Billing & Usage
WhatsApp Business
People
Users
Roles
AI & Knowledge
AI Agents
Knowledge Hub
Internal InputBeta
AI Feedback
Tools
Exports
1
Website Chat Widget
Redirect Links
Logout
Analytics
① Website Chat Widget is under Tools, near the bottom of the sidebar.
3

Edit the WhatsApp widget

app.exabloom.com/agency/website-chat-widget
BMBright MindsAdmin view
Analytics
Analytics
Billing & Usage
WhatsApp Business
People
Users
Roles
AI & Knowledge
AI Agents
Knowledge Hub
Internal InputBeta
AI Feedback
Tools
Exports
Website Chat Widget
Redirect Links
Logout
Tools
Website Chat Widget
Add a chat surface to your public website. Pick the channel that fits.
WhatsAppChat widget on your website — let visitors reach out to you directly from Website → WhatsApp.
1 Edit Widget
Copy Embed Code
① Click Edit Widget on the WhatsApp card.
4

Switch on Source tracking

app.exabloom.com/agency/website-chat-widget
BMBright MindsAdmin view
Analytics
Analytics
Billing & Usage
WhatsApp Business
People
Users
Roles
AI & Knowledge
AI Agents
Knowledge Hub
Internal InputBeta
AI Feedback
Tools
Exports
Website Chat Widget
Redirect Links
Logout
Tools
Website Chat Widget
Add a chat surface to your public website. Pick the channel that fits.
WhatsAppChat widget on your website — let visitors reach out to you directly from Website → WhatsApp.
Edit Widget
Copy Embed Code
Edit Widget
1. Widget Type & Contact12. Welcome Messages3. Launcher4. Visibility Rules5. Review
Welcome Messages for Customers
This message will automatically appear in the customer’s WhatsApp chat box when they click your widget.
Hi! I’d like to know more about your classes.
Source tracking
Adds a short reference line such as Ref: #4F2K to the end of the message, so you can see which page and campaign brought each enquiry in.
2
Path-Specific Messages
Preview
Bright Minds
Hello 👋
Hi! I’d like to know more about your classes.
Ref: #4F2K
‹ PreviousCancelNext ›
① Open the 2. Welcome Messages tab. ② Source tracking sits under the message. Violet means on. The preview on the right shows the Ref line your visitors will see.
5

Save

app.exabloom.com/agency/website-chat-widget
BMBright MindsAdmin view
Analytics
Analytics
Billing & Usage
WhatsApp Business
People
Users
Roles
AI & Knowledge
AI Agents
Knowledge Hub
Internal InputBeta
AI Feedback
Tools
Exports
Website Chat Widget
Redirect Links
Logout
Tools
Website Chat Widget
Add a chat surface to your public website. Pick the channel that fits.
WhatsAppChat widget on your website — let visitors reach out to you directly from Website → WhatsApp.
Edit Widget
Copy Embed Code
Edit Widget
1. Widget Type & Contact2. Welcome Messages3. Launcher4. Visibility Rules15. Review
Preview
Bright Minds
Hello 👋
Hi! I’d like to know more about your classes.
Ref: #4F2K
‹ PreviousCancel
2Save Widget
① Go to 5. Review. ② Click Save Widget. Nothing changes on your website until you do.

New widgets start with Source tracking on. Widgets saved before the feature existed start off, so check yours. There’s nothing to reinstall on your website: the embed code picks up the change on the next page load.

A different greeting per page
On the same 2. Welcome Messages tab, Path-Specific Messages lets any page have its own welcome message, for example /visit/* for your poster pages. Each message still gets its own Ref line, so the greeting can be whatever you like: “You scanned us! 🎨” on poster pages, “You found us! 👋” everywhere else. It’s a friendly touch, but the tracking doesn’t depend on it.
Reading it

Where you see the source

On the contact, in the Inbox

Open the conversation. The Lead Info panel on the right shows the source in two places, both near the bottom. Notice the chat itself: the Ref line is there in the parent’s message.

app.exabloom.com/conversations
BMBright MindsOrchard
Inbox
Leads
Calendars
Contacts
Bulk Actions
Win-back
Workflows
Analytics
Forms
Settings
Search
Mei Ling Tan
Hi! I’d like to know more…
Daniel Koh
Is there a trial class?
Priya S.
Thank you!
Aaron Lim
What time on Saturday?
Mei Ling Tan
Hi! I’d like to know more about Primary Maths classes.

Ref: #4F2K
Type a message…
Lead InfoCustomize
TitlePrimary Maths enquiryPipelineEnrolmentCreated on21 Sep 2026Created byStageNew enquiry
Notes
Collaborators
Workflows
1
Marketing source2
Contact details
First nameMei LingLast nameTanPhone number+65 9123 4567Email—Tags—
2
Created byInbound · WhatsApp widget
① Marketing source starts closed; click it to open. ② Created by is the last row of Contact details; click it for the detail.

The same two places, opened up:

1 Marketing source, opened
Marketing source2
/primary-maths
Acquired 21 Sep 2026 · Organic · Google search
Interactions2 interactions
Website visit
WhatsApp widget · /primary-maths · Organic · Google search
Website visit
WhatsApp widget · /visit/bishan · Referral · poster
2 Created by, clicked open
Contact details
Phone number+65 9123 4567Tags—Created byInbound · WhatsApp widget/primary-mathsOrganic · Google search21 Sep 2026
① Marketing source lists every tracked visit, including later ones through other entry points. ② Created by is the first source this contact came from.
Two rows are called Created by
When the conversation has a lead, the table at the top of the panel has its own Created by row (struck through in the picture above). That one says who created the lead. The source is in the Created by at the bottom, under Contact details.

Across all enquiries, in Analytics

app.exabloom.com/analytics
BMBright MindsOrchard
Inbox
Leads
Calendars
Contacts
Bulk Actions
Win-back
Workflows
1
Analytics
Forms
Settings
Analytics
How this workspace is performing - leads, ads, conversations and workflows
Last 30 days
Leads
Total leads
Lead Sources
Pipeline Stages
2
Marketing sources
Enquiries
Opened a lead
Conversations
① Analytics in the left sidebar. ② Scroll down to Marketing sources, below the Leads cards.

Marketing sources, up close:

Marketing sources
Where enquiries came from in the last 30 days, and what happened to those people since
Enquiries
38
8 from ads · 30 organic & direct
Opened a lead
21
By sourceBy page
SourceEnquiriesOpened a lead
Organic · Google search149
Referral · poster96
Meta Ads83
Direct73
Each row is a source; click one to expand it. Switch to By page to start from the page people landed on instead. The numbers here are an example.

To build a list, for example everyone who came in from a poster, go to Contacts, click Filters, and add Marketing source is any of the sources you want.

Setups to copy

Setups to copy, per entry point

The rule of thumb: if the chat starts from your website’s WhatsApp button, it can be tracked. For anything else, send people to your website first.

Your website’s WhatsApp button
Tracked automatically

Nothing to set up beyond switching Source tracking on. This is the journey in the 30-second version. It also covers people who found your site through a Google search: that’s your “Web Search” bucket, with more detail on top (search vs ad vs social).

Created by reads: Organic · Google search, Google Ads, Organic · Instagram, Direct… depending on how they reached the site
Google Business Profile
Tracked with one setup
Bright Minds · Orchard
4.9 · Tutoring service
CallDirectionsWebsiteChat
1The parent taps Website on your profile. (Chat skips your site, so it can’t be tracked.)
brightminds.sg/?utm_source=google…
Bright Minds tuition
BMBright MindsOnline
Bright Minds
Hello 👋
Hi! I’d like to know more about Primary Maths classes.
Chat On Whatsapp
2Your site opens with the tag in the address. They tap Chat On Whatsapp.

Set your profile’s Website link to your site with a campaign tag on the end:

https://yoursite.com/?utm_source=google&utm_campaign=google-business-profile

Parents who tap through and then use your WhatsApp button are labelled with that campaign, so you can tell them apart from general Google searchers.

Google’s own Chat button on the profile opens WhatsApp directly, without passing through your site, so there’s nothing to attach a code to. Those chats arrive with no source. The buttons on your profile depend on how it’s set up, so yours may look a little different.

Created by reads: Organic · Google search · google-business-profile
QR codes on branch posters
Tracked with one setup
Bishan branch
Free trial class
Scan to chat with us on WhatsApp
brightminds.sg
1The parent scans the QR code. It opens a page on your site, not WhatsApp.
brightminds.sg/visit/bishan?utm_source=poster…
Welcome from Bishan!
BMBright MindsOnline
Bright Minds
Hello 👋
Hi! I’d like to know more about Primary Maths classes.
Chat On Whatsapp
2The page greets them, and they tap Chat On Whatsapp.

Point each poster’s QR code at a page on your website, not straight at WhatsApp, with the branch in the link:

https://yoursite.com/visit/bishan?utm_source=poster&utm_campaign=bishan-branch

The parent lands on a short welcome page and taps your WhatsApp button. That’s one extra tap, which is what makes the scan trackable. A QR Code Link from Tools → Redirect Links works well as the printed code: it points at this page, and you can change where it goes later without reprinting.

A QR code that opens WhatsApp directly skips your website, like Google’s Chat button, so only a Redirect Link with Source tracking switched on can tell you where the chat came from.

Check the WhatsApp button shows on your /visit/… pages. If the widget has Visibility Rules, include them.

Created by reads: Referral · poster · bishan-branch, with /visit/bishan as the page
Meta click-to-WhatsApp ads
Tracked automatically
BMBright MindsSponsored
P4 Maths holiday camp - 5 seats left
brightminds.sg Send message
1The parent taps your ad’s WhatsApp button on Facebook or Instagram.
BMBright Minds
P4 Maths holiday camp
brightminds.sg
Hi
2WhatsApp opens with the ad attached. Even a bare “Hi” arrives tagged Inbound · Meta ad.

The one entry point that needs no code. Meta sends the ad details with the first message, so this works even if the parent types their own message. It needs the official WhatsApp Business API connection.

Created by reads: Inbound · Meta ad, with the ad’s headline
The only fully tamper-proof option
If you need 100% certainty with no code at all, the only way is a separate WhatsApp number for each entry point. Each number is its own Exabloom workspace with its own inbox, so it costs more and splits your team’s view. For most businesses the code approach above is the better trade.
Before you rely on it

Good to know & pitfalls

  • The Ref line stays visible. Your team sees Ref: #4F2K at the end of the first message in the Inbox. That’s expected.
  • Codes last 7 days and work once. A message sent more than 7 days after the tap gets no source, and neither does a second message carrying a code that’s already been used.
  • Created by is set once. It records how a contact first reached you. Later visits show under Interactions in Marketing source, not in Created by.
  • A Meta ad beats the website. If a contact has both, Created by shows the ad.
  • Only text messages are checked. If the first thing a parent sends is a photo or voice note instead of the pre-filled text, there’s no code to read.
  • Keep the Ref line on its own line. Parents can add words above it or type after it. If Ref: #… gets joined onto the end of another line, it no longer counts.
  • Works on every WhatsApp connection Exabloom supports. Only Meta ad tracking needs the official WhatsApp Business API.

Want us to set up your entry points?

Tell us where your enquiries come from, and we’ll help you tag each one: website, Google profile, posters and ads.