LuxeWash Car Detailing & Ceramic Coating is our own company. We built it, we run it, and we use it as the testing ground for everything we sell. That is the reason this case study can show real campaign data instead of vague claims — we have complete access to the accounts and nobody to ask for permission. It also means we pay for our own mistakes before we ever recommend something to a client.
The Situation
LuxeWash is a mobile car detailing and ceramic coating business operating across Broward County, Florida. Mobile detailing is a crowded, low-barrier category: anyone with a van and a pressure washer competes for the same searches, and customers rarely plan ahead. They search when the car is already dirty and they book whoever answers first.
That creates three specific problems, and none of them are solved by "getting a website":
- Demand is immediate and local. Someone searching "mobile detailing near me" is not comparing vendors for a week. If you are not visible in the first screen of results or in the Google Maps pack, you were never in the running.
- Every lead has a hard ceiling. A detailing job carries a specific margin. Pay more than that to acquire the job and growth actively costs money — which is exactly how service businesses end up busy and broke.
- Winter kills you. South Florida detailing has a real seasonal floor between November and February. A business that depends only on paid ads has no cushion when demand drops.
The Strategy
The plan was deliberately unglamorous: buy demand where it is profitable, build organic assets that keep working when the ads are off, and measure precisely enough to know which is which.
Fix measurement before spending anything
Conversion tracking went in first: Google Ads conversions tied to booking confirmations, calls and WhatsApp clicks, plus GA4 key events for each. Without this, every later decision would have been a guess. Most of the accounts we take over are optimizing toward numbers that were never accurate.
Set the acquisition ceiling from the margin, not from a benchmark
We worked backwards from what a job is actually worth. With roughly three leads converting into one booked job, a target cost per acquisition of $55 lands at about $165 per job — profitable against the real margin. At $80 the same math hits break-even. Knowing where the ceiling sits is what keeps a campaign from quietly destroying value while the dashboard looks busy.
Treat each city as its own economic unit
The campaign was structured so cost per lead could be read city by city rather than as a single blended number. That blended number hides everything: profitable markets end up subsidizing markets that never convert.
Build organic assets in parallel from day one
Dedicated pages for each city served, service pages for every offering, a content cluster answering the questions customers actually search, and continuous Google Business Profile work. This is the part that compounds — and the part most businesses skip because it pays nothing in month one.
Make the site legible to AI assistants
Structured data across the site, a machine-readable summary of the business, and explicit crawler permissions for AI systems. This was speculative when we did it. It stopped being speculative when the analytics started reporting it as a distinct traffic source — see below.
What the Numbers Say
Paid search
August 2026, a single campaign across six cities:
| Metric | Result |
|---|---|
| Clicks | 282 |
| Click-through rate | 5.31% |
| Average cost per click | $5.44 |
| Impression share lost to budget | 0.06% |
| Impression share lost to rank | 54.34% |
Those last two rows are the most useful diagnostic in the whole account. Losing almost nothing to budget and more than half to rank means the constraint is not money — it is how aggressively the campaign is allowed to bid. Raising the daily budget would have changed nothing. Most advertisers reach for the budget slider first, because it is the obvious lever, and then wonder why volume did not move.
Cost per lead by city
Same campaign, same creative, same landing pages. The only variable is geography:
| City | Cost per lead | Verdict |
|---|---|---|
| Pembroke Pines | $53.87 | Scale |
| Fort Lauderdale | $60.24 | Scale |
| Hollywood | $67.67 | Keep |
| Plantation | $69.10 | Keep — highest volume |
| Weston | $88.81 | Watch |
| Davie | $92.19 | Under review |
A 71% spread between the best and worst city inside one campaign. Reported as a single blended average, all of that disappears and the account looks merely adequate.
Organic search
Over a 28-day window: 234 clicks, 24,200 impressions, average position 10.8, improved from 12.5 the previous month. The site now covers 82 indexed URLs, including a page for each city served and a cluster of content targeting the questions customers ask before they book.
The finding we did not expect
Traffic broken down by source over the same 28 days shows something worth paying attention to. Sessions arriving from AI assistants were a fraction of total volume — but they converted at 8.47%, the highest rate of any channel on the site, ahead of organic search, paid search and social.
The volume is still small. The conversion rate is not an accident: someone who arrives after asking an assistant for a recommendation has already been pre-qualified by the recommendation. We now build for this deliberately on every site we produce, and almost nobody is measuring it yet.
What Did Not Work
The parts that get left out of most case studies
- Five cities were shut off. Miramar, Tamarac, Sunrise, Coral Springs and Cooper City all spent money and produced zero conversions. They were excluded from the campaign. Cutting is a bigger part of this job than adding.
- Two keywords were burning roughly $150 per conversion. Both were broad, obvious-looking terms that appear in every keyword tool's recommendations. Paused.
- The Meta pixel silently failed for weeks. A malformed script tag meant it never fired once. Every optimization decision made during that window was made on nothing. We found it by verifying the actual network request rather than trusting the platform's status indicator — which is now a standing step in every install we do.
- One page sits at position 4.5 with 830 impressions and zero clicks. Ranking is not the same as being chosen. That page has a title and description problem, not a ranking problem, and it is on the current work list.
- Reported cost per acquisition looks worse than reality. Primary conversions show $85.30, while total tracked conversions across all actions are several times higher. Attribution in a business where people call and message rather than fill in forms is genuinely hard, and anyone who tells you their numbers are exact is not measuring carefully.
Timeline
| Phase | Work | Outcome |
|---|---|---|
| Foundation | Site build, conversion tracking, Google Business Profile | Reliable measurement in place |
| Paid launch | Search campaign, city segmentation, CPA ceiling set from margin | Booked jobs within weeks |
| Organic build | City pages, service pages, content cluster, citations | Position 10.8 average, 82 indexed URLs |
| Optimization | Cut losing cities and keywords, raise CPA target where profitable | Best-city cost per lead under $55 |
| Compounding | Reviews, additional service pages, AI visibility | +148% year over year |
What Transfers to Your Business
The specific numbers here belong to detailing in Broward County. Your cost per lead will be different, because your market and margin are different. What transfers is the method:
- Get measurement right before spending. Optimizing toward broken conversion data is worse than not optimizing at all, because it feels like progress.
- Derive your acquisition ceiling from your margin. Not from an industry benchmark, and not from what a competitor claims to pay.
- Break performance down by segment. Blended averages conceal exactly the information you need to act on.
- Cut early and without sentiment. A city or keyword with spend and zero conversions is not "warming up."
- Build organic in parallel. Paid traffic stops the day you stop paying. Organic assets and a well-maintained Google Business Profile keep working through the slow season.
Frequently Asked Questions
Paid search produced booked jobs within the first weeks, because ads buy visibility immediately. Organic took considerably longer — average position moved from outside the top 20 into position 10.8 over roughly a year of consistent publishing and Google Business Profile work. Anyone promising fast organic rankings in a competitive local market is not being straight with you.
It depends entirely on your margin and close rate. With roughly a 3-to-1 lead-to-job ratio and a healthy margin per job, a $53 lead is comfortably profitable. For a business with a thin margin, that same lead loses money. Cost per lead means nothing in isolation — only measured against what a job is worth to you.
No. Five cities were excluded after producing clicks with zero conversions, and two keywords were paused after costing roughly $150 per conversion. Cutting what does not work is a larger part of the job than adding what does.
The method transfers; the specific numbers do not. Your cost per lead depends on your market, competition and category. What replicates is the approach: measure before spending, cap acquisition cost against real margin, cut losing segments early, and build organic assets so you are not renting all of your traffic forever.
Because we have full access to the data and permission to show it, which is rarely true of client accounts. It also means we carry the cost of our own mistakes before recommending anything to anyone else. Most agencies have never run the kind of business they sell to.
Related reading: car detailing marketing, Google Ads management for service businesses, local SEO for service businesses, and Google Business Profile management.