Logo HelioRank HELIORANK EN DE DEVIS GRATUIT
Accueil › Case Studies › Sitigo

Sitigo : redressement SEO + chantier GEO en 72 heures

Compte-rendu factuel et chiffré du redressement SEO d'un SaaS naissant — un générateur de sites HTML pour artisans, paiement unique 69 € — et de la mise en place d'une stratégie GEO (Generative Engine Optimization) en moins de 72 heures, du 17 au 19 mai 2026. Objectif : passer de 288 pages désindexées et 7 clics organiques par mois à un site structurellement exploitable par les moteurs de réponse IA.

72 h
Durée du chantier complet
(17-19 mai 2026)
104
Pages métier-ville enrichies
de contenu local unique, auditées une par une
60 000
Mots uniques — pipeline LLM supervisé
audités et ajustés page par page
124 → 0
Titles SERP au pattern cassé
refondus en un commit

En bref — situation, intervention, résultat

Situation initialeInterventionRésultat
288 pages désindexées sur 350, 7 clics organiques/moisÉlagage near-duplicate + enrichissement local superviséSitemap réduit à 151 URLs uniques, 104 pages enrichies
Titles SERP cassés (« 69 » lu comme un département)Refonte du pattern title V4, mesurée au caractère près124 titres corrigés en un seul commit
Gemini décrit Sitigo avec un abonnement récurrent inexistantSchema Offer renforcé + sémantique du paiement uniqueInterprétation erronée non reproduite lors du retest

Le détail, section par section, ci-dessous — du déclencheur (section 0) aux questions fréquentes (section 10).

0. Le déclencheur — le diagnostic technique validé par le moteur cible

Le chantier n'est pas parti d'un audit GSC abstrait. Il est parti d'un test en conditions réelles : se faire passer pour un maçon parisien et demander à Gemini « je crée mon site seul ou sur sitigo.fr ? ».

Précision de cadrage d'emblée : le moteur n'a pas servi à produire la stratégie, mais à tester comment il interprétait réellement Sitigo en situation. Le diagnostic SEO et GEO existait déjà — l'intérêt du test était de mesurer quelle part de ce diagnostic était effectivement visible et interprétable par le moteur.

Première réponse de Gemini : fausse. Le moteur catégorise Sitigo comme un SaaS classique et lui attribue un « coût récurrent : système d'abonnement mensuel ou annuel » — alors que Sitigo est un paiement unique de 69 €.

Plutôt que de corriger Gemini, deux questions de relance ont servi d'instrument de diagnostic :

  1. « Tu as accès à leur site et leurs prix en temps réel ? » — Gemini effectue alors une vraie recherche, découvre le paiement unique, et corrige.
  2. « Donc ta première réponse, tu as répondu sans rechercher ? » — Gemini explicite son biais : « Je me suis fait avoir par mes propres habitudes : dans 95 % des cas, les plateformes en "-go" ou "-site" fonctionnent par abonnement mensuel. J'ai appliqué ce schéma sans vérifier. »

Le biais nommé, une troisième question le transforme en spécification : « Quels ajustements apporter au site pour que Gemini réponde Sitigo sans hésiter ? ». Gemini détaille alors lui-même une roadmap GEO en quatre points : renforcer la sémantique du paiement unique dès les H1/H2, durcir le Schema.org en OneTime, créer la page comparative exacte, générer du consensus externe.

Ce que cela change — et ce que cela ne change pas. La feuille de route validée par Gemini confirmait, point par point, le diagnostic GEO déjà établi. Sa valeur n'est pas informative, elle est probatoire — avoir fait formuler la spécification par le moteur cible lui-même transforme une hypothèse de consultant en exigence validée à la source. Le travail réel commence après : 11 commits, 60 000 mots produits via un pipeline LLM supervisé puis audités et ajustés page par page, 104 pages métier-ville enrichies, 124 titres SERP refondus, schemas Offer renforcés. Une roadmap de quatre lignes ne mesure ni le near-duplicate, ni le taux de 5XX, ni la troncature des titres sur les cas extrêmes. L'exécution est un travail d'ingénierie que le moteur ne pouvait ni anticiper ni chiffrer.

