Skip to content
Advertising18 minJuly 16, 2026

How to calculate CPL and ROAS for services in Uzbekistan (cleaning, clinic, construction)

Robert MirovUpdated Sep 5, 2026

How to calculate CPL and ROAS for services in Uzbekistan (cleaning, clinic, construction)

In Tashkent and across Uzbekistan, a cleaning company, clinic, or renovation crew often sees “CPL $6” in Google Ads while CRM shows unreachable numbers and a couple of paid jobs. The ad account and the cash register speak different languages: one counts clicks and “conversions”, the other counts visits, appointments, and contracts. This article is a calm walkthrough for service owners who already run ads. No “agency average results” or lead promises. Just order: what CPL, CPA, and ROAS mean in plain words; how to tie them to ticket size and margin; a one-page unit-economics checklist; order-of-magnitude ranges by niche (planning guides, not guarantees); how dirty traffic breaks the numbers; when to raise budget and when to fix the funnel. UZNEO is not selling magic here — it explains how to count money so you scale profitable leads, not pretty reporting.

01Why service owners should calculate CPL and ROAS themselves

A contractor can show CTR, impressions, and “conversions”. You need different answers: • what a qualified lead really costs (reach, address, booking); • what a paying customer costs; • whether ads pay back after margin, visit cost, doctor time, and crew; • whether you can add budget without breaking operations. Without your own unit-economics sheet you argue about “expensive clicks”, while the issue may be junk leads, slow manager reply, or a weak landing page. With the sheet you see three different diagnoses: budget too low, expensive dirty traffic, weak funnel. Related layers: monthly niche media ranges — budgets by niche; what click and management cost include — Google Ads pricing in Uzbekistan.

02Formulas in plain words: CPL, CPA, ROAS

Terms on first use — without marketer jargon. • CPL (cost per lead) — cost of one qualified lead. Formula: ad spend ÷ leads with a real contact (phone / form / Telegram) that managers could reach or that left a working contact. • CPA (cost per acquisition) — cost of one paying customer (or signed contract). Formula: spend ÷ paid jobs / contracts from ads. • ROAS (return on ad spend) — revenue per unit of ad spend. Formula: revenue attributed to ads ÷ spend. For services, count by period (week / month), not “per one click”. • Margin after ads ≈ (average ticket × deals × margin %) − ad spend − lead-handling cost (call time, CRM, manager travel). CPL vs CPA matters for long sales cycles. A cheap CPL at 5% lead→paid is often worse than a “expensive” CPL at 30% close. Sanity-check chain: 1. Average ticket and margin per sale (after materials, visit, doctor, crew). 2. Lead → paid conversion from CRM for 30–60 days (count / count, not “roughly”). 3. Max allowed CPL = (ticket × margin × lead→paid) × 0.7–0.8 (buffer for tests and season). Example: ticket $100, margin 40%, close 25% → raw CPL ceiling = $100 × 0.4 × 0.25 = $10. With 0.8 buffer → $8. If the account shows “CPL $5” but 70% of leads are junk, real CPL is already above $15. Count only what you could reach.

03Before → after: ad account vs CRM

Comparisons work best as tables — they show why you need “your” CPL, not one UI number.
Before (Google Ads only)After (Ads + CRM)
CPL = spend ÷ all “conversions”CPL = spend ÷ qualified leads
“Conversion” = click, form, repeat, botLead = reach / booking / estimate
ROAS over 7 days by clicksROAS over deal period (construction: 60–90 days)
“CPL $5 — all good”70% junk → real CPL $15+
Scale “add another $300”First: CPL ceiling and crew/slot capacity
Second table — owner expectations:
ExpectationRealistic outcome
“CPL will halve immediately”First you get truth; visible CPL may rise if you used to count junk
“One normal ROAS for all services”Cleaning, clinic, and construction live in different windows and tickets
“Account number = money in the bank”Without CRM reconcile, ROAS is fiction
In account work, UZNEO usually starts with this reconcile — before any lead promises.

04Unit-economics checklist in 15–20 minutes

Before scaling budget, run this on one sheet (Excel / Google Sheets / notepad). If a line is missing — get data first, then “add $300”. • Average ticket for the last 30–60 days (CRM or spreadsheet, not “about a hundred”). • Margin % after direct service costs (supplies / doctor consumables / materials and crew pay). • Lead → paid conversion for the same period (paid ÷ qualified leads). • Share of junk leads: unreachable, spam, wrong city, “just checking price” with no intent. • Allowed CPL = ticket × margin × conversion × 0.7–0.8. • Real CPL = spend ÷ qualified leads (not every conversion click). • CPA = spend ÷ paid deals (if deals are few — widen the window). • Ads ↔ CRM weekly check: order-of-magnitude gap is fine early; ×5 means fix attribution and lead definition. • Capacity: can crews / doctor slots / site supervisors absorb +30% leads without missed deadlines? • Reply speed: who picks up in the first 5–15 minutes? For cleaning and clinics this often beats “another creative”. If real CPL is above the ceiling — fix funnel and traffic quality. If below and you have capacity — scale carefully. Mini example: spend $600 / month, 40 qualified leads → CPL $15. Close 20% → 8 paid → CPA $75. Ticket $120, margin 35% → gross from 8 deals ≈ $336. Minus $600 ads — still negative after ads: raise ticket/close, cut junk and CPL, or don’t scale.

