[ Service · Casablanca, Morocco ]

Generative Engine Optimization (GEO) Services

In short

Generative engine optimization (GEO) is the practice of making a website easy for AI answer engines such as ChatGPT, Perplexity, Gemini and Google's AI Overviews to read, understand and cite. RAIN Design Studio in Casablanca builds GEO into every site it ships: answer-first content, JSON-LD entity graphs, llms.txt files and AI-crawler-aware robots.txt. On Media Progetti, 66 of 69 pages carry structured data.

66 / 69

Media Progetti pages with JSON-LD

59

Media Progetti pages with FAQPage schema

36

GEO content pages on Origin Element

155

City pages on shi

Generative engine optimization starts from a simple observation: a growing share of questions are answered by AI systems that read the web and write a summary, often with a handful of cited sources. If your site is hard to parse, vague, or blocked from those systems, it is unlikely to be one of those sources. RAIN Design Studio treats GEO as part of how a site is built, not as a campaign added later.

What generative engine optimization is

Generative engine optimization (GEO) is the practice of structuring a website’s content and code so that generative AI engines can find it, understand who and what it describes, and quote it accurately. It is sometimes called AI search optimization or answer engine optimization.

The term comes from the research paper “GEO: Generative Engine Optimization” by Pranjal Aggarwal and colleagues, first published in 2023. The authors built a benchmark of queries and measured how content changes affected a source’s visibility in generated answers. Among the methods they tested, adding citations, quotations from relevant sources and statistics were among the most effective, and results varied by subject. The lesson for site owners is practical: clear, sourced, specific writing is easier for a machine to reuse.

For a longer explanation, read our guide What is generative engine optimization?.

GEO and SEO: what changes and what does not

GEO does not replace search engine optimization. Most AI answer engines still depend on crawling and search indexes, so the SEO foundations remain essential.

Classic SEO Generative engine optimization
Goal A high position in a list of links Being cited or summarized inside an AI answer
Unit of content The page The passage, fact or table row
Key signals Relevance, links, page experience Clarity, verifiable facts, unambiguous entities, freshness
Technical base Crawlable HTML, sitemap, speed The same, plus structured data, llms.txt and AI crawler access
Measurement Rankings and clicks Referral traffic from AI tools and manual citation checks

If you need local search work in French, see our agence SEO au Maroc service.

What RAIN implements: the GEO checklist

These are the practices we build into every site. Each one is checkable in the source code.

Practice What we ship Why it helps AI engines
Answer-first content A 2–3 sentence summary at the top of every key page that names the organization, the offer and one fact Gives engines a self-contained passage to quote
Entity graph JSON-LD Organization, WebSite, Service and BreadcrumbList linked by @id Removes ambiguity about who the business is and what it offers
Q&A markup FAQPage JSON-LD generated from the visible FAQs Pairs real buyer questions with concise answers
llms.txt llms.txt and llms-full.txt generated from site data Gives language models a curated map of the site
Crawler policy robots.txt with explicit rules for GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and Google-Extended Makes access a decision, not an accident
Citable facts Numbers, names and comparisons in tables and lists Short, verifiable units are easier to extract
Freshness Visible “last updated” dates, dateModified and sitemap lastmod Signals that facts are current

Answer-first writing

Every page opens with an answer, then the detail. We write leads and FAQ answers so each one makes sense on its own, because an AI engine may show a single passage with no surrounding context.

Entity graphs in JSON-LD

Structured data is generated from the same typed content as the page, so the schema cannot drift from the visible text. Google limited FAQ rich results in 2023, but FAQPage markup still describes the question-and-answer structure of a page clearly.

llms.txt

llms.txt was proposed by Jeremy Howard in 2024 as a Markdown file that summarizes a site for language models. It is not an official standard, and support across AI providers is uneven. We ship it because, when generated at build time, it costs almost nothing to keep accurate.

AI crawler access

robots.txt is where the policy becomes real. Training crawlers such as GPTBot and search-time agents such as OAI-SearchBot or PerplexityBot can be treated differently, and Google-Extended is a separate token that governs use by Google’s AI models without affecting Google Search. We list each one explicitly so the decision is visible and easy to change.

Citable facts, tables and freshness

