Marketing ROI tracking: which ads pay off and which drain your budget

Marketing ROI tracking at no extra cost: visits, leads, deals, payments and ROI for every source, campaign and keyword. Video and report walkthrough.

Updated 14 min read 6 views
In short

Marketing ROI tracking is linking ad spend to leads, deals and payments to see whether each channel pays off. The “Website analytics” section does it at no extra cost: cost per lead and per deal, profit and ROI by source, campaign and keyword. Open “Leads” → “Website analytics” and pick a period in “Filters”.

Without marketing ROI tracking, your advertising runs blind. A window installation company pays for ads in Yandex Direct, VK and Telegram channels. Leads keep coming, but nobody knows which campaign brings contracts and which brings “just asking” calls. Ad spend sits in the ad accounts, sales sit in the CRM. They're matched by hand, and meanwhile the budget goes into ads that don't sell.

Marketing ROI tracking, also called end-to-end analytics, links ad spend to leads, deals and payments for every channel. In your account, “Website analytics” does it: the customer's whole path in one table — site visits, leads, deals and payments from the CRM, and ad costs. Leads are requests and inquiries from all channels. For every source, campaign and keyword, the report calculates cost per lead and per deal, profit and ROI. ROI shows how well your ads pay off, as a percentage. So you can see where to add budget and what to switch off.

The section is included in the “CRM + Telephony + Automation” plan and higher, at no extra cost and without separate end-to-end analytics services. Leads, deals and payments are already in the CRM, so there's no integration to set up.

Watch the two-and-a-half-minute video, and below you'll find how to read the report and tailor it to your needs.

Could not load the video. Check your connection and refresh the page.

Why businesses need it

  • A marketer sorts campaigns by “ROI” and moves money from loss-making campaigns to profitable ones. The same budget brings more sales.
  • The owner sees in the “Total” row how much went into advertising and how much it brought back. No need to wait for the marketer's report.
  • Clinics, salons and car services look at “Leads from calls” and “Leads from Callback” (callback requests from the website). You can see which ads bring calls and appointments.
  • Real estate and B2B companies assess “Cost per deal” and “SCR” over a quarter or half a year: deals come in later than leads. You can see which channel brings buyers.
Client case
A custom kitchen manufacturer in Krasnodar advertised in Yandex Direct, VK and Telegram channels. Before: the budget was split by cost per lead, and almost half of it went to VK, where leads were the cheapest. What we did: the code on the website, UTM tags in all ads, the Direct integration and a “Cost per visit” for VK and Telegram. Managers started recording payments in the CRM. Result: over a quarter, the report showed that VK leads rarely reach a contract, while Direct search ads pay off. Part of the budget was moved to search, and with the same spend there were about 15% more contracts.

Where the report gets its data

The report collects data from three places:

  1. Visits and sources — from the tracking code on the website. A visit is a 30-minute site browsing session.
  2. Leads, deals and payments — from the CRM, across all channels. A payment recorded in a deal goes into “Revenue” by itself, so ROI is calculated on real money.
  3. Ad costs — from Yandex Direct or from the campaign's “Cost per visit”.

Website statistics are updated every 15 minutes. Below the page header are the “Dynamics” chart and the “Traffic sources” table.

The table is a tree. The first row is the “Total” for the whole project, with three branches below it:

  • “Ad sources” → source → campaign → keyword. These are set by UTM tags — labels in the ad link;
  • “Direct visits” → websites the visitors came from → pages;
  • “SEO search” → search engine → search phrases.

For sources and domains, the first 100 rows are shown, and the rest open with the “Show 100 more” button.

Ad ROI tracking — the “Traffic sources” table with the “Total” row and the “Ad sources” branch expanded down to campaigns

