Blog · Meta Ads · 7 min read

Conversions API for WhatsApp: how to send CRM events back to Meta

Why Meta mostly sees chats, not buyers, on click-to-WhatsApp ads, and how Conversions API lets your CRM send qualified lead and purchase events back.

By the ConvoBox team · ConvoBox Inc, Official Meta Tech Partner

Laptop showing analytics graphs used to track ad results
Photo: Goumbik / Pexels

Key takeaways

  • Without feedback from you, Meta mostly sees clicks and first messages on a click-to-WhatsApp campaign, because it cannot see what happens inside your inbox.
  • Conversions API for Business Messaging lets a partner platform send events such as LeadSubmitted, QualifiedLead and Purchase, tied to the ad through the ctwa_clid click ID.
  • Map the stage where you would happily pay for another lead like this one; too early tells Meta nothing, too late may give it too few events.
  • It needs enough volume and honest stage updates from your team, and results vary, so treat it as a test and compare cost per qualified lead.
  • Send stage signals only, never chat text or health details, and check consent rules under India's DPDP Act.
On this page
  1. Why does Meta optimise for chats and not buyers?
  2. What is Conversions API for Business Messaging?
  3. Which events can you send?
  4. How do you map your CRM stages to events?
  5. How do you set up CRM signals to Meta?
  6. How long until it helps, and will it?
  7. How does ConvoBox send CRM signals to Meta?

Left alone, a click-to-WhatsApp campaign mostly reports what Meta can see for itself: the click and the first message. It has no view of which chats turned into real customers. Conversions API for Business Messaging closes that gap by letting your software send outcomes, such as a qualified lead or a purchase, back to Meta, so the campaign can be measured and optimised against those instead of against chat counts.

Whether that actually lowers what you pay per customer is the part nobody can promise. This post explains what gets sent, how to choose which stage to send, and how to test it fairly on your own account.

Why does Meta optimise for chats and not buyers?

Because chats are the result Meta observes directly. When you run a click-to-WhatsApp campaign, it sees the click and the first message. What happens next, in your inbox and on the phone, is invisible to it unless you report it.

So the system looks for more people who are likely to start chats. Some of those are serious buyers. Others are just curious, or never reply again. Meta can't tell the difference without your help.

Say you run a clinic in Hyderabad advertising a health check-up package. This is an invented example: two hundred people message you this month and thirty book. In Meta's reports the campaign "got 200 chats". It has no idea which 30 mattered, so it can't look specifically for more people like them.

What is Conversions API for Business Messaging?

It's Meta's way for a partner platform to report what happened after a chat started, tied back to the ad that started it. Events are sent with an action source of "business_messaging" and a messaging channel of "whatsapp", and each one carries the click ID (ctwa_clid) from the ad referral, so Meta knows which ad it belongs to.

Meta's stated purpose is to let it measure and optimise ads for real outcomes, not just chats. What you send is a short signal: this person became a qualified lead, or this person bought. You don't need to send the conversation itself, and for privacy reasons we'd advise against it.

One practical consequence: the click ID arrives with the first message from the ad, so your platform has to capture it at that moment. A chat that started some other way, such as a customer who found your number on a hoarding, has no ad click ID, so there is nothing to attach a signal to. Only ad-originated chats can feed back to the campaign.

The related terms are in our glossary under conversion signals and click-to-WhatsApp ads.

Which events can you send?

Meta lists several, including LeadSubmitted, QualifiedLead, Purchase, OrderCreated, OrderShipped, OrderDelivered and CartAbandoned. You don't need all of them. Pick the two or three that mark real steps in your sales process.

