Skip to main content
Local BusinessMixed

SEO Report: meta-defense.fr

Generated April 30, 2026 · 42 findings · 4.8s

78
report.overallScore
85
seo
76
security
0
performance
66
accessibility
81
Best Practices

Service businesses need to dominate local search results with correct NAP data, reviews, and local signals to attract nearby customers.

Score Breakdown

Average Local Business score: 54

seo
85(+37 vs avg)
security
76(+14 vs avg)
performance
0(-50 vs avg)
accessibility
66(+10 vs avg)
Best Practices
81(+21 vs avg)

Score Projection

Estimated improvement based on the findings in this report

Current score: 78Projected score: 83
Current score
Free (+2)
Starter (+1)
Pro (+2)

Ready to improve your SEO?

Start a free trial and see how your score can improve.

Module Breakdown

headers
108 findings
log analyzer
602 findings
accessibility
664 findings
content
674 findings
page experience
702 findings
dns
753 findings
technology
753 findings
crawl budget
751 finding
structured data
784 findings
robots
802 findings
brand checker
802 findings
layout scan
851 finding
social checker
851 finding
meta
901 finding
news mentions
93
mobile
952 findings
rate limits
952 findings
cookies
100
ssl
100
sitemap
100
uptime checker
100
indexing checker
100

All Findings (38)

Critical (5)

  • highheaders

    Missing strict-transport-security

    HSTS header is missing. The site may be vulnerable to downgrade attacks.

    Add Strict-Transport-Security header with max-age of at least 31536000

  • highaccessibility

    3 form fields without labels

    Form inputs without associated labels are inaccessible

    Use <label for="id"> or aria-label on every form field

  • highcrawl budget

    Crawl traps detected

    Found 86 URLs with pagination/faceted navigation patterns

    Use rel=nofollow, URL parameters in GSC, or robots.txt to prevent crawlers from following these patterns

  • highpage experience

    Intrusive interstitials detected

    Found 4 potential popup/overlay elements

    Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties

  • highlog analyzer

    Exposed phpinfo()

    phpinfo.php is publicly accessible, leaking server configuration details

    Remove phpinfo.php from the production server immediately

Medium (17)

  • mediumdns

    No DKIM record found

    None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.

    Configure DKIM signing with your email provider and publish the public key in DNS

  • mediumheaders

    Missing content-security-policy

    CSP header is missing. The site may be vulnerable to XSS attacks.

    Add a Content-Security-Policy header to restrict resource loading

  • mediumheaders

    Missing x-content-type-options

    X-Content-Type-Options is missing. MIME-sniffing attacks are possible.

    Add X-Content-Type-Options: nosniff header

  • mediumheaders

    Missing x-frame-options

    X-Frame-Options is missing. The site may be vulnerable to clickjacking.

    Add X-Frame-Options: DENY or SAMEORIGIN header

  • mediummeta

    Missing og:image

    No Open Graph image set. Social shares will lack a preview image.

    Add og:image meta tag (1200x630px recommended)

  • mediumstructured data

    Missing @type in schema

    A structured data object has no @type

    Add a @type property (e.g. Organization, WebSite)

  • mediumrobots

    No sitemap in robots.txt

    robots.txt does not reference a sitemap

    Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt

  • mediumtechnology

    Render-blocking scripts

    18 scripts load synchronously without async/defer

    Add async or defer to non-critical scripts to improve page load speed

  • mediumcontent

    Multiple H1 tags

    Found 4 H1 tags (recommended: exactly 1)

    Use only one H1 per page; use H2-H6 for subsections

  • mediumcontent

    Very low text-to-HTML ratio

    Text/HTML ratio is 2% (recommended: >5%)

    Increase meaningful text content relative to HTML markup

  • mediumcontent

    External links without noopener

    4 external links with target="_blank" lack rel="noopener"

    Add rel="noopener noreferrer" to all target="_blank" links

  • mediumaccessibility

    Missing main landmark

    No <main> element or role="main" found

    Wrap primary content in a <main> element for screen reader navigation

  • mediumaccessibility

    No skip navigation link

    No skip-to-content link at the top of the page

    Add a visually hidden skip link as the first focusable element

  • mediumlayout scan

    Inconsistent headings

    Desktop has 4 H1 tags, mobile has 1

    Ensure the same heading structure is served to both mobile and desktop users

  • mediumsocial checker

    Missing og:image

    No social sharing image set — posts will lack visual appeal

    Add og:image meta tag (1200x630px recommended)

  • mediumbrand checker

    No Organization schema

    No Organization JSON-LD found

    Add Organization structured data with name, logo, and contact information

  • mediumlog analyzer

    X-Powered-By header exposed

    X-Powered-By: PHP/8.4.20, PleskLin

    Remove the X-Powered-By header to reduce information leakage