How to set up marketing ROI tracking

  1. 1
    Install the code on your website
    Via “Website integration” or the widget. Without the code, views, visits and sources aren't counted. How to install the code is described in the article website leads to CRM.
  2. 2
    Tag your ads
    Click the link icon in the header (“Create a UTM tag”). Build the link in the “UTM tag generator” window and paste it into the ad. Links for Yandex, Google and VK are covered in the article UTM builder.
  3. 3
    Set your costs
    Connect Direct with the “Yandex Direct” button in the header. For other channels, enter a “Cost per visit” in “Campaign settings”. The step-by-step connection is in the article Yandex Direct CRM integration.
  4. 4
    Record payments in deals
    They add up to “Revenue”. Without payments, “Profit” and “ROI” show only costs. Where to record them is in the article payment tracking in CRM.
  5. 5
    Choose a period
    “Filters” → “View date” → for example, “Month” → “Apply”. Until a period is selected, the report covers all time.
  6. 6
    Keep the columns you need
    Click the “Table columns” icon, tick the metrics, drag them into a convenient order and click “Save”.

Report metrics: from visits to ROI

The table has 26 columns. Hover over a column header to see its formula.

  • Traffic: “Views”, “Visitors”, “Visits” and “Conversion” — the share of visits that became leads.
  • Leads: “Leads” and nine columns by capture type — from “Leads from calls” to “Imported leads”.
  • Sales: “Deals”, “Repeat deals”, “Revenue” — the sum of payments on deals — and “SCR” — the share of leads that reached a deal.
  • Costs: “Ad costs”, cost per visit, per lead and per deal, and “Lead/deal costs” — the cost of goods from “Costs” type fields in the card.
  • Bottom line: “Profit” — revenue minus all costs, “ROI” — profit divided by ad costs, “LTV” — profit per paying customer.

Traffic is counted like this. A view is every load of a website page with the code. A visitor is a unique person, no matter how many times they come. A visit is a 30-minute session: if a person comes back two hours later, that's a second visit. For a service business website, aim for a “Conversion” of 5% or more: if it's lower, start with the offer and the landing page, not the budget.

The first click on a header sorts in descending order, the second in ascending order, and the third removes sorting. “Total” always stays on top. The set and order of columns are saved in your account. On a phone, rows are shown as cards with the “All metrics” button.

Tip
For “Profit” and “ROI” to show net money, track the cost of each deal — materials, labor and site visits — with a “Costs” type field in the card. How to set it up is covered in the article deal cost tracking in CRM.
The “Table columns” window in the ad ROI report — metric checkboxes and dragging rows

How to tell which ads pay off

  • Add budget to campaigns where “ROI” is above zero and “Cost per deal” is lower than in neighboring rows.
  • Turn off or rework campaigns where “Profit” is negative despite noticeable costs, or where there are almost no leads.
  • Judge by deals, not by requests. Many people evaluate ads only up to the lead, but a lead isn't money yet: cheap requests may not buy. Make decisions based on “Cost per deal” and “Profit”.
  • Look for the cause in the conversion rates. A low “Conversion” points to the landing page or the offer, a low “SCR” to lead quality or how leads are handled.
  • Judge the most recent days by cost per lead: deals from them haven't come in yet.
  • Don't switch off a channel just because it brings few direct sales. Targeted ads and retargeting often introduce people to you, and they leave a request later after finding your familiar site in search. Turn off a warming-up channel, and search requests drop too. Check such a decision on the “Dynamics” chart for a week or two, and check buyers' journeys in the “View history” in their cards: how to do it is covered in the article customer journey tracking.
  • A low “SCR” for one campaign while neighboring ones are normal? Open its leads from the report and see who handled them. This shows which managers are worse at taking requests through to payment.
  • Check SEO promotion the same way. A top-10 position doesn't sell by itself: expand the “SEO search” branch and compare leads, deals and revenue from search engines with what you pay for promotion. The search phrases inside the branch show which queries bring clients.

The “Dynamics” chart by campaign and source

Above the table is the “Dynamics · Total” chart for the whole project. Use the buttons above it to turn on up to four metrics. Counts, money and percentages are plotted on separate charts.

The “Show on the chart” icon builds a chart for the selected row. “Back to total” returns the project chart, and “Show as a table” lists the values. The “Ad sources”, “Direct visits” and “SEO search” branches themselves have no chart.

