IntegraWhats

Blog · Agencies

How to know where your WhatsApp customers come from

Why WhatsApp clicks usually arrive with no source, how to use UTM parameters and per-campaign links, what a website pixel records and how to read the data to decide where to invest.

IntegraWhats team · October 16, 2026 · 7 min read

A message comes in on WhatsApp: "Hi, I saw your ad". Which ad? The Instagram one, the Google one, the flyer, the post from a month ago? The person doesn't always remember, and often nobody asks. The conversation goes on, the sale happens or it doesn't, and the source is lost.

Anyone who pays for ads feels this at the end of the month. You know how much you spent on each channel, but not which one brought the conversations that turned into sales. Without that, deciding where to put the money becomes guesswork.

This article explains why this happens and what you can do about it, from the simplest step to the most complete.

Why WhatsApp "hides" the source

When someone clicks an ad that leads to a website, the website can tell where they came from. When the click opens WhatsApp, that information usually stays behind. The app opens the chat, the person types, and the business only gets the number and the text.

The result is a gap in the middle of the path: the campaign knows there was a click, WhatsApp knows there was a conversation, and nothing connects the two.

There are three ways to close that gap, and they complement each other:

  1. Tag each campaign's links with UTM parameters.
  2. Have the customer pass through your website before WhatsApp, with a pixel that records the source.
  3. Ask the customer, as a fallback.

UTM parameters, without the jargon

UTMs are bits of text you add to the end of a link to identify the campaign. They don't change the page. They just carry the information.

A link with UTMs looks like this:

https://yoursite.com/?utm_source=instagram&utm_medium=ad&utm_campaign=october-launch

The three most common parameters:

Parameter What it's for Examples
utm_source Where the click came from instagram, google, facebook, email, flyer
utm_medium What kind of channel it is ad, organic, bio, qrcode, newsletter
utm_campaign Which campaign or action october-launch, black-friday, back-to-school

There are also utm_term and utm_content, useful for telling apart keywords or versions of the same ad. To get started, the three above are enough.

A few rules to keep UTMs from turning into a mess:

  • Always use lowercase and no special characters. "Instagram" and "instagram" become two different sources in your reports.
  • Agree on a list with your team or agency. Write down the allowed values for source and medium in a spreadsheet.
  • One link per campaign. Every ad, every boosted post, every QR code on printed material gets its own link.
  • Don't use UTMs on internal links. They're for people arriving from outside. Using them inside your own site overwrites the real source.

UTMs aren't just for online ads. A QR code on a flyer, a menu or a shop window can point to a link with utm_medium=qrcode and utm_campaign=november-flyer. Your Instagram bio can have its own link. So can your email signature.

The more paths you tag, the smaller the share of customers with an "unknown" source.

The website pixel: tying the source to the contact

A UTM tags the link, but something has to read that tag and keep it. That's where the pixel comes in: a small piece of code on your website that records where the visitor came from, which pages they viewed and, if there is one, the purchase they made.

What matters is what happens next. When that visitor clicks a WhatsApp button on the site, the pixel can pass the source along. The conversation lands in the inbox with the campaign, the pages viewed and the rest of the history already tied to the contact.

Instead of "Hi, I saw your ad", the team sees: came from Instagram, launch campaign, looked at the pricing page twice. That changes the conversation. The agent already knows what the person was looking for.

For this to work, keep in mind:

  • The WhatsApp button needs to be on the site with the pixel. Direct links to WhatsApp, outside the site, don't go through the pixel.
  • The button should create the contact. That way, even if the person never sends a message, you know who clicked and where they came from.
  • Purchases count too. If your site sells, recording the purchase on the same contact shows which campaigns bring conversations and which bring sales.
  • Respect privacy. Explain in your privacy policy that you use this kind of tracking, and follow the data protection law that applies to you.

Fallback: ask the customer

Not every customer will go through your website. Many will save the number from a business card, get it from a friend or type it in directly. For them, the simplest way is still to ask.

Some ways to ask without getting in the way:

  • At the end of the first conversation: "Just so I know, how did you hear about us?"
  • In a chatbot menu, as a light option the person doesn't have to answer.
  • In a form, with a source field and fixed options (Instagram, Google, referral, walked by, other).

Save the answer as a tag on the contact. Use the same words as your UTMs so the data lines up.

Reading the data

Having a source for each contact is just the start. The value comes from comparing the source with the result. A few questions to ask every month:

Question What it reveals
How many conversations did each source bring? Where the volume is
How many of those turned into sales? Where the quality is
What's the sales value by source? Where the money is
How many contacts have no source? How big the remaining gap is

It's common to find that the channel bringing the most messages isn't the one bringing the most sales. A cheap ad can fill the inbox with curious people, while referrals bring a few people who almost always buy.

Two cautions. First, give it time: a week of data is too little to draw conclusions. Second, remember that a customer may have seen you several times before messaging. The recorded source is the click that led to the conversation, not the whole story.

How IntegraWhats does this

IntegraWhats has a website pixel that records source, campaign, pages viewed and purchases, and ties all of it to the contact. The pixel's WhatsApp button creates the contact at the moment of the click, and the conversation reaches the inbox with that history. Forms and the bio-link page also record the source.

The pixel and one WhatsApp number are included in the free plan, with no card required. You can start measuring before changing anything else in how you handle customers.

Frequently asked questions

Usually not the way you'd expect. A direct link opens the app, and the UTM information doesn't reach the conversation. To keep the source, the click needs to go through your website first, where the pixel reads the UTM and ties it to the contact.

Do I need a website to know where customers come from?

It helps a lot, because the website is where the pixel records the source. Without one, you can still use a bio-link page, forms and asking customers during the chat, saving the answer as a tag.

Does the pixel replace asking the customer?

Not completely. It covers people who go through your website. Customers who come from referrals, business cards or a saved number still have no recorded source. Asking during the conversation fills in the rest.

Can I use the pixel and still respect privacy laws?

Yes, as long as your privacy policy tells visitors what is recorded and why, and you handle that data with the same care as any other customer data.

Keep reading