Website metrics to track: what owners should watch and why
Which website metrics to track as a business owner: six numbers tied to revenue, plus how Google Analytics 4 and Yandex Metrica actually define bounce rate, time on site and conversion – straight from their documentation.
If you own a website, the metrics worth tracking are not bounce rate and time on site but six numbers tied to money: leads and sales as raw counts, lead conversion rate by channel, cost per lead, lead-to-sale rate, channel mix, and page speed for real visitors. Google Analytics 4 and Yandex Metrica calculate bounce rate, time on site and pages per visit using formal rules that rarely match what an owner means by those words. Below is how each system actually defines them according to its own documentation, where that leads to wrong conclusions, and how to set up conversion tracking so the numbers can be trusted.
Which website metrics to track: the short answer
Metric | Question it answers | Where to get it |
|---|---|---|
Leads and sales, count | Is the site growing the business? | Analytics goals / key events + CRM |
Lead conversion rate by channel | Which traffic works? | Traffic acquisition report with a conversion |
Cost per lead | What does one inquiry cost? | Ad spend ÷ leads |
Lead-to-sale rate | Which channel brings buyers, not browsers? | CRM data joined with analytics |
Channel mix | How dependent are you on one source? | Traffic acquisition report |
Speed for real visitors | Are you losing people while the page loads? | Core Web Vitals, 75th percentile |
Bounce rate, time on site and pages per session are missing from the table on purpose. They help with diagnosis once one of the six numbers drops and you need to find where. As reporting targets they mislead, and the next sections show why.
Bounce rate in GA4: what the number really means
Google's help center defines an engaged session as one that lasts longer than 10 seconds, or has a key event, or has two or more page or screen views. Bounce rate is simply the share of sessions that were not engaged – the inverse of engagement rate.
Three consequences that are easy to miss:
- A bounce means "left within 10 seconds without doing anything tracked", not "left unhappy". Someone who opens your contact page, sees the phone number and calls within 8 seconds is a bounce unless the call is tracked as a key event.
- A single page is not a bounce. A visitor who reads one article for three minutes and leaves is engaged, because the session passed 10 seconds.
- Key events end the bounce. A conversion inside the session makes it engaged, regardless of time.
Yandex Metrica uses the same word for a different rule
If you also run Yandex Metrica (common for sites with Russian-speaking audiences), its glossary defines a bounce as a visit that meets all three conditions at once: no more than one page view, duration below a threshold (15 seconds by default), and no internal "non-bounce" event. The counter fires that event itself after the threshold when the accurateTrackBounce option is on, which is the default. The threshold is configurable in milliseconds in the counter code.
| Google Analytics 4 | Yandex Metrica |
|---|---|---|
Time threshold | 10 s | 15 s by default, configurable in counter code |
Multiple pages | Not a bounce | Not a bounce |
Conversion | Not a bounce (key event) | Not listed as a separate condition |
Unit | Share of non-engaged sessions | Share of bounced visits |
Thresholds, conditions and units differ, so the two systems will report different bounce rates for the same site. Neither is wrong. Pick one as your source of truth and compare the metric only against its own history.
Time on site and pages per visit: what the report actually shows
GA4 measures engagement time while the page is in focus. It accumulates the time and sends it when the user switches away, navigates to another page or closes the tab, attached to the next event. Five minutes of focused reading is counted; a tab forgotten in the background is not.
Yandex Metrica works differently: its glossary defines time on site as the gap between the first and last event in a visit – page views, outbound clicks, file downloads and goal completions. Metrica does not see what happens between events. A visitor who reads one article for five minutes and leaves without clicking anything produces almost no events, so by that definition the visit is very short.
Pages per session is just as ambiguous. On a service website a high number can mean interest, or it can mean the visitor cannot find the price and keeps wandering. The number alone says nothing – you need session recordings or click maps.
Six metrics tied to revenue
Leads and sales as counts
Look at absolute numbers per week or month first. Percentages without counts mislead: conversion rate went from 2 % to 3 %, yet leads fell because traffic halved. A lead here is any inquiry you can act on: a submitted form, a phone call, a click to a messenger, a chat message. Track each type as its own key event or goal.
Lead conversion rate by channel
A site-wide conversion rate is nearly useless – it blends ads, search, email and random visitors. Break it down by traffic source. Also note the unit: in Yandex Metrica, conversion is the share of goal-completing visits among all visits, not the share of people. One person who visits five times and leaves one inquiry counts as five visits and one converting visit. For long buying decisions (renovation, real estate, education) this understates channels that bring people back to look again. Metrica also reports visitor conversion, the share of unique visitors who completed the goal; for slow purchases, check both.
Cost per lead
Cost per lead is channel spend divided by leads from that channel. For "free" channels like organic search, the cost is your content and SEO spend, easier to track monthly in a spreadsheet.
Lead-to-sale rate
This is the most important number and the one standard reports do not show. A channel with cheap leads may bring people who never buy. Until leads are joined with sales, you are optimizing for the wrong target.
The principle is to store the analytics visitor ID with each lead in your CRM, then send closed deals back to analytics. In Yandex Metrica, the documented route is to save the ClientID (the _ym_uid cookie) with the lead and upload customers and orders with statuses and revenue; this enables the "Order sources from CRM" and "Sources, expenses and ROI" reports.
A worked example – illustrative arithmetic, not data from a real site. Two channels, each with a 30,000 budget. Channel A brings 20 leads and 2 sales; channel B brings 15 leads and 6 sales.
| Cost per lead | Cost per sale | |
|---|---|---|
| Channel A | 1,500 | 15,000 |
| Channel B | 2,000 | 5,000 |
By cost per lead (1,500 vs 2,000) channel A wins. By cost per sale (15,000 vs 5,000) channel B wins. "Move budget to the cheaper leads" is exactly the wrong decision here.
Channel mix
The share of leads from each source shows risk. If 80 % of inquiries come from one ad campaign, pausing it pauses sales. Watch "direct" traffic too: in Metrica, visits whose source could not be recognized by referrer or tag are also counted as direct. An unexplained rise in direct traffic is a reason to check UTM tags in your emails and messenger links.
Speed for real visitors
For an owner, speed is best seen as the three Core Web Vitals measured on real visitors: LCP (when the main content appears), INP (how fast the page responds to taps and clicks) and CLS (how much the layout jumps). Google assesses them at the 75th percentile: a site is "good" when three visits out of four have LCP at or under 2.5 seconds, INP at or under 200 ms and CLS at or under 0.1. A Lighthouse score on a developer's laptop is a lab test, not the same thing. I looked at what is actually known about speed and revenue in a separate article checking the popular numbers.
- LCP – good at or below
- 2.5 s
- INP – good at or below
- 200 ms
- CLS – good at or below
- 0.1
How to set up conversion tracking without breaking your data
Errors in conversion setup corrupt all six metrics at once. The most common ones:
Tracking the button click instead of the successful submission. A click on "Send" fires even when validation fails and nothing is sent. Fire the event after the server confirms the submission.
Duplicates. One lead counted twice (double click, reloading the thank-you page) inflates conversion. Reconcile converting sessions against CRM leads at least monthly.
Test submissions. Managers and contractors testing the form from their own devices end up in your stats. Mark test submissions in the form itself and skip the event for them.
Bots. GA4 excludes traffic from known bots and spiders automatically, using Google research and the IAB International Spiders and Bots List; you cannot turn this off or see how much was removed. Yandex Metrica excludes self-identified robots immediately, but by its own documentation shows behaviorally detected robots in reports by default – filter them out with a "without robots" segment. Bots push pages per visit down and bounce rate up.
Single-page apps. On sites where navigation does not reload the page, analytics may miss page views. Yandex Metrica, for example, offers hash tracking and a hit method to send views manually. If pages per session on such a site sits suspiciously close to one, check that first.
How to read bounce rate and time on site, if you must
Behavioral metrics work as signals when compared within one slice and against their own history. A sudden bounce spike for one channel after a new campaign launch suggests the ad promises something the page does not deliver. A rise on mobile while desktop stays flat is a reason to watch session recordings and check the mobile layout. A site-wide monthly bounce rate gives no such hint.
If reading matters for a page, create a dedicated event – for example, fire one when the visitor scrolls to the end of the text. That is closer to "did they read it" than any built-in metric.
If you need help connecting your site, analytics and CRM, see the page for businesses.
Key takeaways
- Track leads and sales as counts, conversion rate and cost per lead by channel, lead-to-sale rate, channel mix and Core Web Vitals for real visitors.
- In GA4 a bounce is a session under 10 seconds with no key event and no second page; in Yandex Metrica it is a visit under 15 seconds on one page. Different metrics – do not compare them.
- Time on site depends on how each tool measures it: GA4 counts focused time, Yandex Metrica the gap between events.
- In Yandex Metrica, behavioral metrics before and after April 30, 2025 use different rules – use the deprecated versions for older periods.
- Fire conversions on successful submission, filter bots, and store the analytics visitor ID in your CRM to see sales by channel.
Sources
- 01[GA4] Engagement rate and bounce rateGoogle Analytics Help
- 02User engagementGoogle Analytics Help
- 03Known bot-traffic exclusionGoogle Analytics Help
- 04How the Core Web Vitals metrics thresholds were definedweb.dev · 2025
- 05Glossary: bounce, time on site, conversion, visitYandex Metrica Help (in Russian)
- 06Counter initialization: accurateTrackBounceYandex Metrica Help (in Russian)
- 07Changelog (2025 page-view counting changes)Yandex Metrica Help (in Russian)
- 08Robots in MetricaYandex Metrica Help (in Russian)
- 09Offline data importYandex Metrica Help (in Russian)