Aller au contenu

Duplicate Content Risk — Multi-Tenant SEO

The Problem

Our shared content library (content/defaults/) provides default text for all 9 practices. If multiple sites launch with identical content (only {ville} swapped), Google filters duplicates — picking one to show and suppressing the others. Our sites compete against each other instead of against competitors.

This is exactly the pattern SA and Denti.site use. Our benchmark showed those template-based sites underperform on local SEO. Reproducing that pattern would undermine a key differentiator.

How Google Handles Cross-Domain Duplicates

  • No penalty — duplicate content across domains is not a ranking penalty
  • Filtering — Google picks one canonical version and suppresses others from results
  • Local signals win — for "dentiste {ville}" queries, Google weighs local relevance, uniqueness, and E-E-A-T (Experience, Expertise, Authoritativeness, Trustworthiness)
  • Thin content risk — pages with only {ville} swapped may be classified as thin/low-value content

Risk by Content Type

Content type Risk Why Mitigation
Service detail (L2) body text High Factual text ("Qu'est-ce qu'un implant") identical across domains Require unique "At our practice" section per practice
Service hub (L1) intro High Template intro with city swapped Rewrite intro mentioning specific team, equipment, expertise
FAQ answers Medium Same Q&A across domains Low priority — FAQ schema ties to domain, answers are factual
Espace Patient pages Medium Generic medical advice Accept — educational content, not ranking-critical
Votre Besoin pages Low Short pages, mostly card links Value is in linking, not text volume
Homepage None Different hero, team, stats, testimonials Unique by design
Cabinet pages None Practice-specific by nature Always written per practice
Legal pages None Legal text expected to be templated Google ignores

Mitigation Strategy

1. Content Flags

Every default content file uses these flags per page/section:

Flag Meaning Action before launch
unique Write from scratch per practice No default available — must be original
customize-required Default is a starting point, not final copy Rewrite marked sections with practice-specific details
default-ok Use shared default as-is No changes needed

2. The "At Our Practice" Section

Every service detail page (L2) follows a 5-section structure:

  1. What — definition (shared, factual) → default-ok
  2. Why — indications (shared) → default-ok
  3. How — procedure steps (mostly shared) → default-ok, mention specific equipment if relevant
  4. At our practice — unique differentiator → customize-required
  5. Recovery — post-op advice (shared) → default-ok

Section 4 (80-100 words) is what makes each page distinct. It should mention: - Specific equipment used at this practice (by name) - Practitioner expertise ("Dr X, spécialisé en implantologie depuis 15 ans") - Volume/experience ("Plus de 2000 implants posés dans notre cabinet") - Any specific approach or protocol unique to the practice

3. Hub Introductions

L1 hub intros (100-150 words) must be rewritten per practice. The default provides structure, but the intro should mention: - The practice's specific expertise in this category - Named practitioners - Local context ("au cœur d'Aubagne", not just "à {Ville}")

4. Stagger Rollouts

Don't launch multiple sites simultaneously with identical content. Launch Aubagne first, then customize for each subsequent practice before going live. This gives Google time to index each site's version as the canonical one for its local context.

5. What NOT to Worry About

  • Legal pages — templated legal text is standard, Google knows this
  • FAQ content — factual answers to patient questions are expected to be similar across dental sites
  • Espace Patient pages — educational/medical advice content, not ranking-critical
  • Meta descriptions — these can share structure (templates from seo-patterns.md) as long as the page content differs. Google rewrites meta descriptions 70% of the time anyway.

Monitoring

After launch, monitor for duplicate content issues: - Google Search Console → Coverage → check for "Duplicate without user-selected canonical" - Site: searchsite:cabinet-dentaire-aubagne.fr implant dentaire should return results, not be filtered - Rankings — if two of our sites target the same keyword and neither ranks, suspect duplicate filtering