Audit SEO — Analyse boîte noire

digital-pro-craft.fr

Site analysé le 4 juin 2026 · Agence web · Montpellier / Hérault (34)
Digital Pro Craft Jean-Pierre Amar
digital-pro-craft.fr
Vendargues (34)
77
/ 100

Une base technique excellente, freinée par des détails

Le site repose sur une stack moderne, rapide et très bien sécurisée — largement au-dessus de la moyenne des sites d'agence. Le score est principalement plombé par des coordonnées de contact factices encore en ligne et quelques réglages on-page faciles à corriger. Aucun chantier lourd : ce sont des ajustements de finition à fort impact.

● 1 point critique · 5 à corriger · 3 opportunités
01

Tableau de bord par catégorie

Indexation92
Sécurité95
Performance90
Structure Hn92
Open Graph / Social80
Images80
Balises Title78
Meta descriptions75
Données structurées55
SEO local / NAP45
02

Ce qui est déjà très bien fait

Conforme

Sécurité de premier ordre

Le site renvoie un jeu d'en-têtes de sécurité complet : Content-Security-Policy, Strict-Transport-Security (HSTS sur 1 an), X-Frame-Options: DENY, X-Content-Type-Options, Referrer-Policy et Permissions-Policy. C'est une posture que l'on voit rarement, même sur des sites professionnels. Aucune version de serveur ou de CMS n'est exposée.

Conforme

Rapidité et infrastructure modernes

Hébergement sur Vercel avec cache en périphérie (x-vercel-cache: HIT). La page d'accueil répond en ~0,23 s (premier octet), HTTP/2 actif. C'est un atout direct pour le référencement (Core Web Vitals) comme pour l'expérience visiteur.

Conforme

Indexation propre et architecture de contenu riche

robots.txt bien réglé (zones privées /dashboard, /api, /admin bloquées), sitemap.xml valide listant 33 URL : pages de service dédiées, page locale /agence-web-montpellier, 9 articles de blog, portfolio et pages légales. Balise canonique, lang="fr", viewport et meta robots index,follow tous présents et corrects. Chaque page a un title et un H1 uniques.

03

Constats détaillés & recommandations

Critique

Un numéro de téléphone factice est en ligne

Constat : la page contact affiche le numéro +33 4 00 00 00 00, y compris dans un lien cliquable tel:+330400000000. Ce même numéro placeholder figure dans la fiche d'identité du site (données structurées Organization).

Pourquoi c'est important : un visiteur qui clique sur « Appeler » depuis un mobile tombe sur un numéro invalide. C'est une perte sèche de prospects et un signal de négligence sur la page la plus sensible du site. Google peut aussi propager cette donnée erronée.

Recommandation : remplacer partout par le vrai numéro (page contact, pied de page, données structurées). Vérifier que le lien tel: pointe vers le bon numéro au format E.164, ex. tel:+33XXXXXXXXX.

À corriger

Adresse de remplissage dans les données structurées

Constat : le schéma Organization contient une adresse incomplète : "streetAddress": "1 Impasse", localité « Montpellier », CP 34000.

Pourquoi c'est important : Google s'appuie sur la cohérence du triplet Nom / Adresse / Téléphone (NAP) entre le site, la fiche Google Business et les annuaires. Une adresse tronquée affaiblit le référencement local et la confiance.

Recommandation : renseigner l'adresse réelle et complète (cohérente avec la fiche Google Business), ou, si l'adresse n'est pas publique, structurer l'entité en service area business avec areaServed (Montpellier, Hérault) plutôt qu'une adresse fictive.

À corriger

Données structurées injectées côté client (afterInteractive)

Constat : les schémas Organization, WebSite et LocalBusiness existent bien, mais sont injectés via next/script en strategy="afterInteractive" — donc après hydratation, et non dans le HTML servi initialement.

Pourquoi c'est important : Google sait exécuter le JavaScript, mais le rendu différé reste moins fiable et plus tardif que des données présentes dès la réponse serveur. Pour un signal aussi structurant que l'identité de l'entreprise, mieux vaut ne dépendre de rien.