The chart is handy for checking your own changes. Redesigned the site or launched a new landing page — turn on “Lead from visit, %” and compare the weeks before and after. This shows whether the conversion rate grew, not just the number of visits. For a single page, click “Show on the chart” in its row.

The “Dynamics” chart for an ad campaign in marketing ROI tracking — metric buttons and a tooltip with the date

Report filters: period, city, page, source

The “Filters” button opens a panel on the right. “View date” has preset periods, “… days ago” conditions and “Custom period”. Next come “Location” down to the city, “Pages”, “Capture type”, “Website capture forms”, “Source” and “Campaign”. “Not equals” excludes the selected values. Active filters are shown as chips below the header, and “Reset filters” removes them all. The filter is remembered in the browser for each project. If the report shows less data than you expected, check these chips first: a filter may have been left over from last time.

Filters answer practical questions. “Capture type” shows how clients prefer to reach you: if most leads are calls, consider a toll-free 8-800 number — see virtual phone number for business. “Pages” finds the page that turns visits into leads most often — send your ads there. “Website capture forms” compares forms and pop-ups with each other — for example, two offers on the same page. For the filter to work, give your forms names when you mark them up in “Website integration”, as described in the article website form to CRM. The form name is also shown in the lead card, in the “Form on the site” block of the “Statistics” tab. “Location” shows which cities and regions your clients come from. It's a hint on where to open a sales point or a warehouse and where to run offline ads.

Leads and deals right from the report

A blue number in a lead column opens the “Leads” window: name, funnel stage, phone and email. Clicking a row opens the lead card in the CRM. The ⋮ (“Actions”) menu of a row has “Show leads” and “Open deals”. “Open deals” shows, on the same page, the “Deals · …” window with the row's name — its deals for the selected period, and clicking a deal opens it in the CRM. The numbers are clickable if you have the “Leads” right and they're greater than zero, and the “Ad sources” branch as a whole has no list: expand it and click the individual sources.

Important
If a campaign has neither a link to Direct nor a “Cost per visit”, its “Ad costs” are zero. Then “ROI” and “Cost per lead” tell you nothing about money.

Frequently asked questions

How much does marketing ROI tracking cost?
The “Website analytics” section is included in the “CRM + Telephony + Automation” plan and higher, at no extra cost. Leads, deals and payments are already in the CRM, so you don't need a separate service or integration.
How is ad ROI calculated in the report?
“ROI” is profit divided by ad costs, and “Profit” is revenue minus all costs. Revenue is the payments on deals: record a payment in a deal, and it gets into the report by itself. Until there are payments, “Revenue” is empty.
Why does “Website analytics” say “Access denied”?
You don't have the “Analytics” right in the current project. An administrator turns it on in the “Users” section, in the employee's access settings.
Why don't visits and ad costs match Yandex Metrica and Yandex Direct?
Each system has its own counter and its own rules: here a visit is a session of up to 30 minutes, statistics update every 15 minutes, and ad blockers and interrupted page loads affect different counters differently. Direct spend is taken including VAT, the way Direct charges it, and is applied only to campaigns and higher up the tree, not to keywords or the “Dynamics” chart. So a small gap with Metrica and Direct is normal.
Why does the “Leads” window show a different number than the table?
The CRM selects leads by view date. Location, page, form and source filters aren't applied to this list — a note in the window says so.
What should I do if “Analytics did not load”?
The server didn't have time to calculate the statistics, most often for all time. Click “Retry” or choose a shorter period.

Read also: Yandex Direct CRM integration: the real cost of every lead, UTM builder: how to tag your ads and track ad spend, Deal cost tracking in CRM: the real profit and ROI of your ads, Customer journey tracking: which ad touchpoints lead to a sale, Sales funnel conversion rate: at which stage you lose clients

Next step
Ready to try Lptracker?

Everything from this article is already waiting in your account — open the section and get started.

Try Lptracker
Turnkey implementation

Our implementation team will set up the system for your business: voice and chat AI bots, funnels, robots, telephony and CRM. Book a meeting at a time that suits you.

Book a meeting
Was this article helpful?

You have unsaved changes||У вас есть несохранённые изменения