Skip to main content
Ads is a tab on Reports. It answers one question: of the people who tapped one of your ads and then messaged you on WhatsApp, what happened next. On screen it introduces itself as What each ad produced in conversations, contacts and revenue. It only reads. Nothing here changes a contact, a conversation or a payment.
This is not return on ad spend. DMLY only ever hears about an ad when somebody taps it and sends you a message. So every figure on this page is a response to your advertising, never the cost of it. The page says so under the cards, in these words:
DMLY sees an ad only when somebody clicks it and messages you, so this reports responses — not spend, reach or impressions.
There is no cost, no cost per click, no impressions and no reach on this page, and there cannot be. Read What DMLY sees, and what it cannot before you put a revenue figure next to an ad and call it profit.

Open the report

1

Open Reports

In the sidebar, under Configurations, select Reports, then select the Ads tab. It sits between Finance and CSAT. Finance only appears if your role can view finance, so on some accounts the strip is five tabs and Ads is third.
2

Read the cards

Ads with replies, Conversations, New contacts and Revenue. Revenue is there only if your role can view finance; without it you get the other three.
3

Read the table

One row per ad, busiest first.
4

Filter by date

Set From and To to narrow the window. Leave both blank and the report covers the trailing 30 days. Some figures ignore your dates on purpose; see Filter by date.
5

Export

CSV gives you the table as a spreadsheet. See Export.
This report covers ads that open a WhatsApp chat, which is what the browser tab calls them: Click-to-WhatsApp ads. An ad that opens a Messenger or Instagram chat instead is not reported here at all. The ad’s details reach DMLY on WhatsApp’s own webhook, and there is no equivalent report for the other two.

What DMLY sees, and what it cannot

To work out whether an ad paid for itself you need both halves: take the revenue on this page and set it against the spend in Ads Manager yourself. DMLY never sees your ad account, so it can never do that sum for you.
An ad missing from the list is not an ad with a zero. An ad only appears once somebody has tapped it and messaged you inside your date range. A campaign that ran all week and got no messages is simply absent, and so is one whose only messages arrived outside the window. Read this list as “ads that got a reply”, not as “the ads I am running”.

What each number means

The cards sum up the whole window. The table breaks the same figures down per ad. Rows are ordered busiest first: most conversations, and where two ads tie, most messages.
Two ads can share a headline, but never an ID. When you need to be certain which ad a row is, go by the ID under the headline, not by the words. If you edit an ad’s headline mid-campaign the row shows whatever the ad says now, not what it said when the first person tapped it.

Who gets credit for a contact

A contact belongs to exactly one ad: the first one that ever brought them to you. That is first-touch credit, and it never moves afterwards. This matters most for the ads you run at people who already know you. Say a salon runs a Summer Sale ad in June that brings in forty new clients, then a Winter Clearance ad in December aimed at reminding old clients you exist. Fifteen of those June clients tap the December ad and message you. If it worked the other way round, every re-engagement ad you ever ran would look like your best source of new business, and the ad that actually paid to win those clients would show nothing. So a re-engagement ad is credited honestly: it gets the conversations it caused, and it does not claim customers it merely reached again.
New contacts counts an ad’s whole history, not just your date range. The dates decide which ads appear in the list, and what their Conversations and Messages figures are. New contacts is then the full count of everyone that ad has ever acquired. Narrowing the dates will not narrow that column.
The same rule writes the Source on the contact record itself, in words rather than IDs: WhatsApp ad: Summer Sale, or WhatsApp post: Our new opening hours when the tap came from an organic post rather than a paid ad. A later ad never overwrites it, and neither does anything overwrite a source you typed in yourself, so a contact you had already marked as Walk-in referral keeps that. You can filter and segment on Source; see Tags and segments.

Revenue

Revenue against an ad is money you collected inside your date range, from the contacts that ad acquired. It puts the same value on a payment as the finance report does for Money in, deliberately, so the two can never price the same sale differently:
  • Dated by the day the payment arrived, not by the day the ad ran and not by the day you invoiced.
  • Tips are excluded. A gratuity moves money but is not takings.
  • Refunds are taken off.
  • A payment that never actually arrived does not count.
  • Amounts are added up in your workspace currency, with no conversion between currencies.