AI answers favor short, checkable units: a number with its unit, a named standard, a row in a comparison table. We write facts that way and keep claims we cannot verify off the page. Every page shows its “last updated” date, and the same date feeds dateModified in JSON-LD and lastmod in the sitemap, so people and machines see one consistent signal.

GEO in our portfolio

  • Media Progetti. 68 pages with JSON-LD on 66 of 69 HTML files, including FAQPage on 59 and LocalBusiness on 12. Its llms.txt carries guardrails on official commercial data, such as brand naming and no published prices. Its robots.txt explicitly allows GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot and other AI crawlers. The delivery statement reported a Semrush audit of 100% site health and 100% AI search, with 0 errors on 78 crawled pages.
  • Origin Element. 36 SEO and GEO content pages across services, regions, industries and guides. The homepage carries an entity graph of 11 JSON-LD blocks, and llms.txt is generated from the same data. The client chose to allow PerplexityBot and Google-Extended while disallowing GPTBot and ClaudeBot, which shows that crawler policy is a business decision.
  • shi — Smart & High IT. 215 pages, including 155 city pages across 9 Moroccan cities, with ITService and FAQPage JSON-LD and llms.txt linked from the page <head>.

All three run on Astro. Static HTML is the easiest format for any crawler to read, which is why we pair GEO with Astro web development.

What GEO cannot promise

Honest generative AI optimization has limits, and we state them up front:

  • No guaranteed citations. AI engines choose sources with their own systems, and answers vary by query, user and day.
  • No invented metrics. We report what was shipped and what tools measure, not projected traffic.
  • Content still matters most. Markup helps engines understand good content; it cannot make thin content authoritative.

How a GEO engagement works

  1. Audit. We review crawlability, robots.txt, structured data, llms.txt, page speed and how your key pages answer real questions.
  2. Fix the foundations. Schema, entity graph, sitemap and crawler policy, ideally generated from one data source.
  3. Rewrite key pages. Answer-first leads, FAQs, comparison tables and dated facts.
  4. Monitor. Track AI referral traffic in analytics and check citations manually for your priority questions.

For French-speaking teams buying from abroad, our agence SEO offshore page explains how we work remotely from Casablanca.

Talk to us about GEO

Book a free 15-minute call and we will look at how AI engines can currently read your site. New RAIN sites include GEO by default; for an existing site, fixed-scope work starts at $10,000, or it can run on the Growth retainer at $7,500 per month.

Frequently asked questions

Generative engine optimization (GEO) is the work of making content easy for AI systems that generate answers, such as ChatGPT, Perplexity, Gemini and Google's AI Overviews, to find, understand and cite. The term comes from the 2023 research paper "GEO: Generative Engine Optimization" by Aggarwal et al. It builds on SEO rather than replacing it.

GEO shares SEO's foundations: crawlable pages, clear structure, authority and fast delivery. The difference is the target. SEO aims at a ranked list of links, while GEO aims at being quoted or cited inside a generated answer, which rewards self-contained statements, verifiable facts and unambiguous entities.

No. Nobody outside those companies controls which sources an AI engine cites, and answers change from one query to the next. RAIN implements the technical and editorial practices that make a site easier to read and quote, and reports what was shipped, not invented ranking results.

llms.txt is a plain Markdown file at the root of a website that gives language models a short, curated summary of the site and links to its key pages. It was proposed by Jeremy Howard in 2024 and is a community proposal, not an official standard. RAIN ships llms.txt and llms-full.txt on every site because they are cheap to maintain when generated from the site's own data.

It depends on whether you want your content used for model training, for AI search answers, or both. Crawlers such as GPTBot, OAI-SearchBot, ClaudeBot and PerplexityBot can be allowed or blocked separately, and Google-Extended controls use of content by Google's AI models. RAIN sets the policy with you and documents it in robots.txt.

On a new RAIN site, GEO is included: every build ships with JSON-LD, a sitemap, llms.txt and an AI-crawler-aware robots.txt. For an existing site, GEO work is scoped as a fixed project from $10,000 or run continuously on the Growth retainer at $7,500 per month.

Let's build what's next.

Custom projects from $10,000, monthly plans from $7,500. Kickoff within 3–5 business days.