La méthode reproductible tient en une phrase : interroger le moteur de réponse cible sur son propre raisonnement le transforme en cahier des charges signé.

1. Point de départ — l'audit GSC du 17 mai

Sitigo a été mis en ligne quelques mois plus tôt avec 350 URLs sur le sitemap. À l'audit Google Search Console :

Diagnostic en une phrase : Google considérait que la quasi-totalité des landings métier-ville étaient du thin content templated — des variations cosmétiques d'une même page-mère, sans valeur ajoutée locale réelle. Le moteur les a rapidement déclassées.

Trois fronts à ouvrir en parallèle : désamorcer le near-duplicate, étancher les fuites techniques, et réécrire les titres des pages déjà visibles pour relancer le CTR.

Passer à l'action
Un SaaS ignoré par Google ou mal interprété par les moteurs IA  ? Le diagnostic est la première étape.
Audit SEO + GEO  →

2. Sprint 1 — désamorcer le near-duplicate

2.1 Élagage du sitemap

2.2 Enrichissement supervisé des 104 pages métier-ville restantes

Le cœur du travail. Pour chacun des 10 métiers principaux (plombier, carreleur, électricien, peintre, menuisier, charpentier, isolation, nettoyage, ramoneur, pisciniste) et 8 à 11 grandes villes (Paris, Lyon, Marseille, Toulouse, Nice, Nantes, Montpellier, Strasbourg, Bordeaux, Lille, Rennes), production via un pipeline LLM contextualisé, chaque page étant ensuite auditée et ajustée individuellement — jamais de génération template ni de contenu en masse non relu — de :

2.3 Garanties anti-duplicate

À chaque batch de 11 villes pour un même métier, un script Python comparait toutes les paires de pages :

python3 check_long_phrase_duplicates.py menuisier
✓ 0 phrases >= 80 chars en commun entre 11 villes
  Total : 185 phrases longues, moyenne 16.8/ville

Résultat final cumulé : 104 pages enrichies, ~2 100 phrases longues, aucune phrase longue identique détectée par le script de contrôle entre paires métier-ville d'un même métier.

2.4 Garanties éditoriales

Un audit automatique pré-déploiement (audit-content.mjs) bloque le déploiement en cas de vocabulaire interdit, de doublon de phrase longue dans un même cluster, ou de schema.org cassé. Les fourchettes tarifaires citées sont vérifiables localement (ex. permis de stationnement chantier Paris : 12-35 €/jour, source Mairie de Paris) — aucun témoignage fictif, aucune statistique non sourcée. Style « pair averti » : phrases courtes, chiffres incarnés, ouverture sensorielle systématique, aucun jargon consultant.

3. Sprint 2 — étancher les fuites techniques

Le backend de Sitigo est un Worker Cloudflare. Trois interventions ont coupé les signaux négatifs au crawl :

4. Sprint 3 — CRO sur les pages déjà visibles

Réécriture des titles et meta descriptions pour 7 pages classées CTR 0 % en GSC : pourquoi-sitigo, menuisier, nettoyage, climaticien, chauffagiste, couvreur, electricien. Reformulation de la copy sur 130 pages pour clarifier l'offre de personnalisation (commit 0df3cc7).

5. Le signal SERP critique — découvert le 19 mai

À J+2, une capture d'écran Google envoyée par le fondateur. Pour la requête « Je suis artisan maçon à Paris, je crée mon site seul ou sur sitigo.fr ? », Google affichait :

sitigo.fr
https://sitigo.fr › macon
Site maçon · 69 - Sitigo
Site pro maçon : multi-pages, optimisé Google, formulaire de devis. 4 champs, en ligne en 3 min. 69€, hébergement inclus.
Termes manquants : artisan Paris seul