One kind of payment lands here that Money in deliberately leaves out: a gift card being spent. The finance report drops those, because it already counted that money when you sold the card; this column does not. So an ad-won customer paying with a gift card adds to their ad’s revenue without adding to Money in. Either way these rows are a slice of your takings rather than all of them, and they are not meant to add up to Money in. Because it is dated by the payment, an ad from six months ago can show revenue this month, as long as somebody also tapped that ad inside your window. If nobody did, the ad has no row at all and that money appears nowhere on this page.
Revenue beside an ad is what those customers paid you. It has nothing subtracted for what the ad cost, because DMLY does not know what the ad cost. It is not profit, and it is not return on ad spend.

Who can see the money

The Ads tab itself is not restricted to people who can see finance. Anyone who can open Reports gets it.
  • Can view finance (owners and admins, and any role you have given that permission): the full report, with the Revenue card, the Revenue column and revenue in the export.
  • Cannot view finance: the same report with the money taken out. Three cards instead of four, no Revenue column, and no revenue in the CSV. Everything else works normally: conversations, messages, new contacts, the dates and the export are all there.
The money is not merely hidden from the screen for that teammate. It is removed before the page is built, so it is not sitting behind the table waiting to be found. See Roles and permissions. Exporting is a separate permission again: CSV needs Export reports, which is admin only by default. The button is shown to everyone, so a teammate can select it and still be turned away. That is true of every Reports tab.

Filter by date

From and To are the only filters, and there is nothing to select to apply them: the report reloads the moment you change a date. A Clear filter link appears while either is set and resets both.
  • Leave both blank and you get the trailing 30 days, ending today.
  • Set From later than To and DMLY reads it as a typo and swaps them, rather than showing you nothing.
What your dates govern: With nothing to show, the table reads No ad-referred conversations in this range. On a very busy range a warning appears above the table: Showing the first 20,000 ad messages in this range. Narrow the dates for exact figures. Split the range into shorter windows when you need the counts to be exact.

Export

1

CSV

click-to-whatsapp-ads.csv: one row per ad, in the same order as the table, with the columns Ad ID, Headline, Type, Conversations, Messages and New contacts, plus Revenue and Currency when your role can view finance.The file splits the table’s single Ad cell into three columns, and Type carries Meta’s own raw word, ad or post, rather than the From an ad wording you see on screen.
2

PDF

Every other Reports tab downloads itself as a formatted PDF from this button. This one does not: selecting PDF here fails instead of producing a file. Take the CSV, which carries every row.
3

Workspace report

The Workspace report button is on this tab like every other, but the combined PDF it downloads has no ads section in it. Use this tab’s CSV to take these rows away with you.
Your From and To carry into the CSV, so the file matches the window you were looking at. See Exporting reports.

Where else an ad shows up

In the inbox

An ad-referred WhatsApp message carries a small card above it reading From an ad or From a post, with the ad’s headline, the first lines of its copy and its picture. Where the ad has a link the card opens it. So whoever answers can see which offer the person is replying to before typing a word.

On the contact

The contact’s Source names the ad that brought them in: WhatsApp ad: Summer Sale. See Contacts.

In an automation

The Click-to-WhatsApp ad trigger starts a flow when somebody messages you from an ad: any ad, or one specific ad. Copy the ID out of this report’s Ad column to pin a flow to one. See Triggers.

Caveats

Nobody has tapped it and messaged you inside your dates. DMLY learns about an ad from the message it produces, so an ad with no messages is invisible here rather than a row of zeros. Widen the dates, then check the ad in Ads Manager to see whether it is getting clicks at all.
Correct, and deliberate. The dates decide which ads are listed, and how many conversations and messages they had. New contacts is the total that ad has ever acquired, so it stays put. To ask “how many new people did this ad bring me in March”, set the dates to March and read Conversations, then check the contacts themselves by Source.
That is the report working. They were already yours, so the ad gets the Conversations it earned while the credit for winning them stays with the ad that first brought them in. Anything they spend stays with that first ad too.
The two are not measuring the same thing. This column is money you actually collected in DMLY from the people an ad brought you: after refunds, without tips, and with nothing subtracted for ad spend. Meta reports on what it observed on its own platform. Expect them to differ, and use Ads Manager for cost.
Their role cannot view finance. They still get the rest of the report. Give them View finance (invoices, payments, orders) if they should see the money. See Roles and permissions.
Check the IDs under the headlines. Two different ads sharing a headline get a row each, which is right: they are two ads. One ad never splits across two rows, however often you rename it.

Next

Finance report

Where the revenue rules come from: what counts as money in, and what does not.

Triggers

Start a flow when somebody messages you from an ad.

Contacts

Contact records, and the Source that names the ad.

Exporting reports

Every CSV and PDF export across Reports, in one place.