Skip to content
Report · from spend to sale

Which ad drives sales? A Meta ads report by creative

The report in CAPI Platform (capip.uz) puts Meta ad spend and CRM outcomes — from Bitrix24, amoCRM (Kommo) or capiCRM — in one table. For every creative, ad, ad set and campaign it shows what was spent, how many leads came, how many were qualified, how many became sales and what one customer cost. Ads Manager shows the price of a lead; this report shows which ad drives sales.

  • Spend, leads, CPL, qualified leads, CPQL, sales, CAC, revenue and ROAS in one table
  • By creative, ad, ad set and campaign
  • Counts people, not rows
  • Works with Bitrix24, amoCRM (Kommo) and capiCRM
Four tiles of a driving school's ad report: spend $885, ad leads 863 (CPL $1.03), qualified leads 335 (CPQL $2.64), sales 36 (CAC $24.58).
Driving school, 2–8 October 2026: spend, ad leads, qualified leads and sales. A screen from the product.
A familiar argument

The lead price is great. Where are the sales?

The report in Ads Manager stops at the lead. The sale happens in the CRM — after a call, a meeting and a payment.

The chat is an illustration; the numbers are from a real report (a driving school, 2–8 October 2026). Both are right about their own number: one is looking at the ad account, the other at the CRM. The report puts both numbers on one row.

Media buyer
  • 863 leads this week. Sales: 36.
  • Cost per lead is $1.03. That is a great result.
  • This ad here: 79 leads, 0 sales.
  • In Ads Manager it is the “best” ad.
Real example · driving school, 2–8 October 2026

79 leads, 0 sales. 77 leads, 5 sales

The first creative brings leads at $0.87 each: in Ads Manager it is the “best” ad. In the CRM it has not produced a single sale. The second creative’s lead costs $1.28 — 47% more — and the outcome is different: 77 leads, 26 qualified, 5 sales. Both ran in the same project in the same week; only the CRM outcome tells them apart.

  • Sort by cost per lead and the first creative wins.
  • Sort by sales and the second one does.
  • Click a column header to sort the table by any metric.
Article: which creative sells
Two creatives in the report: one with 79 leads at $0.87 each and 0 sales, the other with 77 leads at $1.28 each and 5 sales.
Two creatives, one week. A screen from the product.
In that same week

$386 went to 23 creatives with no sale

Driving school, 2–8 October 2026. The week’s spend was $885; 44% of it went to creatives that did not bring a single sale.

spent on creatives with no sale44% of the budget
$386
creatives spent money and sold nothing
23
sales in the weekcost per customer (CAC): $24.58
36
ROASrevenue recorded in the CRM: $5,297
5.99×

This is one week of one project, not a promise of results. Not every creative without a sale is a bad one: a new creative’s leads may not have reached payment yet. That is why the report has two counting methods, described below.

Metrics

What the report shows

A spend-to-sale report is a table that ties ad spend to CRM outcomes: spend → lead → qualified lead → sale, separately for every creative. The right-hand column is one week of a driving school.

MetricHow it is calculatedDriving school, 2–8 October 2026
SpendRead from Meta, refreshed every hour$885
LeadsPeople who reached the CRM and are tied to a specific ad863
CPL, cost per leadspend ÷ leads$1.03
Qualified leadsReached the CRM stage marked as a qualified lead335 (39%)
CPQL, cost per qualified leadspend ÷ qualified leads$2.64
SalesMoved to a sale stage in the CRM36
CAC, customer acquisition costspend ÷ sales$24.58
RevenueDeal amounts recorded in the CRM, in the report currency$5,297
ROASrevenue ÷ spend5.99×

More columns: impressions, clicks, CTR, CPC, CPM, qualified % and junk leads. Cost metrics are calculated only on leads tied to an ad: a walk-in customer, or a call that no ad can be tied to, is not counted against ad spend.

Funnel

Lead → qualified lead → sale: where the money stays

The funnel block splits the period into three steps. The driving school’s week: 863 leads, 335 qualified (39%), 36 sales. The percentage on each arrow is the share that reached the next stage. The top row is ad leads; the bottom row is every lead in the CRM.

  • A low qualified share is a question for the ads: who are they bringing in?
  • Plenty of qualified leads and few sales is a question for the sales team.
  • Which stage counts as a qualified lead and which as a sale is set once, from your own CRM pipeline.
  • On its own, Meta saw 863 leads that week and none of the 36 sales. The Conversions API fixes that.
The report's funnel: 863 ad leads, 335 of them qualified (39%) and 36 sales (11% of the qualified), with the CRM-wide total beside each step.
The funnel: lead → qualified lead → sale, with the conversion between steps.
Views

