Nineteen of the clinic's own pages were competing for one keyword
Anonymised case study: merging nineteen cannibalising URLs put a Dubai hair restoration clinic in the top three for twelve keywords, with no new content.
Numbers from the client's own reporting
| Metric | Result |
|---|---|
| tracked keywords in the top three | 0 → 12 |
| best single-keyword move | 44 → #1 |
| own URLs competing for one keyword | 19 |
| ranking keywords, twelve months | ~110 → 666 |
| active redirects audited | 1,252 |
| clicks, 28-day compare | 490 → 557 |
| Period | Ongoing |
Semrush position tracking, English, Dubai, United Arab Emirates. The tracked set is 36 keywords; the top-100 bracket falls because those keywords moved up into the brackets above, not because they were lost. Not everything moved up — "transplantation hair cost" went from 12 to 15.
The situation, goals & challenges
Three separate things were suppressing this site and they looked like one thing in the reporting. Nineteen of the clinic's own URLs were targeting "best hair transplant dubai", so Google had no canonical answer to rank. The blog index had fallen from 336 clicks to one. A set of AMP URLs had collapsed from 18,000 impressions to about 45. Read as a single traffic line, that reads as an algorithm update. Read separately, it is three different faults with three different fixes.
Underneath sat 1,252 active redirects that had never been audited — duplicates, chains and wrong destinations accumulated over years of page changes — and a crawl logging 55 issues, fourteen of them high priority, including 78 URLs canonicalised away from themselves and hreflang faults across 83 more on a site serving both English and Arabic.
Challenges
- A your-money-or-your-life medical category in Dubai, against a benchmarked set running to domain ratings of 42 and up to 97,600 monthly visits
- Nineteen of the clinic's own URLs competing for a single head term
- An unaudited redirect table of 1,252 entries with ten actively wrong destinations
- Hreflang faults across a bilingual English and Arabic site
- One hard constraint: the clinic would not put its doctors' names on the website
SEO strategy for a licensed medical clinic
This account rewarded diagnosis far more than production. Most of the movement below came from removing conflicts and repairing plumbing, not from publishing.
Separate the drops before explaining them
An AMP build fault, a redirect breaking the blog index, and a Search Console anomaly that looked like a hack. Three causes, one traffic line. Treating them as a single "algorithm update" would have fixed none of them.
One canonical page per intent
Nineteen URLs targeting "best hair transplant dubai" is not a content problem, it is an architecture problem. Consolidate, redirect, and let one page carry the term.
Audit every redirect, not the new ones
1,252 active redirects reviewed for duplicates, chains and wrong destinations, with a live crawl confirming which pages must never be redirected. Ten were actively wrong, including the cost and eyebrow service pages.
Put E-E-A-T in the markup when it cannot go on the page
The clinic would not publish surgeon names. Physician credentials went into schema only — the signal Google reads in a YMYL category, delivered without exposing what the client wanted kept private.
Claim the licence nobody else claims
Not one clinic in the benchmarked competitive set mentions DHA licensing. In a category where patients are actively worried about who is holding the instrument, that is a free differentiator sitting unused.
The findings behind the numbers
The cannibalisation audit turned up nineteen URLs on the clinic's own domain targeting "best hair transplant dubai". Google was not withholding a ranking; it was being asked to choose between nineteen candidates and choosing none of them. Consolidating to one canonical page per intent moved that term from fifteen to one, and it moved four sibling terms to one alongside it. No new content was written to achieve any of that.
Medical SEO advice always arrives at the same instruction: name the doctor, publish the licence, link the bio. This clinic would not do it, and that is a legitimate decision rather than an obstacle to argue with. So physician credentials were written into the schema markup and never rendered on the page — the structured signal Google reads in a your-money-or-your-life category, delivered without a single surgeon's name appearing on the site. DHA licensing then carried the visible trust line, because not one clinic in the benchmarked set mentions it.
The redirect clean-up, in full
Years of page changes had left a redirect table nobody had ever read end to end. This is what auditing it involved.
- 1,252 active redirects exported and reviewed for duplicates, chains and wrong destinations
- Ten broken or incorrect redirects corrected, including the about, cost and eyebrow service pages
- A live crawl run to confirm 21 pages that must never be redirected
- The site's own page export cross-referenced against the redirect list for accuracy
- A final import file of 52 redirects delivered as a reference sheet plus a ready-to-import CSV
- A purpose-built redirect auditor written for the job — an async HTTP checker reading and writing the platform's own CSV format
Numbers that speak louder than claims
All figures from the client's own Search Console, rank trackers and delivery workbooks, recorded on the dates shown.
Page-one positions for high-value queries
Keyword rankings, Before vs Now
| Position band | Before | Now |
|---|---|---|
| Top 3 | 0 | 12 |
| Top 10 | 1 | 2 |
| Top 100 | 34 | 16 |
| Not ranked | 1 | 6 |
Three collapses, three different causes
| What was seen | What it actually was |
|---|---|
| 18,000 impressions down to ~45 | An AMP build fault. Root cause identified and returned to the developer. |
| Blog index from 336 clicks to 1 | A redirect fault inside an unaudited redirect table of 1,252 entries. |
| Gambling queries appearing in Search Console | A Search Console reporting anomaly, not a site compromise. No remediation needed. |
From the monthly diagnostic log. The third row is included because a month spent hunting a hack that was never there is the most expensive mistake available here.
What the crawl found
| Issue | URLs affected |
|---|---|
| Canonicalised away from themselves | 78 |
| Hreflang not pointing at the canonical | 56 |
| Hreflang with non-canonical return links | 27 |
| Pagination URLs not in an anchor tag | 26 |
| Pagination marked non-indexable | 25 |
| Internal 4xx responses | 8 |
| Page titles rendered outside the head | 2 |
| Pages serving two body tags | 2 |
Crawl audit from the campaign workbook: 55 issues logged, fourteen high priority. Four of the fourteen are hreflang faults, on a site whose second language is half its market.
Where the tracked search traffic actually comes from
| Placement type | Placements | Visits / month |
|---|---|---|
| Map pack and SERP features | 24 | 823 |
| Organic listings | 76 | 360 |
Position export split on whether each placement is a SERP feature or an organic result. Seventy per cent of the traffic arrives through a box Google owns and can restyle at will — worth holding, but not a strategy on its own.
Visibility inside AI search
| Surface | Result |
|---|---|
| AI Mode — "hair transplant dubai" | First source in the panel, cited twice inline |
| AI Mode — "hair transplant price in uae" | Cited for the graft-scale answer |
| AI Overviews, tracked set | 8 placements |
| Local pack, tracked set | 32 placements |
Cost and technique questions in this category now get answered above the results rather than inside them. The clinic is cited in both.
What we delivered
- Twelve tracked keywords in the top three, from none, and five of them at position one
- "Best hair transplant dubai" from 15 to 1 with no new content written
- 1,252 redirects audited, ten corrected, and a 52-entry import delivered
- Physician credentials delivered as schema without a surgeon's name appearing on the site
- Eight AI Overview placements and 32 local pack placements across the tracked set
How it unfolded
A note on the numbers
Figures are from the client's own monthly reporting — Semrush position tracking, Search Console and the campaign workbook. The click number is modest and stays that way on purpose: the clinic name is the single largest query in the account at 130 clicks a month, and ranking movement on commercial terms runs well ahead of the click line because the map pack absorbs a large share of this category before an organic listing is ever reached. The forward plan agreed for the following quarter is a plan, and is not reported here as a result.
The verdict: strategic SEO transforms businesses
Almost none of this was a content problem. Nineteen pages competing for one keyword, a redirect table nobody had read, an AMP fault and a reporting anomaly mistaken for a hack — the rankings were already available, and the site was the thing standing in front of them.

Kanwal Shahzad is a founder, strategist and AI enthusiast with 20 years of experience spanning finance, digital marketing and AI. She started her journey at EY, then spent a decade building Digidot into one of the region's pioneering AI-powered agencies. Today she leads two companies, including aisfy.ai at DIFC AI Campus — governance-first AI infrastructure designed to embed compliance, ethics and resilience at the core of business growth.
Services used: Web Development · SEO Dubai · AEO & GEO · Sector: Healthcare · All case studies













