# Arabic and RTL Web Adoption — Methodology

**Version:** 3
**Collected:** July 24, 2026
**Sample size:** 220 qualifying homepages
**Candidates attempted:** 1032
**Source URL:** https://moayyadfaris.com/arabic-web-stats/rtl-adoption
**Machine-readable data:** https://moayyadfaris.com/api/rtl-adoption-stats

## 1. Sample frame

Domains are drawn from the daily [Tranco top-one-million list](https://tranco-list.eu/top-1m.csv.zip), filtered to
Arabic-region country-code top-level domains:

- .ae
- .bh
- .dj
- .dz
- .eg
- .iq
- .jo
- .km
- .kw
- .lb
- .ly
- .ma
- .mr
- .om
- .ps
- .qa
- .sa
- .sd
- .so
- .sy
- .tn
- .ye

## 2. Sampling method

Highest-ranked Arabic-region ccTLD homepages returning HTML over HTTPS with at least 200 visible Arabic-script characters, sampled with a per-country cap so no single ccTLD can exceed roughly 20% of the total sample.

Candidates are attempted in a country-stratified round-robin order (rank preserved within each ccTLD) rather than a single global rank slice, and a soft per-country cap of 44 sites (~20% of the target) prevents any one country from dominating the final sample. 0 otherwise-qualifying pages were discarded for exceeding their country's quota in this run.

## 3. Inclusion rule

A candidate qualifies only if the HTTPS request succeeds, returns `text/html`, and the visible
text (scripts, styles, SVG, comments, and markup stripped) contains at least 200 Arabic-script
characters (Unicode ranges U+0600–U+06FF, U+0750–U+077F, U+08A0–U+08FF, U+FB50–U+FDFF,
U+FE70–U+FEFF).

## 4. What is measured

Initial server HTML, inline styles, and up to the first two linked stylesheets per site. JavaScript-rendered changes and stylesheets loaded via JS are not evaluated.

- HTML `lang`/`dir` presence, values, and conflicts
- CSS logical vs. physical directional property usage (inline styles, `<style>` blocks, and up to
  2 linked stylesheets per page)
- `[dir="rtl"]` attribute selectors, `:dir(rtl)` pseudo-class usage, and RTL-named stylesheet files
- Arabic web font loading (`@font-face`, `unicode-range`, known Arabic font family names) and
  fallback-chain coverage
- Forms/navigation presence and explicit `dir` attributes
- Bidi-isolation technique usage (`<bdi>`, `dir="auto"`, CSS `unicode-bidi`)
- Accessibility/SEO signals: image alt-text coverage, `aria-label`, meta description, Open Graph,
  JSON-LD, heading structure
- Framework/CMS fingerprint via the `generator` meta tag and well-known HTML/asset/cookie signatures

## 5. Anonymization

Public results use a truncated SHA-256 domain identifier and do not publish hostnames.

## 6. Known limitations

- JavaScript-rendered markup, attributes injected after hydration, and stylesheets loaded via JS
  are not captured — only the initial server response is evaluated.
- CSS analysis covers inline styles and up to 2 linked
  stylesheets per page, not the full cascade for pages that load more.
- Framework/CMS detection is a heuristic fingerprint (generator meta tag, known HTML/asset/cookie
  signatures) and is not authoritative — a site can mask or lack these signals.
- Country-level comparison figures are only reported for ccTLDs with at least 5
  qualifying sites in the sample; smaller countries are excluded from that specific breakdown as
  statistically unreliable at that sample size, though they still count toward the overall totals.
- Results describe this measured sample only and should not be generalized to the entire Arabic web.

## 7. Citation

Arabic and RTL Web Adoption, v3, collected 2026-07-24T18:27:51.187Z, Moayyad Faris. https://moayyadfaris.com/arabic-web-stats/rtl-adoption
