Rutba CRM

Advertising

Tell Google and Meta which ads brought real sales, see which ad brought each customer, build ad audiences and ask for Google reviews.

The Advertising page connects your ads to what really happened afterwards. Google and Meta show your ads to people like those who clicked. When they also learn who actually bought, they show your ads to people like your buyers, and the same budget brings more sales. This page walks through every card on the page, what it sends, what it never sends, and what to do when something does not arrive.

Before you start

  • Who can do it: owners and administrators. Members and viewers do not see the page, and a custom role that blocks Campaign returns keeps a person away from it too.
  • Plan: available when your plan includes Campaign returns. The Google Ads script also needs API access, website clicks need Tracking and customer journey, customer lists need Customer segments, and review requests need the WhatsApp channel.
  • Where: in the sidebar, open Advertising. The Campaign returns button at the top opens the report of cost and sales per campaign. See Campaign returns.
  • Everything is off until you turn it on. Nothing is sent to Google, Meta or a customer until you tick a card's switch and select Save. You can turn any card off again at any time, and each card is saved on its own.

Who it helps most:

Business What counts
Online stores Paid orders are told back automatically, with their value
Real estate and services A won deal can count as the sale, and enquiries from forms or WhatsApp as leads
Any website with a form Each enquiry can count as a lead, so ads look for people who get in touch

The figures at the top

Four tiles cover the last 30 days:

Tile Meaning
Ad clicks recorded Ad clicks of every kind that Rutba CRM saw: Google, Facebook or Instagram, and chats from ads
Sales told to Google Sales and leads the Google Ads script uploaded, with how many are still waiting for it
Sales told to Meta Sales and leads sent to Meta, from the Meta card and the WhatsApp ads card together, with how many are waiting
Chats from ads People who wrote to you from a WhatsApp, Messenger or Instagram ad

How ad clicks are recorded

