← Back to Portfolio
🇬🇧 UK WordPress GTM Server-Side Google Ads

Mr Expert Carpet Cleaning

Local Service Business, Slough UK — Full Digital Build (Ongoing)

Full
Site Rebuilt A–Z
4 Tools
Tracking Stack
Server-Side
CAPI via GTM SS
5-in-1
Unified Client Dashboard
Live ↑
Ongoing Project
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
Free — No Obligation

Need a full digital setup like this?

Site + tracking + ads — I'll tell you where to start in a free 15-minute call.

Get Free Audit →