EventPlain reading (check Meta's documentation for exact definitions)
LeadSubmittedSomeone showed interest and shared their details
QualifiedLeadYour team decided this person is a real prospect
PurchaseThe person paid or bought
OrderCreated, OrderShipped, OrderDeliveredStages of an order
CartAbandonedThe person started buying but left

The names are Meta's. What each one means in your business is your call, and that decision is most of the real work. Platforms also differ in how their own stage names map to Meta's event names, so check how yours does it before you rely on a particular event.

How do you map your CRM stages to events?

Choose the stage where you'd happily pay for another lead like this one, and send that stage as the signal. As a rule of thumb, sending too early (every chat) tells Meta nothing new, and sending too late (only the final sale) may leave too few events to learn from.

These example mappings are starting points. Yours may differ.

Stage: Store visit booked or catalog order placed. Send LeadSubmitted when the customer shares what they're looking for, QualifiedLead when a visit or advance is booked, and Purchase when they pay. For a jeweller with long buying cycles, the booked visit may be your most useful signal because sales are fewer and slower.

Stage: Appointment booked. Send QualifiedLead when a slot is booked, and Purchase if you collect payment in advance. Be careful here: don't send anything about a patient's condition or tests. Signals should say what stage someone reached, not why.

Stage: Counselling call done, then Admission. Send QualifiedLead after a counsellor confirms the student fits, and Purchase when the fee is paid. Most chats start with "fees?" so QualifiedLead is the signal that separates the serious ones.

Stage: Order paid. Send Purchase when an order is paid, and consider CartAbandoned or OrderCreated if they match how your store works. A store with a steady flow of orders may have enough Purchase events on their own; a small one may not.

How do you set up CRM signals to Meta?

You need a click-to-WhatsApp campaign, a platform that tags chats with the ad and tracks your sales stages, and a connection that sends stage changes back to Meta. The steps below follow how that works in practice.

  1. Define your stages in plain words

    Write down the steps a chat goes through, for example New, Qualified, Quoted, Won. Make them honest: "Qualified" should mean your team really judged the lead good, not "replied once".

  2. Pick the one or two stages that matter most

    Choose the stage where a lead is clearly worth paying for, and the final sale if you have enough volume.

  3. Connect your ad account to your WhatsApp platform

    This lets the platform read the ad referral on each new chat, including the click ID.

  4. Make the team move stages consistently

    The signal is only as good as the data. If agents forget to update stages, Meta learns from noise. Keep it to one button or one drag.

  5. Let it run, then review

    Check your qualified-lead and sale counts each week. Compare cost per qualified lead before and after.

Mistakes that quietly spoil the signal

These are general lessons rather than anything Meta publishes, but they follow from how the system works. If one agent marks every chat "Qualified" to look busy, Meta is told that everyone is a good lead. If you rename or redefine a stage halfway through a campaign, before and after are no longer comparable. And if only half your agents update stages, the leads that get recorded are the ones handled by your most organised people, which skews what Meta learns.

It's worth agreeing one sentence for each stage and sticking to it for the length of your test.

  • Every stage you'll send has a one-line written definition
  • All agents know when to move a lead to that stage
  • You've noted cost per qualified lead for the four weeks before
  • Only chats that started from an ad are being counted
  • No chat text or health details are going to Meta

How long until it helps, and will it?

Nobody can tell you in advance, and we haven't seen a published figure we'd trust. In general, ad optimisation needs enough events to work with, and every account differs. A campaign with a handful of sales a month gives it little, while one with plenty of qualified leads gives it more.

A sensible approach is to treat it as a test. Note your cost per qualified lead for the four weeks before you start, send signals for at least four to six weeks, and compare. If numbers are low, send the earlier stage (qualified lead) so there are more events. Those time periods are our suggestion, not a Meta rule.

Laptop screen showing marketing analytics graphs
Cost per qualified lead is a better yardstick for chat ads than cost per chat.

How does ConvoBox send CRM signals to Meta?

ConvoBox's Meta Ads integration tags every click-to-WhatsApp chat with its campaign and ad, and sends CRM stage changes you choose, such as Qualified and Won, back to Meta as they happen. You pick the stages in the integration settings; no developer is needed.

That works together with the WhatsApp CRM, where each contact has an owner and a stage next to the chat, and workflows can move a contact between stages based on what they reply. The ad-source tag also shows in the team inbox, so agents see which ad the customer clicked.

The limits are plain. ConvoBox can send the signals; it can't make Meta's optimisation work faster or guarantee cheaper leads. If your team doesn't update stages, there is nothing worth sending. For leads that come from forms instead of chats, read how to follow up Lead Ads on WhatsApp.

Sources

  1. Conversions API for Business Messaging, Meta for Developers
  2. WhatsApp Business Platform pricing, Meta for Developers
  3. Getting opt-in for WhatsApp, Meta for Developers
Try it on your own WhatsApp number

7-day free trial, no credit card, hand-held onboarding.

Frequently asked questions

Short, direct answers. Still unsure? Message the team on WhatsApp.

What is Conversions API for Business Messaging?

It lets a partner platform send events to Meta after a chat starts from an ad, using action source business_messaging, messaging channel whatsapp and the ctwa_clid click ID. Events include LeadSubmitted, QualifiedLead and Purchase. Meta uses them to measure and optimise ads for real outcomes instead of only chats.

Will sending CRM events lower my cost per lead?

Possibly, but nobody can promise it, and there is no guaranteed saving. Optimisation needs enough events to work with, and your stage data must be accurate. Compare your cost per qualified lead for a few weeks before and after, and expect results to vary by business, offer and reply speed.

Which CRM stage should I send to Meta?

Send the stage where you would gladly pay for more leads like this one, often Qualified. Sending every chat tells Meta nothing new, and sending only final sales may leave too few events. If sales are rare, start with the earlier qualified stage and add purchase later.

Do I need a developer to send events to Meta?

Not with a platform that supports it. In ConvoBox you connect Meta Ads from the integrations page, turn on click-to-WhatsApp tagging and choose which CRM stages send signals. A custom build using Meta's API directly would need a developer.

Is it safe to send customer data back to Meta?

Send only stage events, not chat messages or sensitive details such as health information. Consent and privacy rules apply, including India's DPDP Act 2023, whose Rules were notified in November 2025 and phase in through 2027. Check the latest notification and take advice from a qualified professional.

  Get started today

Start selling and supporting on WhatsApp this week

Connect your number to the official WhatsApp Business API and launch your first broadcast, chatbot or Shopify automation the same day.

  • 7-day free trial
  • No credit card
  • Official Meta Tech Partner
  • Hand-held onboarding
WhatsApp marketing, automation and CRMBook a demoStart free trial