05Order-of-magnitude by niche (guides, not promises)

Important: figures below are planning orders of magnitude for Tashkent and Uzbekistan. Not a guarantee and not “UZNEO average results”. CPC, season, district, site quality, and reply speed can shift everything 2–3×. Use them as a draft for your own math.
NicheTicket (guide)Allowed CPL (guide)What to watch
Cleaning (apartments / post-renovation)$40–150$5–20 at 15–30% closeReply speed, address quality, repeat jobs
Clinic / dentistryhigher + LTV (return visits)$15–50+ if visits followShow-up, not “cheap lead”; LTV over 6–12 months
Construction / renovationlarge, long cycle$20–80 with few monthly dealsROAS over 60–90 days, not 7; estimate quality
Cleaning. Short cycle: lead → visit → payment often same day or week. Track CPL and close weekly. A “cheap” lead without address and time is almost useless. Repeats and referrals lower effective CPA over time — model that, but don’t confuse it with first-touch CPL. Clinic / dentistry. Lead is cheaper than visit; visit is cheaper than a treatment plan. Watch the chain: lead → booking → show-up → plan. LTV (lifetime value — revenue from a patient over the relationship) often matters more than one ticket. Cheap CPL on “implant price?” with no show-up inflates the report and burns call-center slots. Construction / renovation. Few deals, long cycle, large ticket. 7-day ROAS almost always lies: the estimate is still in negotiation. Use a 60–90 day window, CPA to contract, and margin after materials. One “expensive” lead that signs can pay for a month of ads — if attribution is honest. Media budgets — budgets by niche. Click cost — Google Ads pricing in Uzbekistan. Reconcile the ad account with CRM weekly — otherwise ROAS is fiction.

06How anti-fraud affects CPL and ROAS

Dirty traffic inflates visible CPL and breaks ROAS two ways: • You pay for bots and click fraud — spend up, leads missing. • Fake “conversions” train Smart Bidding (Google’s automated bidding) — the algorithm buys more junk; CPL in the UI looks okay, the phone stays quiet. After on-site filtering and clean signals to Google, something honest usually happens:
Before (dirty signals)After (anti-fraud)
Many “conversions” in the accountPhantom conversions drop
UI CPL looks “fine”CPL on real leads becomes honest (sometimes higher at first)
Budget to IPs with zero scrollMoney goes to people who read the page
Pretty ROAS, empty tillROAS closer to CRM
More — anti-fraud for Google Ads. Without clean signals you optimize a UI number, not money in the bank. Anti-fraud does not “draw” more customers — it removes lies from bid learning.

07When to scale budget — and when to leave it alone

Scale only when all of this is true: • Real CPL (from CRM) ≤ your ceiling for 2–4 weeks straight, not “one good day”. • You have capacity: cleaning crews and calendar slots; clinic doctor windows; construction supervisors and estimate queue without missed deadlines. • Landing conversion and manager response are stable (not “answered in an hour today, tomorrow in a day”). • Search is filtered with negatives; you’re not paying for “free / jobs / DIY”. • Junk-lead share is known and not rising with spend. How to scale calmly:+20–30% budget every 7–14 days — not ×3 overnight, or the algorithm and operations drift. • Expand winning ad groups and ads first, not brand-new broad themes. • Watch ROAS, CPA, and junk share — as spend rises, fraud and “curious browsers” often grow faster than quality leads. • Write the hypothesis in the sheet: “raise Search 25%, expect CPL ≤ $X”. If CPL is above the ceiling — fix funnel, reply speed, offer, and traffic quality. “Add another $300” with leaky tracking only speeds up the loss.

08Linking budget, ad cost, and the next step

CPL and ROAS without budget context are empty. Stack three layers on one screen: 1. How much per month for the nichebudgets by niche. 2. What total cost includes — clicks, management, account fees — Google Ads cost. 3. Your CPL ceiling and target ROAS — from ticket, margin, and lead→paid (this article). Only then you see: “budget too low” vs “expensive junk traffic” vs “weak site / slow manager”. In ad management UZNEO usually starts with this one-page table — before any lead promises. Need the account built for your niche — Google Ads setup.

Summary

CPL and ROAS for Uzbekistan services come from ticket, margin, and real CRM leads, not a pretty Google Ads number. Use order-of-magnitude ranges for cleaning, clinic, and construction as a draft calculation — not a guarantee. Clean signals, lock an allowed CPL, reconcile the account with sales weekly, and scale only with spare capacity. Next: budgets by niche and Google Ads pricing. Need it built for your niche — Google Ads setup or ad management with UZNEO.

Launch ads without burning budget?

Google Ads with anti-fraud built in. Budget estimate and forecast in 24h on Telegram.