Low (16)

  • lowdns

    DMARC policy is 'none'

    DMARC is set but policy is 'none' (monitoring only).

    Consider upgrading DMARC policy to 'quarantine' or 'reject'

  • lowdns

    Only one MX record (no redundancy)

    A single MX record means no failover if the mail server goes down.

    Add a secondary MX record for email redundancy

  • lowheaders

    Missing referrer-policy

    Referrer-Policy is not set. Full URLs may leak to third parties.

    Add Referrer-Policy: strict-origin-when-cross-origin

  • lowheaders

    Missing permissions-policy

    Permissions-Policy is missing.

    Add Permissions-Policy to restrict browser feature access

  • lowheaders

    X-Powered-By exposes technology

    X-Powered-By: PHP/8.4.20, PleskLin

    Remove the X-Powered-By header

  • lowheaders

    Missing Cache-Control header

    No Cache-Control header — browser caching is undefined

    Add Cache-Control with appropriate max-age for static and dynamic resources

  • lowstructured data

    Missing Organization schema

    No Organization or LocalBusiness structured data found

    Add Organization schema with name, logo, and contact info

  • lowstructured data

    Missing WebSite schema

    No WebSite structured data found

    Add WebSite schema with SearchAction for sitelinks search box

  • lowtechnology

    Many inline scripts

    23 inline <script> blocks found

    Move inline scripts to external files for caching and CSP compliance

  • lowtechnology

    Many external CSS files

    34 external stylesheets loaded

    Consider bundling CSS files to reduce HTTP requests

  • lowcontent

    Empty anchor links

    12 links point to "#" or "javascript:void(0)"

    Use proper URLs or button elements instead of empty anchors

  • lowmobile

    Missing autocomplete attributes

    1 form fields lack autocomplete hints

    Add autocomplete attributes (email, tel, name) for faster mobile form filling

  • lowaccessibility

    Missing navigation landmark

    No <nav> element or role="navigation" found

    Wrap navigation links in a <nav> element

  • lowrate limits

    No rate limiting detected

    No explicit rate-limit headers or 429 responses detected. Cloudflare WAF provides platform-level protection.

    Implement rate limiting (e.g., 429 Too Many Requests) to protect against brute-force attacks

  • lowbrand checker

    No web app manifest

    No manifest.json linked — PWA features unavailable

    Add a web app manifest for installability and brand customization

  • lowpage experience

    No resource hints

    No preload or preconnect hints found

    Add preload for critical resources and preconnect for important third-party origins

AI Fix Prompt

Copy this prompt into ChatGPT or Claude to get step-by-step fix instructions

Fix all SEO issues found in the audit of meta-defense.fr.

Prioritize high-severity issues first, then medium. For each fix, make the actual code change — don't just describe what to do.

