SEO in Morocco: A Complete Guide to Ranking on Google
Ranking a Moroccan website on Google relies on the same principles as anywhere else, plus a few local specifics: bilingual content, local listings, mobile speed and Moroccan sources.

How do you rank a Moroccan website on Google?
To rank in Morocco, you need a technically sound and fast site, content that answers what Moroccans actually search in French, Arabic or Darija, a complete Google Business Profile for local searches, consistent business listings, and links from relevant Moroccan websites. Google's algorithm is the same everywhere; what changes is the language mix, local competition and the signals that tell Google you serve Moroccan clients. This guide goes through each lever in order of priority.
Why is SEO in Morocco different?
- Multiple languages. Many business searches are in French, but Arabic and Darija (in Arabic or Latin script) are common for consumer queries. The same client may search "plombier Casablanca" or the equivalent in Arabic.
- Mobile first. A large share of traffic comes from smartphones on mobile networks, so page weight matters.
- Local intent. Queries such as "dentist Maarif" or "agence immobilière Rabat" trigger the map pack, where your Google Business Profile matters more than your website.
- Moderate competition in many niches. In many sectors and cities, a well-optimized site can rank faster than in larger markets, but competitive niches (real estate, insurance, education) remain hard.
Step 1 — Fix the technical basics
Before content or links, make sure Google can crawl and understand your pages:
- Verify the site in Google Search Console and submit a sitemap.
- One URL per page and language, with a canonical tag; redirect HTTP to HTTPS and
wwwto non-www(or the reverse). - Unique
title(about 50–60 characters) and meta description per page. - One H1 per page, logical H2/H3 structure.
- No important pages blocked in
robots.txtor markednoindexby mistake. - Fix 404 errors and redirect old URLs after a redesign.
A technical SEO audit checks all of this in one pass.
Step 2 — Pass Core Web Vitals on mobile
Core Web Vitals measure loading, responsiveness and visual stability. The "good" thresholds are:
| Metric | What it measures | Good |
|---|---|---|
| LCP (Largest Contentful Paint) | Time to display the main content | 2.5 s or less |
| INP (Interaction to Next Paint) | Responsiveness to clicks and taps | 200 ms or less |
| CLS (Cumulative Layout Shift) | Unexpected layout movement | 0.1 or less |
Quick wins on most Moroccan business sites: compress and resize images (WebP or AVIF), remove unused plugins and scripts, load chat widgets and trackers after the main content, and use a CDN. Check real-user data in the Search Console "Core Web Vitals" report and on web.dev.
Step 3 — Claim and complete your Google Business Profile
For any business with a physical address or service area (Casablanca, Rabat, Tangier, Agadir…), the Google Business Profile is the main lever for map results.
- Choose the most precise primary category, then a few secondary ones.
- Use the exact business name, address and phone (no keyword stuffing in the name).
- Add opening hours, services, real photos, a WhatsApp or call link and the website URL.
- Ask satisfied clients for reviews and reply to all of them, in the language they used.
- Publish updates or offers regularly.
Step 4 — Build consistent local citations
A citation is any mention of your name, address and phone (NAP). Google cross-checks them to trust your location.
- List the business in recognized Moroccan business directories and in your sector's professional directories (federations, chambers of commerce, associations).
- Keep exactly the same NAP everywhere, including the same phone format.
- Add your social profiles (LinkedIn, Facebook, Instagram) with the same information.
- Avoid low-quality directories created only to sell links.
Step 5 — Write content in French and Arabic for real searches
- Start from the questions clients ask on the phone and in WhatsApp; each common question can become a page section or an article.
- Write the main page in the language most of your clients use for search. For B2B in Casablanca this is often French; for many consumer services, Arabic deserves its own pages.
- Write native content, not machine translation left as-is. Adapt examples, prices in MAD and city names.
- Create one page per service and, when relevant, per city you really serve, with specific content (not duplicated pages with only the city name changed).
- Answer the main question in the first lines of each page: this helps both featured snippets and AI answers.
Step 6 — Add hreflang for multilingual pages
If you have French, Arabic and English versions, each must have its own URL (for example /fr/, /ar/, /en/) and declare its alternates. Google's guide to localized versions explains the rules.
<link rel="alternate" hreflang="fr-MA" href="https://example.ma/fr/services/" />
<link rel="alternate" hreflang="ar-MA" href="https://example.ma/ar/services/" />
<link rel="alternate" hreflang="en" href="https://example.ma/en/services/" />
<link rel="alternate" hreflang="x-default" href="https://example.ma/fr/services/" />
Each version must list all versions, including itself. Arabic pages also need <html lang="ar" dir="rtl"> so the layout reads right to left.
Step 7 — Add LocalBusiness structured data
Structured data helps Google and AI engines understand who you are, where and when you are open:
{
"@context": "https://schema.org",
"@type": "LocalBusiness",
"name": "Example SARL",
"url": "https://example.ma",
"telephone": "+212-5-00-00-00-00",
"address": {
"@type": "PostalAddress",
"streetAddress": "Boulevard Example",
"addressLocality": "Casablanca",
"addressCountry": "MA"
},
"openingHours": "Mo-Fr 09:00-18:00",
"sameAs": ["https://www.linkedin.com/company/example"]
}
Insert it in a <script type="application/ld+json"> tag and test it with Google's Rich Results Test.
Step 8 — Earn backlinks from Moroccan sources
Links remain a strong signal, and links from Moroccan sites also confirm your local relevance. Realistic sources:
- Suppliers, partners and clients who can mention you on their site.
- Professional associations, federations and chambers of commerce.
- Moroccan media and specialized blogs, through genuinely useful content (a guide, local data, an expert opinion).
- Events, sponsorships, universities and schools for training or recruiting partnerships.
Avoid buying links in bulk: it is against Google's guidelines and the risk is not worth it.
Step 9 — Prepare for AI search (GEO and AEO)
More and more searches end in an AI answer (Google AI Overviews, ChatGPT, Perplexity, Gemini). To be cited:
- Structure pages as questions and direct answers, with lists and tables.
- Keep facts consistent across your site, Google Business Profile and directories.
- Let AI crawlers access your public pages in
robots.txt, and consider anllms.txtfile. - Use structured data (Organization, LocalBusiness, FAQ, Article).
The SEO, GEO and AEO checklist for Next.js details the implementation applied on this site.
Step 10 — Measure and iterate
- Search Console: queries, clicks, positions, indexing errors.
- Google Business Profile insights: calls, direction requests, website clicks.
- Analytics: forms, WhatsApp clicks and calls as conversions.
SEO takes time: expect a few months before stable results on competitive queries, and review the data monthly.
Quick checklist
| Area | Action |
|---|---|
| Technical | Search Console, sitemap, HTTPS, canonical, no accidental noindex |
| Speed | LCP, INP and CLS in the green on mobile |
| Local | Complete Google Business Profile, reviews, consistent NAP |
| Content | Native French and Arabic pages answering real questions |
| International | hreflang fr-MA / ar-MA / x-default, dir="rtl" for Arabic |
| Authority | Links from Moroccan partners, associations and media |
| AI search | Direct answers, structured data, AI crawlers allowed |
Conclusion
SEO in Morocco is less about tricks than about doing the basics thoroughly: a fast site, native content in the right languages, a complete Google Business Profile, consistent listings and a few quality Moroccan links. If your site is slow, poorly indexed or invisible in AI answers, a technical SEO audit is a good first step, or get in touch to discuss your project.
Related projects
Software EngineeringPersonal project · 2026essadikine.com — Bilingual Next.js Portfolio
This website: a fast, bilingual (EN/FR) portfolio optimised for Google and AI answer engines, self-hosted with Docker behind Cloudflare.
Frequently asked questions
Technical fixes and Google Business Profile improvements can show effects within weeks. For competitive queries, expect several months of consistent content and link building before stable rankings.



