Digital growth & search intelligence consulting
Find what’s stopping your website from growing.
We connect SEO, analytics, technical systems and AI search to find the problems costing your business visibility, leads and revenue.
Fixed scope, fixed priceNo ranking guaranteesWe say no when we can't help
Growth Diagnostic · inputs
8 layers- Website
- Search
- Analytics
- Technical
- AI Search
- Business
Analysis → problem → evidence → action
F-014
P0 · Critical- Problem
- Product pages canonicalise to their category, so no product can rank for its own model query.
- Evidence
- 11,902 / 12,480 product URLs declare a category canonical. Started with the 14 March release.
- Action
- Restrict the canonical rule to variant parameters only. Self-canonicalise base product URLs.
Measured by
Indexed product URLs · non-brand impressions
Illustrative example of the finding format we deliver. Not a client result — we publish results only when they are real and permissioned.
What we work on
- Technical SEO
- Analytics
- Migrations
- AI Search
- Programmatic
- Revenue mapping
Start with the symptom
Something is probably costing you growth. You just need to find it.
Organic traffic dropped
Something changed. There is always a date, and the date narrows the cause.
See how we investigateTraffic but no leads
Usually a traffic-quality problem, a conversion problem, or a measurement problem — and they need different fixes.
See how we investigateAnalytics cannot be trusted
When the numbers are wrong, every decision made on them is a guess with a chart attached.
See how we investigateA website migration is coming
Migration losses are avoidable, but only with work that happens before launch — not after.
Protect the migrationA large site with no clear system
Large sites need rules, thresholds and monitoring — not a longer list of tasks.
See how we investigateAI search does not mention us
Measurable, improvable, and not guaranteeable. Anyone promising guaranteed AI placement is selling something else.
See how we investigate
Where we start
We don't start by asking for more traffic.
We start with the business.
More traffic is useless if it is the wrong traffic. More leads are useless if the tracking is broken. More pages are useless if nobody needs them.
So the first conversation is about what you sell, what is worth the most, where leads come from, and what changed recently. Everything technical follows from that — which is why we can tell you which three of three hundred findings actually matter.
Never sell a service because we can do it. Sell it because the customer has the problem, the problem matters, and we can prove it, fix it and measure it.
- Business
- Customers
- Revenue
- Conversions
- Website
- Search
- Datathen data
Most agencies run this chain backwards — starting at data and hoping it reaches the business.
What we do
Five core services. Five specialist ones.
- Start here
Growth Diagnostic
Find the highest-value problems stopping growth, with the evidence behind each one.
- Solves
- You know performance is wrong. You do not know why.
- Timeline
- 2–4 weeks depending on site size and data availability
- Price
- From $1,500
Get a Growth Diagnostic
SEO & Search Growth
Make sure search systems can crawl, render, index and understand the pages that carry your revenue.
- Solves
- Search engines cannot reliably reach or understand your important pages.
- Timeline
- Audit 2–3 weeks; implementation depends on your release cycle
- Price
- From $2,500 for a focused fix project
Request a technical review
Migration Protection
Move CMS, domain, design or URL structure without losing the organic traffic and revenue you already have.
- Solves
- A migration is being planned around design and deadlines, not around what earns money.
- Timeline
- Start 4–8 weeks before launch; monitoring runs 30 days after
- Price
- From $7,500
Request a migration review
Analytics & Measurement
Make the numbers trustworthy enough to make business decisions with — GA4, GTM, ads, consent and CRM.
- Solves
- You are making decisions on numbers nobody has verified.
- Timeline
- Audit 1–2 weeks; implementation 2–4 weeks
- Price
- From $2,500
Audit my analytics
AI Search Visibility
Measure how your brand appears across AI search systems, and improve the signals that can influence it.
- Solves
- You do not know how your company is represented where buyers now look.
- Timeline
- Baseline 2 weeks; monitoring monthly
- Price
- From $2,000 for the baseline
Check my AI search visibility
Specialist work
Five further service lines for specific situations.
Self-service diagnosis
Where is your growth breaking?
You said
“Our organic traffic fell and nobody can explain it.”
What we would investigate
Establish a clean baseline
Pull the full available Search Console history and GA4, so seasonality and year-over-year comparison are possible before anything is concluded.
Find the exact date
Day-level analysis per template and per query group. Different sections often have different dates, and that pattern alone eliminates whole categories of cause.
Check indexing and coverage
Did pages leave the index, or did they stay indexed and lose position? These are completely different problems with completely different fixes.
Compare technical state before and after
Canonicals, robots, status codes, redirects, rendering and internal links around the date. Most drops that are called algorithmic turn out to be a release.
Compare content changes
Pages edited, consolidated, pruned or moved. Removing pages with real demand is a common self-inflicted cause.
Check whether the drop is real
Cross-check GSC against GA4 and the CRM. A consent or tracking change can produce a drop in reported traffic while actual traffic is unchanged.
Compare competitors and result layout
Did someone take those queries, or did the result page itself change shape so the same position now earns fewer clicks?
Check links to affected URLs
Lost backlinks or internal links to the specific pages that dropped — measured on the affected cohort, not site-wide.
Line up external events
Known search updates, seasonality, market events and your own campaign history against the isolated date.
You said
“We get visitors. They do not become anything.”
What we would investigate
Check whether the leads exist
Reconcile GA4 against the CRM first. A meaningful share of “we get no leads” turns out to be “we get leads and cannot see them”.
Classify the traffic by intent
Split queries into brand, commercial, informational and irrelevant. Informational traffic converting at a low rate is normal, not a failure.
Measure conversion by landing page
Conversion rate per template and per page, not site-wide. A site-wide average hides both the good pages and the broken ones.
Check the conversion path on each key template
Is there a clear next step? Is it the right next step for that buyer stage? “Learn more” everywhere is a real cause of this problem.
Test the forms for real
Submit them. Check validation, error handling, mobile behaviour, required fields, spam filtering and whether the submission actually reaches the CRM.
Analyse lead quality by source page
If leads exist but sales calls them poor, the problem is which searches you are winning — not the conversion rate.
Compare against paid performance
If paid converts on the same landing pages and organic does not, the difference is usually intent, not the page.
You said
“GA4 and our CRM disagree and I do not know which to trust.”
What we would investigate
Inventory everything that collects data
Every GA4 property and stream, every GTM tag, trigger and variable, every ads pixel, and every CRM field that is supposed to capture source.
Classify every event and conversion
Correct, wrong, duplicated or legacy. Most containers we open have tags nobody currently owns.
Check what conversions actually measure
A conversion defined on a thank-you page view is not the same as a confirmed submission — and behaves completely differently when routing changes.
Perform real actions
Submit a real form, complete a real purchase or signup, click a phone link, and trace each one through GTM, GA4, the ads platforms and the CRM.
Test both consent paths
Granted and denied. A consent implementation that drops data instead of modelling it can move reported traffic overnight for a compliance reason nobody connected to the chart.
Check cross-domain and subdomain behaviour
One journey becoming two sessions inflates traffic, destroys attribution and creates enormous “direct”.
Reconcile against the CRM
Match front-end conversions against CRM records, quantify the gap, and explain each contributor to it rather than averaging over it.
You said
“We are replatforming and I am worried about losing traffic.”
What we would investigate
Build the URL inventory
Crawl the old site, then add Search Console pages, GA4 landing pages, backlinked URLs and conversion pages. One list, every URL.
Score every URL by value
Traffic, conversions, revenue, backlinks and query value. This is what turns a redirect map from a guess into a protection plan.
Map old to new as rules
Rules wherever a pattern exists, explicit pairs where it does not. A rule can be tested against thousands of URLs; a spreadsheet cannot.
Specify what must carry across
Metadata, canonicals, structured data, internal links, sitemaps and robots — for both the staging and production environments.
Specify analytics continuity
Events, conversions, dataLayer and cross-domain behaviour on the new build, tested on staging before launch.
Test on staging
Crawl staging, run the redirect rules against the real scored URL set, verify rendering and markup, validate the tags.
Define launch-day pass/fail criteria
And rollback triggers. “Should we roll back?” should be answered by criteria agreed in advance, not by argument at 2am.
Monitor for 30 days
Day 1 critical QA, day 3 indexing and errors, day 7 traffic comparison, day 14 page-level comparison, day 30 retained-versus-lost report.
You said
“We have thousands of pages and no idea which ones matter.”
What we would investigate
Segment the site by page type
Not by URL. Every analysis after this — indexation, traffic, conversion, quality — is done per type, which is the only way large-site data becomes readable.
Measure indexation by type
What share of each page type is indexed, and what share of the indexed pages earn anything within 90 days.
Map crawl budget
Where crawl requests actually go, using server logs where available. Usually a large share goes to parameters, facets and duplicates.
Analyse the internal link graph
Link depth and internal links received by the pages that carry commercial value, versus the pages that receive links because of the navigation template.
Find the duplication and cannibalisation clusters
At scale these are systematic rather than incidental, which means they can be fixed with a rule instead of page by page.
Define a quality floor per page type
The minimum data or content a page must have to deserve indexation. Then measure how many pages currently clear it.
Design indexation and canonical rules
Which combinations are indexable, which are canonicalised, which are blocked, and how sitemaps are segmented so coverage is diagnosable.
You said
“AI assistants recommend competitors instead of us.”
What we would investigate
Build a fixed prompt set
Discovery, category, comparison, recommendation and brand questions, written down and frozen so results are comparable month to month.
Establish a baseline across surfaces
Run the set on the AI search surfaces available to us and record mention, recommendation, citation, source used, competitor mention and factual accuracy.
Identify which sources are being used instead of you
This is often the most actionable finding: a directory, a review site or a competitor blog is answering questions about your business.
Audit entity clarity on your own site
Can a machine extract who you are, what you do, who you serve, where, how you price and who works there — in plain sentences, without inference?
Check consistency off-site
Website, LinkedIn, directories and profiles should state the same core facts. Contradictions across sources make every source less usable.
Check technical access
Are the pages that explain your business crawlable and renderable without JavaScript? Are relevant crawlers blocked in robots.txt by accident?
Assess citable material
Original data, research or worked examples give these systems something to reference. Marketing copy gives them nothing.
You said
“The right people arrive and still do not convert.”
What we would investigate
Confirm the conversion data is real
Submit the forms ourselves and trace each one through GTM, GA4 and the CRM. A meaningful share of low-conversion cases are measurement problems.
Measure conversion by template, not site-wide
A site-wide rate hides both the pages that work and the pages that are broken. Almost every real conversion problem is concentrated.
Check whether the next step matches the buyer stage
“Learn more” on a page reached by a high-intent commercial search is a genuine cause of lost conversion — the CTA is the wrong commitment level.
Test the form and checkout on mobile
Required fields, validation messages, error handling, tap targets, and whether spam filtering is silently discarding real submissions.
Compare against paid on the same pages
If paid converts and organic does not on identical pages, the difference is intent — a traffic problem wearing a conversion costume.
Look at what the page does not answer
Scope, price guidance, process, what happens next, proof. Buyers who cannot answer these leave and shortlist someone who told them.
You said
“We keep publishing and nothing improves.”
What we would investigate
Check whether new pages are even indexed
Publishing into a site that is not indexing new URLs produces exactly this pattern, and it is invisible unless someone looks at coverage by page type.
Look for cannibalisation
Several pages competing for the same query keeps all of them mid-page. At scale this is systematic and fixable with a cluster model.
Compare demand against what you publish
Content briefed from volume rather than buyer stage produces informational traffic and no commercial movement. That is a structure problem, not an effort problem.
Audit internal linking
If links are generated by the navigation template rather than by page importance, the pages you care about never accumulate anything.
Check the technical floor
Rendering, canonicals, status codes and crawl distribution. Content work underperforms until the technical floor is solid, and it is cheaper to check than to assume.
Verify the measurement
Some stalled programmes are actually working and being measured badly — brand and non-brand averaged together is the most common version.
8 starting points. If none of them fits, tell us what is actually happening on the contact form — a real description is more useful to us than a category.
How we work
No giant report. No random recommendations.
- 01
Find
We inspect the data and the website.
We start with the business, not the keyword list: what you sell, what is worth the most, where leads come from, and what changed recently. Then we collect only the data that question needs — crawl, Search Console, GA4, CRM, logs where they exist.
- 02
Prove
We connect the problem to evidence.
Every finding has to be tied to something we can show you. Not “Google probably does not like this”, but “42% of your important URLs return this status while these ones are indexed, and it started on this date”. If the data does not support a conclusion, we say so and tell you what we would need.
- 03
Prioritise
We work out what actually matters.
Findings get scored on business impact, confidence and implementation effort, then sequenced by dependency. You should never receive a list of 300 problems with no order. Most projects have three things that matter and a long tail that does not.
- 04
Fix
We create and execute the right solution.
Each item becomes an exact change: what to modify, where, and how to test it. Either your developers implement against that specification with us reviewing, or we implement inside the scope we agreed. High-impact changes get staged and reviewed before they ship.
- 05
Measure
We check whether the change worked.
Every fix has a metric attached before it ships and a check afterwards, including checking for side effects. When something did not work, the report says so — that is how the next decision gets better.
Eight layers, analysed together
Most expensive problems are not inside one system. They sit between two, where nobody owns the boundary — which is why we look across all eight at once rather than in sequence.
- L1
Business
What is the company actually trying to achieve?
- L2
Search
How are users finding the company?
- L3
Website
Can users and search systems understand the site?
- L4
Technical
Can crawlers access and index the important pages?
- L5
Content
Does the site answer the right commercial questions?
- L6
Conversion
Does traffic become leads and customers?
- L7
Measurement
Can we trust the numbers?
- L8
AI Search
How is the company represented in AI search?
What we do not write
“Google probably doesn't like this.”What we write instead (illustrative)
“42% of important URLs return a 302 to a canonicalised duplicate, while only the duplicates are indexed. It started on 14 March, the day the new routing shipped.”Evidence, not adjectives
This is what a finding looks like.
How we handle proof
The examples below show the format and reasoning of our findings using recurring patterns we see in real audits. They are not client results.- E-01Technical SEOP0· Critical
Important pages were not being indexed
- Finding
- A large share of commercially important URLs sat in “Crawled – currently not indexed” while near-duplicate filter URLs were indexed instead.
- Evidence
- Search Console coverage by category, cross-referenced against a rendered crawl and the value-scored URL list.
- Why it mattered
- The pages that were supposed to earn commercial traffic were invisible, while crawl capacity went to URLs with no demand.
- Fix
- Canonical strategy corrected at template level, filter combinations restricted to those with real demand, internal linking redirected towards the commercial pages, sitemaps segmented by page type.
How the result is measured
Indexed valuable pages as a share of valuable pages, plus non-brand clicks on the affected template — measured against the pre-change baseline.
- E-02AnalyticsP0· Critical
Conversions were being counted twice
- Finding
- A conversion fired on both a thank-you page view and a form-submit event, so reported conversions were materially inflated and paid campaigns were optimising towards a duplicate signal.
- Evidence
- A real form submission traced through GTM preview, GA4 debug view, the ads platform and the CRM record.
- Why it mattered
- Budget was being allocated on inflated conversion counts, and CRM reconciliation was impossible because the numbers could never match.
- Fix
- Conversion redefined on the confirmed submission only, the legacy page-view trigger removed, dataLayer contract documented, CRM connected for validation.
How the result is measured
GA4-to-CRM match rate before and after, plus the duplicate rate driven to zero on the tested paths.
- E-03MigrationP0· Critical
A migration redirect map missed the pages that earned
- Finding
- The proposed redirect map was generated from a CMS export. When tested against the value-scored URL list, a meaningful share of the URLs carrying traffic, conversions and backlinks had no destination.
- Evidence
- Old-site crawl plus Search Console pages, GA4 landing pages and backlink data, scored and matched against the proposed map on staging.
- Why it mattered
- Those URLs would have returned 404s or been redirected to the homepage on launch — the single most common cause of large post-migration losses.
- Fix
- Redirect rules rewritten from the value-scored list, tested on staging against the real URL set, launch-day pass/fail criteria and rollback triggers agreed in advance.
How the result is measured
Share of scored URL value retained at day 30, redirect coverage of the scored set, and chain/error rate on launch day.
- E-04AI searchP1· High
AI search described the company incorrectly
- Finding
- Across a fixed prompt set, AI assistants stated outdated pricing and an incorrect service scope, and cited a third-party directory rather than the company's own pages.
- Evidence
- A frozen prompt set (discovery, category, comparison, recommendation, brand) run across available AI search surfaces, with mention, recommendation, citation, source and factual accuracy recorded per prompt.
- Why it mattered
- Buyers were forming a wrong impression before ever reaching the website, and a directory listing was acting as the authority on the company's own business.
- Fix
- Core facts stated plainly and consistently on-site and across off-site profiles, technical access to the explaining pages verified, original citable material published, incorrect third-party listings corrected.
How the result is measured
Mention, recommendation and citation rates on the same frozen prompt set, re-run monthly, plus the count of remaining factual errors.
Investigations
Case studies that read like investigations.
- EcommerceWorked example
Twelve thousand product pages that could not rank for their own model names
A canonical rule added during a duplicate-content cleanup pointed every product URL at its parent category. The catalogue was invisible for its highest-intent queries and nobody had connected the two facts.
- Product URLs canonicalised away
- 11,902
- Indexed product URLs at baseline
- 0
12 June 2026 · 6 min readRead the investigation
- EcommerceWorked example
A migration redirect map that covered 96% of URLs and 41% of the revenue
The redirect map was built from a CMS export, so it covered almost every URL by count. Scored by traffic, conversions and backlinks, it missed most of what the old site actually earned.
- URL coverage by count
- 96%
- Coverage by scored value
- 41%
3 July 2026 · 5 min readRead the investigation
- B2B servicesWorked example
GA4 and the CRM disagreed by 38%, and the marketing budget was moved on it
Four separate causes, each measurable. The team had been arguing about which number was right instead of decomposing the gap into its parts.
- Reported gap, GA4 vs CRM
- 38%
- Distinct causes found
- 4
24 July 2026 · 5 min readRead the investigation
What you actually receive
No mystery about the deliverable.
Growth Diagnostic
Exactly what lands in your inbox.
Not a 200-page PDF. A prioritised set of problems, the evidence for each, the exact actions, and a plan you can hand to a developer on Monday.
- Prioritised problem list — every item with evidence, business impact and an owner
- The evidence pack: crawl exports, GSC and GA4 analysis, screenshots, query data
- Root-cause analysis, not a symptom list
- Exact action items written so a developer can act on them
- Priority scoring (P0–P3) with an impact-versus-effort view
- Measurement plan — how we will know each fix worked
- 90-day roadmap sequenced by dependency, not by wishlist
- A working session to walk your team through it and answer questions
- Timeline
- 2–4 weeks depending on site size and data availability
- Price
- From $1,500
- Typically $3,500–$8,000 for a mid-market site. Scoped and fixed before we start.
- Access needed
- Read access to GSC, GA4 and GTM; the website; CRM data where available
- What it is not
- A diagnostic finds and proves problems. It does not implement them — that is a separate decision you make afterwards.
Pricing approach
We are not going to write “contact us for pricing”.
Growth Diagnostic
From $1,500
$3,500–$8,000 for a typical mid-market site
You know performance is wrong and need to know why before spending anything else.
2–4 weeks
Focused fix project
From $2,500
$2,500–$7,500 for a defined technical or analytics fix
You already know the problem and want it fixed properly, once.
2–5 weeks
Major technical project
From $7,500
$7,500–$20,000
Large sites where the fix is a system, not a task list.
6–12 weeks
Migration Protection
From $7,500
$7,500–$30,000+ depending on size and risk
You are replatforming, redesigning or changing domain and cannot afford to lose traffic.
Starts 4–8 weeks before launch, runs 30 days after
Analytics & Measurement
From $2,500
$2,500–$12,000 depending on stack complexity
Your numbers do not reconcile and decisions are being made on them anyway.
1–2 weeks audit, 2–4 weeks implementation
Search Intelligence programme
From $2,500 / month
$5,000–$10,000 / month for a growth scope
Organic is material to revenue and nobody is currently watching the whole system.
Monthly, month-to-month after onboarding
These are starting figures for scoping conversations, not a rate card. A quote follows a short call and a look at your site, and it is fixed before work starts.
Who we work with
Where search, data and money get complicated.
SaaS
Product-led and sales-led SaaS, where the gap between signups and qualified pipeline is usually the real problem.
What we work onEcommerce
Catalogue-driven sites where architecture, faceted navigation and revenue tracking decide whether search works.
What we work onMarketplaces & directories
Two-sided platforms and listing sites where supply changes daily and page quality has to be enforced by rules.
What we work onB2B services
Considered purchases with long cycles, where lead quality and self-service research matter more than traffic volume.
What we work onEcommerce & Product Platforms
Ecommerce businesses and product platforms with large catalogues, changing inventory, complex product architecture and measurable organic growth goals.
What we work onReal estate
Property portals and agencies with listing churn, hyper-local intent and high-value, low-frequency conversions.
What we work onTravel
Destination, booking and inventory-driven sites with strong seasonality and heavy comparison behaviour.
What we work onLarge content sites
Publishers, media and knowledge sites where archive management and page quality decide performance.
What we work on
Qualification, both ways
Is this for you?
We are probably a good fit if
- You have a real business with measurable goals
- You have meaningful website traffic, revenue or technical complexity
- You can provide access to your data
- Someone on your side can implement, or you want us to
- You understand that search work takes time to compound
- You want business results, not a ranking report
- You are willing to fix technical problems when we prove they matter
We are the wrong choice if you want
- You want guaranteed rankings
- You want 10,000 AI-generated articles
- You want purchased backlinks
- You want manufactured Reddit or review activity
- You will not give access to your data
- You need transformative results in two weeks
- You only care about traffic volume
None of these are moral positions. They are things that do not work, and taking money for them would waste yours. How we actually work
Who does the work
Real people, doing the analysis themselves.
Named profiles are on their way
Named profiles have not been published yet. Rather than show stock portraits or invented people, this section lists the roles that do the work. Ask us who would work on your project and we will tell you directly.Founder & Principal Consultant
Search, technical SEO and measurement
Leads every diagnostic and signs off every recommendation and every claim about revenue. A named profile will be published here.
Diagnostics, migrations, analytics
Before you contact us
What happens if you get in touch.
You send us your website and what is happening
One form, six fields. No call required to get started.
We review the situation
We look at your site and the public data before we reply, so the first conversation is useful.
We confirm whether we can help
If we are not the right fit, we say so — and where we can, we point you somewhere better.
We explain what we would investigate
Specifically: where we would look first and why, based on what we already saw.
You decide whether to move forward
No pressure and no follow-up sequence. You have the information; the decision is yours.
Real buying questions
Questions we actually get asked.
Something not answered here? Ask us directly — we reply within one business day.