```json
{
  "domain": "meta-defense.fr",
  "scores": {
    "overall": 78,
    "performance": 0,
    "seo": 85,
    "accessibility": 66,
    "bestPractices": 81,
    "security": 76
  },
  "findings": [
    {
      "module": "dns",
      "severity": "medium",
      "title": "No DKIM record found",
      "description": "None of the common DKIM selectors returned a valid key. Email authentication may be incomplete.",
      "recommendation": "Configure DKIM signing with your email provider and publish the public key in DNS"
    },
    {
      "module": "headers",
      "severity": "high",
      "title": "Missing strict-transport-security",
      "description": "HSTS header is missing. The site may be vulnerable to downgrade attacks.",
      "recommendation": "Add Strict-Transport-Security header with max-age of at least 31536000"
    },
    {
      "module": "headers",
      "severity": "medium",
      "title": "Missing content-security-policy",
      "description": "CSP header is missing. The site may be vulnerable to XSS attacks.",
      "recommendation": "Add a Content-Security-Policy header to restrict resource loading"
    },
    {
      "module": "headers",
      "severity": "medium",
      "title": "Missing x-content-type-options",
      "description": "X-Content-Type-Options is missing. MIME-sniffing attacks are possible.",
      "recommendation": "Add X-Content-Type-Options: nosniff header"
    },
    {
      "module": "headers",
      "severity": "medium",
      "title": "Missing x-frame-options",
      "description": "X-Frame-Options is missing. The site may be vulnerable to clickjacking.",
      "recommendation": "Add X-Frame-Options: DENY or SAMEORIGIN header"
    },
    {
      "module": "meta",
      "severity": "medium",
      "title": "Missing og:image",
      "description": "No Open Graph image set. Social shares will lack a preview image.",
      "recommendation": "Add og:image meta tag (1200x630px recommended)"
    },
    {
      "module": "structured-data",
      "severity": "medium",
      "title": "Missing @type in schema",
      "description": "A structured data object has no @type",
      "recommendation": "Add a @type property (e.g. Organization, WebSite)"
    },
    {
      "module": "robots",
      "severity": "medium",
      "title": "No sitemap in robots.txt",
      "description": "robots.txt does not reference a sitemap",
      "recommendation": "Add Sitemap: https://yourdomain.com/sitemap.xml to robots.txt"
    },
    {
      "module": "technology",
      "severity": "medium",
      "title": "Render-blocking scripts",
      "description": "18 scripts load synchronously without async/defer",
      "recommendation": "Add async or defer to non-critical scripts to improve page load speed"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Multiple H1 tags",
      "description": "Found 4 H1 tags (recommended: exactly 1)",
      "recommendation": "Use only one H1 per page; use H2-H6 for subsections"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "Very low text-to-HTML ratio",
      "description": "Text/HTML ratio is 2% (recommended: >5%)",
      "recommendation": "Increase meaningful text content relative to HTML markup"
    },
    {
      "module": "content",
      "severity": "medium",
      "title": "External links without noopener",
      "description": "4 external links with target=\"_blank\" lack rel=\"noopener\"",
      "recommendation": "Add rel=\"noopener noreferrer\" to all target=\"_blank\" links"
    },
    {
      "module": "accessibility",
      "severity": "high",
      "title": "3 form fields without labels",
      "description": "Form inputs without associated labels are inaccessible",
      "recommendation": "Use <label for=\"id\"> or aria-label on every form field"
    },
    {
      "module": "accessibility",
      "severity": "medium",
      "title": "Missing main landmark",
      "description": "No <main> element or role=\"main\" found",
      "recommendation": "Wrap primary content in a <main> element for screen reader navigation"
    },
    {
      "module": "accessibility",
      "severity": "medium",
      "title": "No skip navigation link",
      "description": "No skip-to-content link at the top of the page",
      "recommendation": "Add a visually hidden skip link as the first focusable element"
    },
    {
      "module": "layout-scan",
      "severity": "medium",
      "title": "Inconsistent headings",
      "description": "Desktop has 4 H1 tags, mobile has 1",
      "recommendation": "Ensure the same heading structure is served to both mobile and desktop users"
    },
    {
      "module": "social-checker",
      "severity": "medium",
      "title": "Missing og:image",
      "description": "No social sharing image set — posts will lack visual appeal",
      "recommendation": "Add og:image meta tag (1200x630px recommended)"
    },
    {
      "module": "brand-checker",
      "severity": "medium",
      "title": "No Organization schema",
      "description": "No Organization JSON-LD found",
      "recommendation": "Add Organization structured data with name, logo, and contact information"
    },
    {
      "module": "crawl-budget",
      "severity": "high",
      "title": "Crawl traps detected",
      "description": "Found 86 URLs with pagination/faceted navigation patterns",
      "recommendation": "Use rel=nofollow, URL parameters in GSC, or robots.txt to prevent crawlers from following these patterns"
    },
    {
      "module": "page-experience",
      "severity": "high",
      "title": "Intrusive interstitials detected",
      "description": "Found 4 potential popup/overlay elements",
      "recommendation": "Reduce intrusive interstitials — they hurt mobile experience and can trigger Google penalties"
    },
    {
      "module": "log-analyzer",
      "severity": "high",
      "title": "Exposed phpinfo()",
      "description": "phpinfo.php is publicly accessible, leaking server configuration details",
      "recommendation": "Remove phpinfo.php from the production server immediately"
    },
    {
      "module": "log-analyzer",
      "severity": "medium",
      "title": "X-Powered-By header exposed",
      "description": "X-Powered-By: PHP/8.4.20, PleskLin",
      "recommendation": "Remove the X-Powered-By header to reduce information leakage"
    }
  ]
}
```

Recommendations for your industry

  • 1Optimize Google Business profile
  • 2Add Service/LocalBusiness schema
  • 3Integrate customer reviews with Review schema
  • 4Ensure consistent NAP data across all pages
  • 5Create profiles in local business directories

SEO Checklist for Local Business

Tips for Mixed websites

  • →Define clear landing pages for each segment
  • →Use different meta strategies per page group
  • →Segment sitemap by content type

Local SEO Context

France requires French content for local searches and has strict RGPD rules.

Start your free trial

Use Ctrl+P / Cmd+P to save as PDF