Cost per result is the Ads Manager metric that divides what you spent by the number of results your ads got, where a result is the outcome Meta counts for the objective and settings you chose (Meta Business Help Center). In a lead campaign optimizing for leads it reads as a cost per lead; in an ad set optimizing for landing page views, it’s a cost per landing page view.
The cost per result formula
cost per result = amount spent ÷ results
Example: €1,200 spent and 96 results gives a cost per result of €12.50. With zero results there’s nothing to divide by, so the metric is undefined.
The numerator is Meta’s invoice and rarely surprises anyone. The denominator is where the questions start.
What Meta counts as a result
Three things decide the number under the line:
- The optimization goal. Meta counts results based on the objective and settings you selected. Move an ad set from landing page views to leads and the same spend is divided by a different event. If the two terms get mixed up in your reports, read landing page views vs link clicks.
- The attribution setting. Meta reports
resultsunder attribution windows, by default the ones in your attribution setting, and the Ads Insights API still returns 1-day click, 7-day click, 28-day click, 1-day engaged view and 1-day view (Meta for Developers). A wider window credits more conversions to the same ads. - Meta’s own definitions. In March 2026, Meta changed click-through attribution for website and in-store conversions to count link clicks only. Conversions after a share, save or other non-link click moved to engage-through attribution, with no change to billing (Meta). Same spend, fewer click-through results.
Example: one budget, four readings
| Reading (example, €1,000 spend) | Results | Cost per result |
|---|---|---|
| Ad set optimizing for landing page views | 400 landing page views | €2.50 |
| Ad set optimizing for leads, 7-day click or 1-day view | 80 leads | €12.50 |
| Same ad set, click windows only | 68 leads | €14.71 |
| Leads your server actually received | 61 leads | €16.39 |
The last row is the real CPL. Rows two and three differ by the leads Meta credits to an ad view rather than a click (view-through attribution), the part of its count you can’t check against your own data. The distance between rows two and four is what real CPL vs platform CPL is about.
Cost per result is what Meta counted; DropCPL’s CPL is what your landing pages received. It divides spend synced per ad from the Meta Ads API by first-party leads, per creative and per landing page. Start free →
Cost per result vs CPL
Cost per result equals CPL only when the result is a lead, and even then it’s Meta’s attributed count under your attribution setting. That makes it a fair way to compare ad sets inside Meta, all reported the same way, and a weak basis for deciding which creative or landing page gets next month’s budget. For that, divide spend per ad by the leads that actually arrived.
Which setting suits your reporting is a separate decision, covered in Meta attribution settings. Whatever you pick, write it next to every cost per result you share, because the same campaign gives a different number under a different setting.
Don’t confuse the metric with the cost per result goal, which is a bid strategy: you give Meta an amount and it strives to keep costs around it, without guaranteeing it.
Related terms
- CPL: spend divided by leads, with you choosing which leads
- Real CPL: the first-party version
- View-through attribution: results credited without a click
- Attribution window: how long after a click or view a result still counts