Optimise
Performance, Analytics & Conversion Tracking
This work starts after the site is live and people are already arriving. Making it genuinely quick for someone on a phone, setting up measurement that answers a question the business is actually asking, connecting what you spend to enquiries you can trace individually, and — where you would rather look before committing to anything — reading the whole site over as a fixed piece of work.
What this fixes
It feels fast to you and slow to your customers
Checked on office broadband, on a desktop, with the page already cached. Your customers arrive on a mid-range phone with two bars of signal and no cache at all. Those are not the same site.
It got slower one addition at a time
A chat widget, a booking embed, a review carousel, three tracking tags. Nothing broke on the day any of them went in, so none of them was ever connected to the site being slower, and the total is only visible to somebody measuring it deliberately.
Analytics is running and answers no question
Data has been collecting since launch and nobody opens it. It records that pages were viewed, while the questions being asked in the business are which services to push and where the enquiries came from.
Every platform claims the same enquiry
Google reports one number, Meta another, the CRM a third, and nothing in the reporting explains which of them to act on. When no figure is trusted, decisions get made on instinct instead.
There is no before to compare against
The last redesign was judged on how it looked, because nobody recorded what the site was doing beforehand. Without that baseline there is no way to say whether the change helped, hurt or did nothing.
What’s included
- A measured starting point
- Before anything changes: timings taken on real devices, and the proportion of visitors who go on to contact you, broken down by page and channel. Without a recorded before, no after means anything.
- Speed at the layer causing it
- Server, database, caching and assets, changed in the order the measurements say is costing the time rather than the order a scanning tool listed them — see below.
- Measurement built backwards from a decision
- GA4 configured around the choices you actually have to make, with the events and naming agreed before anything is implemented — covered below.
- Conversion tracking across channels
- One definition of an enquiry, implemented identically everywhere and verified by submitting real ones and following them through — see below.
- A structured audit, if that is all you want
- A fixed piece of diagnostic work ending in a prioritised list you own outright, whether or not any of it comes back to us — covered below.
- Changes dated where the numbers live
- Every change annotated in the analytics, so a movement three months later can be traced to something specific rather than argued about.
Performance engineering
Speed is a commercial problem before it is a technical one: someone on a phone deciding whether to keep waiting. The order of investigation is what makes the difference, because compressing images does nothing about a server that is slow to answer. We start with how long the request takes to come back, then what the database is asked to do on every load, then what the browser has to download and execute. Core Web Vitals — the same slowness expressed as scores, including the ranking side of it — are covered under technical SEO rather than duplicated here.
- Server response: PHP version, opcache and worker limits, measured under real load
- Page caching and CDN rules, including the pages that must never be cached
- Redis object caching for the queries a page repeats on every single load
- Slow queries, autoloaded options and overdue cron traced back to what triggers them
- Images handled at upload — modern formats, at the size they are actually displayed
- A script budget: every third-party tag listed, with what it does and what it costs the page
- WooCommerce specifically, where cart, checkout and account pages cannot be cached at all
Analytics and reporting
Analytics that nobody opens is usually analytics nobody specified. The useful version runs backwards: start from the decisions in front of you — which services deserve more marketing, which pages produce enquiries, which channel brings people who buy rather than people who read — and work out the events needed to answer them. GA4 is an event model, so what you can get out is decided entirely by what somebody chose to send in. We agree that list with you, name things consistently enough that a report still reads next year, and are explicit about what each figure leaves out.
- GA4 built around your decisions rather than left on the default install
- Event and parameter naming agreed in advance and written down
- Ecommerce events across the full purchase sequence, with values that reconcile against orders
- Figures segmented by device, template and channel rather than read as one site-wide average
- GA4 and the ad platforms read alongside each other instead of one at a time
- A plain note against each number saying what it counts and what it quietly excludes
Conversion tracking
This is the layer connecting money going out to enquiries coming in, and when we audit an account it is usually the part carrying the most damage. The failures are undramatic: a thank-you page a redirect quietly skips, a form that submits without ever loading a confirmation URL, measurement withheld for everyone who declined it, a browser discarding the cookie before the sales cycle finishes. Each removes a slice of the data, and every later decision is made on whatever survived. We define an enquiry once, in your terms rather than a platform's, implement it identically everywhere, then send real ones through and watch where they land.
- One agreed definition of an enquiry, used identically across every platform
- Form, call and chat conversions, including submissions that never load a new page
- Tag behaviour that is honest about visitors who decline, so the gap is known rather than hidden
- Server-side measurement where what the browser reports has stopped being dependable
- Cross-domain and redirect handling, so the original source survives the journey
- End-to-end verification: a real enquiry followed from the click through to the CRM record
- One source nominated as the count of record, with platforms read against it rather than summed
Platform audits
Sometimes the right first step is not a project. An audit is a fixed piece of work that reads the site over systematically: how fast it is and which layer is responsible, whether the measurement can be trusted, what every installed plugin is doing for its keep, and what is out of date. The output is a prioritised list, separating what we would fix first from what can wait and what a scanner has flagged in red without it mattering. An audit finds and reports; fixing it and keeping it fixed is the support side of the business. You are equally free to hand the list to whoever maintains the site now.
- Performance traced to the layer responsible, not reported as a single score
- Tracking and analytics checked against real submissions rather than assumed to work
- Every plugin listed with its purpose, its cost to the page and whether it is still maintained
- Anything search-specific noted and passed to the SEO side rather than re-argued here
- Findings ranked by what they are costing you, with the ones that do not matter named as such
- A written document you own, usable as a scope of work by us or by anybody else
Built with
- GA4
- Custom Dashboards
- Performance profiling
- Caching architecture
- Redis
- LiteSpeed
- Cloudflare
- MySQL
Questions
- Is a perfect PageSpeed score the goal?
- No. That number comes from one simulated run and can be raised by tactics that make the page worse for a real visitor — deferring things people are waiting for, or lazy-loading the image at the top of the screen. We work from what the measurements say people experience on their own devices. The score often moves as a side effect, and we would rather it moved second.
- Our numbers do not match between platforms. Which one is right?
- None of them, exactly. They use different attribution windows, count differently, and lose different visitors to consent and blocking. The workable approach is to pick one source for trend — normally GA4 — and use your CRM or inbox for the count of enquiries, because that is the one place a real person appears once. Platforms are then judged on whether that count moved when their spend did.
- We already have GA4 running. Do you start again?
- Usually not. The property has history, and history is the only thing you cannot buy back later. More often the work is changing what it collects and what it is named, keeping the existing data intact alongside it. We would only recommend a fresh property where the current one is collecting something that cannot be corrected in place.