The Challenge
No website. No tracking. No ads. Start from zero — in a competitive UK market.
Mr Expert Carpet Cleaning had no meaningful online presence. They needed everything built from scratch: a website that looked professional and converted, a full tracking infrastructure, local SEO to rank in Slough, and paid search campaigns to drive immediate bookings.
This was also an international project — coordinating everything remotely from Pakistan for a UK-based client.
What I Did
Built the entire digital operation from the ground up.
- Full website rebuild on WordPress + Elementor — mobile-first design, fast load times, clear CTAs on every page, trust signals (reviews, certifications, before/after photos), and a logical service structure
- GTM standard container — installed and configured for all client-side tracking events
- GTM Server-Side Container — set up a server container to route conversion data independently of browser limitations and ad blockers
- Facebook Conversions API (CAPI) — routed through the server-side container for accurate, browser-independent conversion data that doesn't rely on the browser pixel alone
- GA4 setup — full property configuration, event tracking, and goal setup for measuring organic and paid traffic performance
- Microsoft Clarity — installed the session recording and heatmap tag, then used it to drive ongoing CRO — spotting where visitors dropped off or hesitated and adjusting the page around it
- Google Business Profile (GMB) — set up and optimised the listing so the business shows up properly in local/Maps search, alongside the website itself
- Google Search Console — verified the property, then worked through the indexing and crawl issues it surfaced so pages could actually get found and ranked
- Local SEO service pages — created dedicated pages for each service (carpet cleaning, sofa cleaning, mattress cleaning, commercial) with optimised content targeting Slough, Berkshire, and surrounding areas
- On-page SEO & layout — fixed titles, meta descriptions, heading structure, image alt text, and internal linking, and reworked the overall page layout for clarity and conversion
- Google Search Ads — set up and launched campaigns with GTM-connected conversion tracking, targeting high-intent local search terms
The Result
Full Stack
Site live, full tracking stack operational, and Google Ads actively running. GA4 and Microsoft Clarity collecting data. Ongoing project — results building as campaigns accumulate data.
View Live Site: mrexpertcarpetcleaning.com ↗
Custom Build
The form was losing leads. So I replaced it with software I wrote.
The site launched on a standard Elementor form, which is email-first — it composes an email and sends it. If that send fails, there is no second copy. The lead is simply gone, and nobody knows it existed. On top of that, Google Ads had no way of seeing which clicks turned into booked jobs, so it was optimising toward form submissions rather than revenue.
Rather than bolt on a third-party SaaS with a monthly fee and a data middleman, I built LeadBridge — a self-owned WordPress plugin, first-party, no paid dependencies.
Save-first architecture
Every lead is written to a custom database table before any email, webhook or API call is attempted. Integrations are best-effort by design — a failing third-party API can never break lead capture.
Revenue back into Google Ads
Captures gclid and UTM parameters at submission, then pushes the real job value back as an offline conversion — including enhanced conversions for leads. Bidding optimises toward money, not form-fills.
Mini-CRM
Pipeline stages, job value, notes and a revenue dashboard — so the monthly question "what did the ad spend actually earn?" has an answer pulled from the database rather than estimated.
Schema-free fields
A JSON column stores submitted fields, so the form can change shape without a single database migration. Fields are edited from the admin UI.
Save-first REST endpoint
Spam protection
gclid + UTM capture
SMTP mailer
WhatsApp alerts
Customer auto-reply
Automatic review requests
Google Sheet mirror
CSV export
Responsive admin UI
Built as a standard WordPress plugin in PHP classes — form, database, fields editor, mailer, WhatsApp, Google Ads, stats, admin and settings modules. GPL-2.0+, owned outright by the business, with no recurring licence.
Client Dashboard
Five data sources, one screen — so the client doesn't have to log into five platforms.
Once the tracking stack, GMB, Search Console and LeadBridge were all live, the data itself was still scattered across five different platforms. So I built a single client-facing dashboard that pulls it all into one place: Google Ads performance, Search Console (impressions, clicks, indexing status), Google Business Profile activity, LeadBridge job/revenue data, and Microsoft Clarity behaviour insights — all in one view.
The point isn't just convenience. It means the client can see, at a glance, what's actually happening across every channel without asking me for a report or logging into five separate dashboards themselves.
Tools & Platforms
LeadBridge (custom plugin)
WordPress
Elementor
Google Tag Manager
GTM Server-Side Container
Facebook CAPI
GA4
Microsoft Clarity
Google Business Profile
Google Search Console
Google Ads
Local SEO
Unified Client Dashboard