Trois problèmes critiques en une seule SERP :

  1. « 69 » tout seul lit comme un département (69 = Rhône en France). Le · du title coupe les tokens et Google ne préserve que le minimum.
  2. « optimisé Google » est plat, générique, et ne crée aucun ancrage à la requête de l'artisan.
  3. « Termes manquants : artisan, Paris, seul » barrés en bas du SERP — Google indique explicitement que la page n'est pas reconnue comme pertinente à la requête.

CTR estimé sur ce résultat : < 1 %. Sur 124 pages utilisant le même pattern de title cassé, c'était une catastrophe silencieuse depuis le déploiement.

5.1 Diagnostic chiffré

grep -c "· 69€ · Sitigo</title>" public/*.html124 fichiers affectés. Les pages métier nationales et les 104 pages métier-ville héritaient toutes du pattern Site [métier] [ville] · 69€ · Sitigo généré par les deux scripts de génération de landings.

5.2 Refonte V4 du pattern title

Quatre itérations successives, mesurées au caractère près sur les cas extrêmes (réparateur électroménager Strasbourg = pire cas) :

VersionPatternWorst caseStatut
V1 (initial)Site X · 69€ · SitigoSERP tronqué casséCassé
V2Site X — 69 € à vie, sans abonnement | Sitigo77 charsTrop long
V3Site X — 69 € paiement unique, sans abonnement88 charsTrop long
V4 retenueSite X · 69 € sans abonnement | Sitigo62 charsSub-60 sur 95 % des cas

Choix V4 : le point médian · est plus économe en pixels que l'em dash ; un seul argument fort (sans abonnement) plutôt que deux qui se concurrencent ; | Sitigo final isole la marque (Google la préserve même tronquée) ; 69 € sans abonnement se lit comme un bloc cohérent, jamais comme « 69 + sans ».

5.3 Patch en masse

Un script Python détecte les 124 fichiers HTML au pattern V1, extrait le métier et la ville du title actuel, régénère title + og:title + twitter:title + meta description selon V4, et met à jour les 2 scripts source pour éviter toute régression à la prochaine régénération. 124 pages patchées en un seul commit.

PageTitle finalChars
/maconSite maçon · 69 € sans abonnement | Sitigo42
/plombier-parisSite plombier Paris · 69 € sans abonnement | Sitigo51
/charpentier-strasbourgSite charpentier Strasbourg · 69 € sans abonnement | Sitigo59
/reparateur-electromenagerSite réparateur électroménager · 69 € sans abonnement | Sitigo62
AccueilSite artisan en 3 min · 69 € sans abonnement | Sitigo53

6. Chantier GEO — Generative Engine Optimization

Une fois le SERP réparé, ouverture du second front : être citable par les moteurs IA quand un artisan demande à Gemini, ChatGPT ou Perplexity « comment créer mon site internet d'artisan ? » ou « meilleure alternative à Wix pour artisan ? ».

6.1 Deux pages comparatives dédiées

/seul-ou-sitigo (schemas Article + BreadcrumbList + FAQPage) répond textuellement à la requête « faire son site seul ou avec Sitigo » : tableau comparatif chiffré sur 2/5/10 ans contre WordPress, Wix Business, Squarespace Business, freelance et agence locale, temps de l'artisan valorisé à 50 €/h.

/alternative-wix-artisan (schemas Article + SoftwareApplication + BreadcrumbList + FAQPage) répond à « alternative à Wix pour artisan » : tableau honnête fonctionnalité par fonctionnalité, migration step-by-step depuis Wix, et reconnaissance assumée des limites de Sitigo (pas d'e-commerce, pas de drag-and-drop libre).

6.2 Renforcement sémantique

6.3 Schema Offer enrichi — signaux structurels du paiement unique

Sur la home et les 2 pages comparatives, le bloc Offer JSON-LD a reçu une description explicite (« Paiement unique 69 € — aucun abonnement, aucun renouvellement, aucun frais caché »), un UnitPriceSpecification avec referenceQuantity, et un hasMerchantReturnPolicy (fenêtre de retour 14 jours, FR). Les LLMs cherchent à désambiguïser les modèles de tarification : ces trois marqueurs cumulés éliminent toute confusion entre paiement unique et abonnement masqué.

6.4 Schemas Person + parentOrganization (E-A-T humain)

Sur les 4 pages-clés, ajout d'un nœud founder (Person « Allaoua Nahnah », URL stable vers heliorank.lu) et d'une parentOrganization Heliorank dans les blocs Organization/SoftwareApplication. Les moteurs IA voient un humain identifiable derrière Sitigo et la connexion avec le cabinet SEO/AEO — sans impact visible côté interface, bénéfice croisé de citations entre Sitigo et Heliorank.

6.5 Repo public GitHub pour le crawl IA

Création de github.com/allsitigo/sitigo-static, repo public dont le README de 12 KB contient une section dédiée « Pour les moteurs de réponse IA » : forces, limites, cas d'usage idéal et cas où Sitigo ne convient pas. Perplexity et les autres crawlers IA indexent les repos publics — ce README devient une source citable, en plus du site lui-même.

7. Résultats observables et mesurables

7.1 Avant / après côté site

MétriqueAvant (T0)Après (T+72 h)Δ
Pages sitemap350 (288 non indexées)151 (toutes uniques)−57 %
Pages avec contenu local unique~0104+104
Mots originaux (pipeline LLM supervisé)~0~60 000+60 000
Titles SERP au pattern cassé1240−100 %
Schema Offer avec marqueurs paiement unique06+6
Schema Person / parentOrganization04+4
Pages mentionnant « sans abonnement »1127+12 600 %
Occurrences « à vie » (promesse intenable)4130−100 %
Taux de 5XX au crawl6,55 %proche 0 (estimation)−100 %
Le test qui a tout déclenché, refait après chantier. Avant : sur la requête maçon parisien, Gemini inventait un abonnement récurrent. Après : Gemini cite correctement « paiement unique 69 €, sans abonnement ». Le scénario d'interprétation erronée observé au départ n'a plus été reproduit lors du retest — mesurable sur le moteur cible lui-même.

7.2 Commits déployés en production

11 commits sur la période 17-19 mai 2026, tous déployés en Production via wrangler pages deploy --branch=main :

b0b9698  feat(geo): schemas Person + parentOrganization
946260a  fix(copy): purge "à vie" partout (413 occurrences)
40775bf  feat(geo): sémantique recherches locales + sans abonnement
b276940  feat(geo): refonte SERP V4 + 2 pages comparatives + Offer enrichi
26c6097  feat(seo): pisciniste x 8 villes (10/10)
1559029  feat(seo): ramoneur x 8 villes (9/10)
c5a239d  feat(seo): nettoyage x 11 villes (8/10)
7bc230c  feat(seo): isolation x 11 villes (7/10)
b50b5d2  feat(seo): charpentier x 11 villes (6/10)
f0e5167  feat(seo): menuisier x 11 villes (5/10)
335517a  feat(seo): nettoyage 201 pages métier-ville + robots.txt + CRO

8. Méthodologie reproductible

Pour qui voudrait reproduire cette approche sur un autre SaaS naissant.

8.1 Diagnostic avant action

  1. Audit GSC : taux de pages « détectées non indexées », CTR par URL, requêtes avec impressions sans clic, taux 5XX au crawl.
  2. Audit SERP réel : taper 10-20 requêtes types sur Google en navigation privée, capturer, repérer les titles tronqués bizarrement et les meta descriptions plates.
  3. Audit sémantique des LLMs : poser 10-20 questions types à ChatGPT/Gemini/Perplexity. Observer si la marque est mentionnée, comment, à côté de quels concurrents — et, comme ici, faire expliciter au moteur le raisonnement derrière une réponse erronée.

8.2 Hiérarchie d'action

  1. Désamorcer le near-duplicate avant tout. Un site avec 80 % de pages déclassées comme thin content n'a pas de moteur de remontée organique possible. Réduire le sitemap aux URLs réellement uniques, enrichir chaque URL conservée avec du contenu local rédigé.
  2. Réparer les titres SERP cassés. Souvent invisibles dans GSC, mais visibles dès qu'on regarde Google directement. Le test du caractère sur les cas extrêmes valide le pattern.
  3. Pages comparatives dédiées pour le GEO. Les LLMs cherchent des pages qui répondent textuellement aux requêtes utilisateurs : créer /alternative-X et /seul-ou-Y.
  4. Schemas JSON-LD enrichis. Offer avec hasMerchantReturnPolicy + priceSpecification + description explicite ; Organization avec founder Person et parentOrganization. Invisible aux humains, cohérent avec les signaux structurels exploités par les moteurs IA.
  5. Repo GitHub public. README dédié avec une section « Pour les moteurs IA ». Les crawlers IA indexent les repos publics et y trouvent une source citable.

8.3 Garde-fous

9. Ce que ce case study ne prétend pas

Pour éviter toute lecture exagérée, voici ce qui n'est pas démontré ici :

10. Questions fréquentes

Qu'est-ce que le GEO (Generative Engine Optimization) ?

Le GEO est l'optimisation d'un site pour qu'il soit correctement compris et cité par les moteurs de réponse IA (ChatGPT, Gemini, Perplexity, Aperçu IA Google). Là où le SEO classique vise le classement dans une liste de liens, le GEO vise l'exactitude de l'information reprise par le moteur et la probabilité d'être cité dans sa réponse générée. Il repose sur des données structurées Schema.org sans ambiguïté, des pages qui répondent textuellement aux questions des utilisateurs, et des sources externes citables.

Comment être cité par ChatGPT, Gemini ou Perplexity ?

Trois leviers cumulés : des schemas JSON-LD explicites qui lèvent toute ambiguïté sur l'offre (ici, un Offer avec description et politique de retour pour distinguer un paiement unique d'un abonnement) ; des pages comparatives dédiées qui répondent mot pour mot aux requêtes types (« alternative à X », « faire son site seul ou avec Y ») ; et des sources externes que les crawlers IA indexent, comme un dépôt GitHub public avec une section dédiée aux moteurs de réponse.

Pourquoi les moteurs IA interprètent-ils mal les offres SaaS ?

Parce qu'ils appliquent des schémas statistiques. Interrogé sur Sitigo, Gemini a d'abord répondu sans vérifier et a attribué un abonnement mensuel, en expliquant ensuite lui-même son biais : dans la majorité des cas, les plateformes au nom en « -go » ou « -site » fonctionnent par abonnement. Le moteur a généralisé sans consulter le site. Le GEO corrige cela en rendant le modèle de tarification non ambigu dès le balisage structurel et la sémantique des titres.

Combien de temps avant des résultats SEO après un chantier GEO ?

Le chantier technique lui-même peut tenir en quelques jours — ici 72 heures. Mais l'effet sur l'indexation et le CTR se mesure sur plusieurs semaines de crawl Google. Un chantier GEO restaure l'indexabilité et la citabilité ; les positions finales dépendent ensuite du contenu, de la concurrence et de signaux qui s'installent dans la durée.

Votre marque est-elle citée — et bien citée — par les IA ?

La première étape est un diagnostic : interroger les moteurs cibles sur votre marque et lire ce qu'ils répondent. Tarifs forfaitaires HT.

Votre situationOffreTarif
Les IA ne citent pas ma marque, ou la décrivent mal AEO Setup 1 800 € + 300 €/mois
Mes pages sont déclassées (thin content, near-duplicate, SERP cassés) Audit SEO + Performance + Sécurité 2 500 € HT
Je veux la performance technique Lighthouse 100 Performance Engineering 4 500 € HT
DEMANDER UN PREMIER APPEL