Recommandation : rendre le JSON-LD directement côté serveur dans le composant de page (App Router), via une balise statique :

<script
  type="application/ld+json"
  dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
/>
À corriger

Titres trop longs et mot-clé redondant

Constat : plusieurs <title> répètent « Montpellier » deux fois (ex. « …Montpellier | Digital Pro Craft Montpellier »). La page locale atteint 105 caractères, bien au-delà de la limite d'affichage de Google (~60).

Pourquoi c'est important : au-delà de ~60 caractères, le titre est tronqué dans les résultats ; la répétition du mot-clé n'apporte rien et peut diluer le message.

Recommandation : viser 50–60 caractères, mot-clé une seule fois.

Avant : Agence Web Montpellier - Développeur Web & Création Site Internet Hérault | Digital Pro Craft Montpellier
Après : Agence Web à Montpellier (34) | Digital Pro Craft
À corriger

Meta descriptions trop longues

Constat : certaines descriptions dépassent largement la limite utile : 254 caractères sur la page locale, 198 sur la page contact (la cible est ~150–160).

Pourquoi c'est important : la partie excédentaire est coupée par « … » dans les résultats. L'accroche et l'appel à l'action en fin de phrase sont alors perdus.

Recommandation : réécrire en 150–160 caractères, accroche + bénéfice + zone géographique en tête.

Opportunité

Image de partage social inadaptée

Constat : twitter:card est en summary_large_image (grande vignette), mais l'image pointée est le logo logo.png en 500×500 (carré).

Pourquoi c'est important : sur LinkedIn, Facebook ou X, le partage affichera un logo recadré au lieu d'une vraie bannière — moins de clics, image moins pro.

Recommandation : créer une image Open Graph dédiée en 1200×630 (titre + accroche + logo) et la référencer dans og:image/twitter:image.

Opportunité

Aucune balise de mesure d'audience détectée

Constat : aucun marqueur GA4 / Google Tag Manager n'apparaît dans le HTML servi.

Pourquoi c'est important : sans mesure, impossible de savoir quelles pages convertissent, d'où viennent les visiteurs, ou si les corrections SEO portent leurs fruits.

Recommandation : installer une mesure respectueuse du RGPD (GA4 avec consentement, ou une alternative type Plausible/Umami, plus simple à cadrer côté confidentialité).

Opportunité

Page blog plus lourde et plus lente

Constat : la liste du blog pèse ~164 Ko et répond en ~1,0 s (vs 0,23 s en accueil). Reste correct, mais c'est le maillon le plus lent observé.

Pourquoi c'est important : le blog est une porte d'entrée SEO ; sa vitesse influe sur l'exploration et l'expérience.

Recommandation : paginer ou charger les vignettes en différé, vérifier que les images d'articles passent par next/image (formats WebP/AVIF, dimensions explicites).

04

Plan d'action priorisé

ActionPrioritéEffortImpact
Remplacer le numéro factice partout (contact, footer, schéma, lien tel:)CritiqueFaibleÉlevé
Compléter / corriger l'adresse NAP dans les données structuréesHauteFaibleÉlevé
Rendre le JSON-LD côté serveur (HTML initial)HauteFaibleMoyen
Raccourcir les titles (≤60 car., mot-clé unique)HauteFaibleMoyen
Réécrire les meta descriptions trop longues (~155 car.)HauteFaibleMoyen
Créer une image Open Graph dédiée 1200×630MoyenneFaibleMoyen
Installer une mesure d'audience RGPD-compatibleMoyenneMoyenMoyen
Optimiser le poids / la vitesse de la page blogMoyenneMoyenFaible

En clair : les deux premières lignes (numéro + adresse) sont à traiter en priorité absolue — effort minime, impact direct sur la crédibilité et la conversion. Le reste est de la finition SEO qui consolidera un site déjà techniquement solide.