A sale can only be tied to an ad when Rutba CRM knows which ad the person came from. That happens in three ways, and none of them needs a switch:

  • Your website. With the tracking snippet on your site, a visit that arrives from a Google ad (gclid, gbraid or wbraid in the address) or a Facebook or Instagram ad (fbclid, or Meta's own _fbc cookie when the site has the Meta pixel) is recorded. When the visitor later sends a form or places an order, the click joins their contact.
  • Website forms. A form sent from a page whose address carries one of those identifiers records the click on the new contact.
  • Chats from ads. WhatsApp, Messenger and Instagram tell Rutba CRM which ad a conversation started from. See the card Ads that open a chat below.

Each click appears in the contact's Customer journey as Ad, with its platform, when your plan includes Tracking and customer journey. The tracking snippet records clicks only after the visitor's consent when your site asks for it, and never for browsers that send Do Not Track or Global Privacy Control.

1. What counts as a sale

Choose once; Google and Meta both use it.

  • A paid or confirmed store order always counts as a sale, with its amount. Orders brought in from your store's history are not sent, only orders that arrive or change from now on.
  • Tick Also count a won deal as a sale for real estate, services and anything sold through deals rather than a store. The deal's value and currency are sent.
  • A new contact from a website form, a conversation or a store is a lead. Leads are sent only where a card below asks for them.

Select Save. An order confirmed twice is still one sale.

2. Google Ads

What it does: tells Google which clicks became sales, so Google learns which searches and audiences bring buyers, not just visitors, and smart bidding spends your budget on them.

Who it is for: anyone who runs Google Ads that send people to their website.

Set it up

  1. In Google Ads open Goals, then Conversions, then New conversion action, then Import, then CRM or other files, and choose conversions from clicks. Name it, for example "CRM purchase".
  2. On the Advertising page, write that exact name in Conversion name for sales and tick Send sales to Google Ads. A second conversion action for leads, written in Conversion name for leads, is optional.
  3. Select Save.
  4. Make sure your website has the tracking snippet (see Tracking), so the Google click is recorded when a visitor arrives from an ad.
  5. Install the latest Google Ads script from Google Ads. Every day it sends your ad costs and uploads the sales to Google.

The names must match the conversion actions in Google Ads character for character, up to 100 characters. Conversion name for sales is required while the card is on.

What is sent, and what is not

  • The script collects, for each sale: the Google click identifier, the conversion name, the time in UTC, and for a sale its value and currency. Leads carry no value.
  • No name, email or phone leaves for Google from this card.
  • Only clicks with a gclid are uploaded. Clicks from Google's app campaigns (gbraid and wbraid) are recorded and appear in the customer journey, but are not uploaded.
  • Only sales whose Google click was at most 90 days earlier are sent, as Google accepts.
  • A sale with no Google click is not sent. Nothing is queued while the card is off, so sales from before you turned it on are not sent later.
  • A lead is sent only when its click was already known at the moment the lead was created, and only when Conversion name for leads is filled in.

Status line

Uploaded: N · Waiting for the script: N, for the last 30 days, followed by last upload and its date once the script has uploaded something. A sale waits until the next run of the script, which picks up to 500 at a time.

3. Meta: Facebook and Instagram

What it does: tells Meta about sales through its Conversions API, straight from the server, not from the visitor's browser. Meta matches each sale to the person who saw or clicked your ad, even when their browser blocks tracking, and optimizes your campaigns for purchases.

Who it is for: anyone who runs Facebook or Instagram ads.

Set it up

  1. In Meta Events Manager open your dataset (pixel) and copy its ID into Dataset (pixel) ID.
  2. In the same place open Settings, then Conversions API, then Generate access token. Paste it into Access token: it is stored encrypted and never shown again.
  3. For a first try, copy the code from the Test events tab into Test code.
  4. Tick Send sales to Meta and select Save.
  5. Select Check the connection and watch the test event arrive in Test events.
  6. Empty Test code and select Save again.

Check the connection works only once Send sales to Meta is on and saved with a dataset ID and a token; before that it says Save the dataset ID and access token first. While a test code is saved, everything Meta receives, real sales included, appears in Test events and does not count, so remove it as soon as the check succeeds.

After saving, the token field shows Saved. Leave empty to keep it. Paste a new token only to replace it. Ad account ID on this card is used only by Customer lists for ads.

What Meta hears about

Under What Meta hears about:

Choice What is sent
Sales from people who clicked a Facebook or Instagram ad Always on while the card is on. A sale is sent when the buyer clicked one of your ads in the 7 days before it
Every sale, matched by the buyer's email and phone Optional. Every sale is sent, with or without a click, and Meta finds the buyer by their email and phone
Also new leads from forms and conversations Optional. A new lead is sent as a lead, when its ad click was already known at the moment the lead was created

Each event carries: the kind (a purchase or a lead), its time, the value and currency for a sale, and, to match the person, their email and phone as one-way SHA-256 hashes, a hash of the contact's own number in Rutba CRM, and Meta's click and browser identifiers when they are known. Names, addresses and the order's contents are never sent.

Privacy

  • Emails are lowercased and phones reduced to digits with the country code before hashing, as Meta asks. Meta cannot read a hash back.
  • If you tick Every sale, matched by the buyer's email and phone, mention it in your privacy policy.
  • A sale of a contact whose data was erased is never sent.
  • Sales are told to Meta whether or not the customer opted out of marketing: this card reports sales, it does not send them anything.
  • The token travels inside the request to Meta, never in an address, so no log holds it.

Limits

  • Meta refuses events older than 7 days, so a sale that waited longer, for example while the token was wrong, is set aside and not sent.
  • A sale with no email, no phone and no Meta click cannot be matched and is not sent.
  • Sales are sent every minute, up to 100 at a time. When Meta refuses a batch, it is tried again after 10, 20, 40 and 80 minutes, then counted as failed.

Status line

Sent: N · Waiting: N · Failed: N, for the last 30 days. When Meta refused something, Last problem: shows Meta's own words, and it clears at the next success.

4. Ads that open a chat

What it does: when someone writes to you from a Click-to-WhatsApp, Messenger or Instagram ad, the ad is saved on their contact. The card shows Always recorded: this part needs no switch.

Who it is for: anyone whose ads open a chat instead of a website.

The table lists the ads of the last 30 days, up to 20, the ones that brought the most orders first:

Column Meaning
Ad The platform (WhatsApp ad, Messenger ad or Instagram ad) and the ad's title. Without a title it shows the ad's number, or Ad without a title
People How many people wrote to you from it
Orders Paid or confirmed store orders those people placed after writing
Sales The value of those orders, in each currency

Until someone writes from an ad, the card says No chats from ads yet. The same ad also appears in each contact's Customer journey.

Tell Meta about sales from WhatsApp ads

Tick Tell Meta about sales from WhatsApp ads and select Save. Meta then optimizes Click-to-WhatsApp ads for people who buy, not only for people who write. It uses the access token from the Meta card, which must be saved, but Send sales to Meta does not need to be on.

  • WhatsApp dataset ID is optional. Fill it in only if Meta gave your WhatsApp Business Account its own dataset; otherwise the dataset of the Meta card is used.
  • What is sent: the sale's value and currency, the WhatsApp click identifier Meta gave the chat, and your WhatsApp Business Account ID. No email, phone or name.
  • Only sales within 7 days of the chat are sent, only for WhatsApp (not Messenger or Instagram), and only when the WhatsApp channel was added with its WhatsApp Business Account ID (for templates). See WhatsApp.

Status line: Sent: N · Waiting: N, for the last 30 days.

5. Customer lists for ads

What it does: turns a segment, such as repeat buyers or customers who stopped buying, into an audience for your ads, so you can show ads to your best customers again, or to people like them.

Who it is for: stores and services with a customer base worth reaching again.

Set it up

  1. Make the segment first. With no segments, the card says You have no segments yet. with a Make a segment link. See Segments and search.
  2. For Meta, add Ad account ID and the access token on the Meta card and save it. The ID is in Meta Ads Manager and starts with act_; you can paste it with or without act_. Until both are saved, the card says To keep lists in Meta, add your ad account ID and access token in the Meta card.
  3. Next to a segment, select Keep in Meta. It shows Will be sent tonight.
  4. For Google, select File for Google to download the list. In Google Ads upload the file under Tools, Audience manager, Customer list.

How it works

  • A list kept in Meta is replaced every night with the segment as it is then, so someone who left the segment, or said no to marketing, leaves the list too. The segment then shows how many people were sent and when.
  • Stop in Meta stops the nightly updates. The audience stays in Meta Ads Manager with its last members; delete it there if you no longer want it. A segment that is archived stops being sent.
  • Up to 20 lists per company are kept in step, each of up to 100,000 people.
  • A problem from Meta is shown under the segment, and the list is tried again the next night.

Privacy

Only people who did not opt out of marketing, who have an email or a phone, and who are not archived or erased. Emails and phones are hashed with SHA-256 before they leave; names never do. The Google file holds two columns, Email and Phone, both hashed. Each download of the file is recorded in the audit log as a segment export.

6. Google reviews

What it does: asks every customer for a Google review some time after their order arrives, by an approved WhatsApp template. More reviews bring more trust and better placement on Google Maps. A reply that sounds unhappy reaches your managers at once, so you can make it right first.

Who it is for: stores whose orders are marked delivered or completed.

Set it up

  1. Connect a WhatsApp number first; until then the card says Connect a WhatsApp channel first: reviews are asked by WhatsApp. See WhatsApp.
  2. In WhatsApp Manager, create a template that asks for a review and wait for Meta to approve it, then sync templates on the channel. Its blanks are filled in order: the customer's name, your review link, the order number.
  3. In your Google Business Profile, choose Ask for reviews and copy the link.
  4. On the card, tick Ask for a Google review after delivery, then choose WhatsApp number and Approved template, paste Review link, and pick When to ask: 2, 6, 24, 48, 72, 120 or 168 hours after delivery. 48 hours is the default.
  5. Select Save.

The review link must start with https://. A number that is not yours gives Choose one of your WhatsApp numbers., and a template of another number gives Choose an approved template of that number.

The rules

  • Every customer is asked the same way, as Google requires: the review link goes to everyone, never only to the happy ones.
  • Only customers who agreed to WhatsApp messages are asked. See how consent is recorded in WhatsApp broadcasts.
  • Nobody is asked who opted out of marketing, who has no phone, or whose data was erased.
  • Each person is asked at most once in 60 days, however often they buy, and once per order.
  • The request is planned when an order changes to delivered or completed while the card is on. Orders delivered before, or brought in from your store's history, are not asked.
  • Due requests are sent every 15 minutes, up to 50 at a time for each company.

Replies

A reply within 7 days of the request is read roughly: a score of 1 to 3, one to three stars, or words of complaint are unhappy; 4 or 5, or words of thanks, are happy; anything else is left to a person. An unhappy reply sends A customer sounds unhappy to every owner and administrator, in the Support group of Notifications.

Status line: Asked: N · Happy replies: N · Unhappy replies: N · Waiting: N, for the last 30 days.

Troubleshooting

What you see What to do
Waiting for the script keeps growing The Google Ads script is not installed, is an older version without sales, or does not run daily. Check its logs for lines starting with Sales:. See Google Ads
Sales from Google ads are never counted Check that the tracking snippet is on the site and the visitor accepted the consent banner, that auto-tagging is on in Google Ads, and that the sale came within 90 days of the click
Google shows no conversions although uploads happen The conversion name must match the conversion action character for character. The script hands rows to Google and confirms them at once, so a row Google refuses is not offered again
Paste the access token from Events Manager. Send sales to Meta is ticked but no token was ever saved
This does not look like a Meta access token. Copy the whole token again, without spaces
Save the dataset ID and access token first. Turn on Send sales to Meta, fill in both fields, save, then check again
Meta did not accept it: followed by a message Meta's own reason, usually a wrong dataset ID or an expired token. Generate a new token and paste it
The Failed: count grows on the Meta card Read Last problem:. Once fixed, new sales are sent; failed ones are not retried
A sale from Meta ads is not sent The buyer had no Meta click in the last 7 days and Every sale, matched by the buyer's email and phone is off, or the contact has no email, phone or click
Sales in Meta all show as test events Test code is still filled in. Empty it and save
A chat from an ad is not in the table Only a message that carries the ad's details records the ad, usually the first message after the click. The table also shows only people who wrote in the last 30 days
A customer list shows an error Meta's own reason, often a token without access to the ad account. Fix it; the list is tried again tonight
Nobody is asked for a review Check that the customers have WhatsApp consent, the template is still approved, the channel is on, and the store sends orders as delivered or completed

Last updated 2026-11-08