Illustrative case study

A fictional business. The figures are a modelled scenario, not a client result.

Rimal Desal · Desalination EPC contractor · Muscat

How a Muscat desalination contractor made its bilingual project archive crawlable

أرشيف مشاريع ثنائي اللغة، قابل للزحف من جديد

Headline

+140% organic tender leads

Muscat, Oman · 11 months

Arabic pages indexed 120 → 980

Cross-section of a five-layer membrane: error particles are caught layer by layer and only clean pages pass through.FEED · 3,900 CRAWL ERRORS01 ENCODING−1,62002 LANGUAGE−94003 STRUCTURE−78004 MEANING−31005 CRAWL-BUDGET−209PERMEATE · 41 LEFT

The feed water

Thirty years of credentials, invisible in two languages.

A bilingual project archive full of broken Arabic URLs and orphaned pages hid the firm's credentials from tender researchers.

In desalination EPC, the website is not a brochure: it is the reference list a utility's tender researcher checks before a pre-qualification shortlist is drawn. Rimal Desal had built more than 640 plants and pumping stations, each with an Arabic and an English page. Two CMS rebuilds later, most of the Arabic half had fallen out of the index.

Researchers searching in Arabic for a contractor with SWRO experience on the Omani coast found competitors, or a 404. The firm's organic tender enquiries had flattened at five a quarter, almost all from English searches.

Diagnosis · five layers

Every error, classed by the layer that would catch it.

A bilingual crawl and 90 days of server logs surfaced 3,900 crawl errors. Rather than one long list, we sorted them like a reverse-osmosis train sorts impurities: coarse encoding faults first, the finest crawl-budget waste last. Select a layer to see what it caught.

Layer 01 · Site architecture

طبقة الترميز

Malformed Arabic URLs

In

3,900

Caught

1,620

Passed

2,280

What it caught

  • Arabic slugs double percent-encoded by the CMS on every save (%25D9%2585…)
  • Mixed Arabic-Indic and Western digits creating two URLs per project number
  • Trailing spaces and tatweel characters (ـ) generating 404s from tender portals

The fix

One transliteration-free Arabic slug rule, NFC-normalised, with 1,180 one-hop 301s from every legacy variant.

Before · search result, modelled

rimal-desal.example/ar/%25D9%2585%25D8%25B4%25D8%25A7%25D8%25B1%25D9%258A%25D8%25B9/sur-ii

404 – الصفحة غير موجودة

Double-encoded Arabic slug from the 2022 rebuild. No hreflang pair, no structured data.

After · search result, modelled

rimal-desal.example › ar › مشاريع › صور-٢

محطة صور ٢ لتحلية مياه البحر — ٨٠٬٠٠٠ م³/يوم

SWRO · Completed 2019 · Ash Sharqiyah South. English version linked via hreflang.

The treatment train

Four tactics, run in the order water would meet them.

The engagement ran on our Signal plan (technical seo): fix what stops crawlers first, then what confuses them, then what they cannot understand.

  1. Hreflang

    Paired every Arabic project page with its English twin.

    Clusters of ar-OM, en-OM and x-default generated from the project ID and shipped in the sitemap, so a template change can never break a pair again.

  2. Site architecture

    Rebuilt the archive so no reference is more than three clicks deep.

    One NFC-normalised Arabic slug rule, one-hop redirects for 1,180 legacy variants, and hubs by capacity, technology and client that give 214 orphans a parent.

  3. Schema markup

    Turned each plant into an entity search engines can read.

    Project entities carry capacity in m³/day, membrane technology, location and completion year, mirrored in both languages under one Organization.

  4. Log-file analysis

    Watched where Googlebot actually spent its time.

    90 days of server logs showed 71% of hits wasted on filters and calendars. Blocking them moved the bot to project pages, which it now recrawls every 6 days.

11 months

Month by month, the permeate ran clearer.

  1. M01 · Diagnosis

    Crawl both languages, pull 90 days of logs

    Full bilingual crawl, 412,000 log lines parsed, every error classed into one of five layers.

  2. M02 · Encoding

    Normalise the Arabic slugs

    Slug rule agreed with the engineering team; 1,180 legacy variants mapped to one URL each.

  3. M03 · Encoding

    Ship the redirect map

    One-hop 301s deployed in a single release; tender-portal deep links re-tested by hand.

  4. M04 · Language

    Rebuild hreflang from project IDs

    Reciprocal ar-OM / en-OM / x-default pairs generated in the sitemap, not the templates.

  5. M05 · Structure

    Design the hub model

    Capacity, technology and client hubs drafted; 214 orphaned Arabic pages given a parent.

  6. M06 · Structure

    Flatten the archive

    Paginated archive replaced with a filterable index three clicks from the home page.

  7. M07 · Meaning

    Model projects as entities

    Capacity, technology and completion year marked up on 640 project pages in each language.

  8. M08 · Budget

    Close the bot traps

    Faceted filters and calendar URLs blocked; datasheet PDFs consolidated to one path.

  9. M09 · Budget

    Second log review

    Googlebot hits on project pages up from 29% to 74%; Arabic recrawl interval down to 6 days.

  10. M10 · Meaning

    Tender-ready reference pages

    Bilingual credential summaries added for the 40 plants tender researchers ask about most.

  11. M11 · Handover

    Monitoring and runbook

    Weekly log and hreflang checks automated; runbook handed to the in-house web team.

Month 11 / 11
Crawl errors still passing41
Arabic pages indexed980

Handover

Monitoring and runbook

Weekly log and hreflang checks automated; runbook handed to the in-house web team.

Permeate · results

+140% organic tender leads.

Modelled scenario for a fictional business — not a client result. Rankings and traffic are never guaranteed; see our Terms.

  • Crawl errors

    3,900 → 41

  • Indexed Arabic pages

    120 → 980

  • Tender leads / quarter

    5 → 12

Crawl errors, monthly3,900 → 41 errors
1234567891011
Arabic pages indexed, monthly120 → 980 pages
1234567891011
Organic tender leads per quarter

Rankings, before and after

Google Oman, desktop, modelled positions at month 0 and month 11.

QueryLanguageBeforeAfter
مقاول تحلية مياه عمانArabicnot ranked#3
desalination EPC contractor OmanEnglish#34#4
مشاريع تحلية المياه مسقطArabic#61#2
SWRO plant references GCCEnglish#41#7
محطة تحلية بالتناضح العكسيArabicnot ranked#6
reverse osmosis contractor MuscatEnglish#28#3
brine outfall design OmanEnglishnot ranked#9
شركة مقاولات محطات المياهArabic#72#8

Signal · Technical SEO

Get a plan like this

If your archive, references or second-language pages are leaking out of the index, we will class every error and fix them layer by layer.

← All case studies