How can you slice the report?

  • Creative, ad, ad set, campaign

    One control switches the grouping. In the “Creative name” view, ads with the same name are merged — the most accurate picture when one creative runs in several ad sets.

  • Periods and comparison

    Today, yesterday, 7 days, 30 days, this or last week and month, or any custom range. Compare with the previous period, the same days last month or another period: every cell shows the change.

  • People, not rows

    Someone fills in a form and later phones in: two records in the CRM, one person in the report. Repeat leads are merged by phone, and the sale goes to the ad that brought the person first. A Bitrix24 Lead → Deal is one lead too.

  • Unattributed leads stay visible

    Leads that could not be tied to an ad are shown separately by channel, each with the reason and the fix. The share of leads tied to a specific ad is stated as well.

  • The “Worth a look” block

    The report points things out itself: creatives that spent 5% or more of the budget without a single qualified lead, the cheapest qualified leads, and how CPQL moved against the previous period.

  • Pause from the table

    Preview the creative in place, and pause or re-enable an ad, ad set or campaign straight from the table. Only owners and admins can do this, and the Meta token needs the ads_management permission.

Counting method

Which week does a sale belong to? Two counting methods

A lead arrives today; the payment may come three weeks later. So “how many sales did we have this week?” has two correct answers. The report has both, one switch apart.

Events in the periodCohort (by lead creation date)
What it countsLeads that arrived, leads that became qualified and payments made on these days — whenever the lead itself arrivedLeads created in the period and their outcome as of today: qualified or not, sold or not
The question it answersWhat happened this week?What became of this week’s leads?
When to use itWeekly results: this is the method that matches the CRM’s own weekly numbersJudging a creative, once its leads have had time to reach payment
Weekly routine

What you decide with this report every week

Once a week, in this order. The aim is to split the budget by sales, not by cost per lead.

  1. 1

    Open last week and group by creative name

    Turn on comparison with the previous period: every cell shows the earlier week’s figure and the change.

  2. 2

    Pause what brings no qualified leads

    The “Worth a look” block lists the creatives that spent 5% or more of the budget without a single qualified lead. At a learning centre (2–8 October 2026) a qualified lead cost $2.20 in one creative and $71.40 in another — 32 times more.

  3. 3

    Sort by sales and move budget to what sells

    Look at the Sales and CAC columns. At the driving school the creative with a 47% dearer lead made 5 sales; the creative with the $0.87 lead made none.

  4. 4

    Check how CPQL moved

    If CPQL is up on the previous week, switch the grouping to campaigns: the table shows which one is behind it.

  5. 5

    Check that the data is complete

    What share of leads is tied to an ad, and how many sales carry no amount? If either looks weak, fix the tracking first: the UTM template on your ads, the Page that owns your lead forms, the amounts managers enter.

  6. 6

    Send the summary to the team

    A short version of this report goes to Telegram by itself every day, week or month, with the best creatives and the spend that brought no qualified leads.

On a phone

The report opens on a phone too

The report runs in a browser, on a computer or a phone; there is no separate app to install. On a phone the table turns into cards: tap a creative and its numbers open.

  • An owner sees spend, leads, qualified leads and sales away from the desk.
  • A media buyer shows the client the live report instead of a screenshot.
  • The interface is in Uzbek, Russian and English.
The report on a phone screen: spend $885, ad leads 863, qualified leads 335, sales 36, and the funnel from leads to qualified leads to sales.
Sales36
CAC$24.58

Questions about the report

How is this report different from Ads Manager?

Ads Manager shows what happened inside the ad platform: impressions, clicks, leads and cost per lead. Whether a lead was qualified and whether it bought is in the CRM. The CAPI Platform report puts the two on one row: next to every creative stand its qualified leads, sales, CAC and ROAS.

Which CRMs and ad platforms does the report work with?

CRMs: Bitrix24, amoCRM (Kommo) or capiCRM, the CRM inside CAPI Platform; one CRM per project. The only ad platform is Meta (Facebook and Instagram). More: integrations.

When does the report start to fill?

On the day the CRM is connected, the last 30 days of its history load into the report, so there is something to compare with from day one. Old leads are not sent to Meta; they are there for the report only.

What about leads from Instagram Direct, WhatsApp or phone calls?

They are in the report, but by channel, under “Leads not attributed to an ad”, each with the reason. The platform does not tie them to an ad automatically. The exception: if the same person filled in a Meta lead form before, the phone number puts them on that ad. Leads from Meta lead forms are tied to their ad with certainty; website leads are tied through the UTM tag (the ad ID) in the ad’s link.

Will the report match the numbers in my CRM?

The “Events in the period” method matches the CRM’s weekly numbers. One difference is possible: the report counts people, not rows, so repeat leads of one person are merged by phone.

What happens to ROAS if managers do not enter deal amounts?

Revenue is what was recorded in the CRM, so missing amounts understate revenue and ROAS. The report shows how many sales carry no amount. If you set a default sale amount in Settings, sales without an amount are counted at it.

The CRM is in so‘m and the ads are in dollars. How is revenue calculated?

The report currency and the CRM currency are set separately in Settings. The rate comes from the Central Bank of Uzbekistan automatically — each sale at the rate of its own day — or you enter it by hand. Revenue is converted into the report currency, so it stands in the same currency as spend.

What does it cost?

Set-up is $159 once: in 3 days the CRM is connected, stages are tied to signals and a test signal is sent. Then $40 a month: the Conversions API signals, this report, Telegram reports and lead integration up to 4,000 leads a month. More: pricing.

See which of your ads sells, on your own numbers

Sign up with Google and connect Meta and your CRM yourself, or leave a request and we will set it up in 3 days. Set-up is $159 once, then $40 a month.