---
title: "Free AI visibility score badge"
description: "Show your website’s Good for Bots score with a free, live badge. Find your report, copy the embed code and earn a dofollow backlink."
url: "https://goodforbots.com/badge"
---

# Show your Good for Bots score.

Add a free, live badge to your website. It updates after each published scan and links to your public report.

[How the score and capabilities are assessed](https://goodforbots.com/standards#scoring)

[Find your badge](https://goodforbots.com/badge#find-badge) by entering your website address. Free, no account needed. Opens your published report. If the report is missing, start a free scan on the [home page](https://goodforbots.com/#scan).

## Three steps. One small embed.

An image and a link. No script to install.

1. **Find your report.** Enter your domain above to find your published report and its badge.

2. **Copy the code.** Click the badge on your report to copy HTML, or open “Embed on your site”. Choose HTML for your website or Markdown for a README.

3. **Add it to your site.** Paste it into your footer, ideally on your homepage. Keep the link to your report so visitors can see the evidence.

HTML / example only. Get your own HTML or Markdown from your report.

```html
<a href="https://goodforbots.com/r/example.com"><img src="https://goodforbots.com/badge/example.com.svg" alt="Good for Bots score for example.com" width="200" height="54"></a>
```

## Display your badge. Earn a dofollow backlink.

On Free, your backlink becomes dofollow after a scan detects the link back to Good for Bots on your site. Add the linked badge to your homepage footer, where our bot can find it.

Verification happens during a scan, not the moment you paste the code. Pro listings already have a dofollow backlink, with or without a badge. Installing a badge never changes your score.

## Small badge. Clear meaning.

Illustrative scores:

- Poor: 34 (0–44 points).

- Fair: 73 (45–74 points).

- Good: 87 +2 (75–89 points).

- Excellent: 96 (90–100 points).

### One score, out of 100

The number is your latest published score. The word and colour show its band: Poor, Fair, Good, Excellent.

### Extra capabilities, shown separately

A +N beside the band counts detected agent capabilities, such as MCP or A2A. These do not add points to the score.

### A report behind every badge

Clicking your badge opens the checks and findings behind the number. Payment never changes the score.

## Badge questions

### Is the badge free?

Yes. The live badge and HTML and Markdown embed snippets are available on Free and Pro. Installing it is optional, and both plans receive the same score.

### When does the badge update?

It reflects your latest published scan automatically; you do not need to replace the embed code. It does not continuously monitor your site. Image caches can delay when a new result appears.

### What if my score drops?

The badge shows the new score and band after the next published scan. A lower score is not hidden. If the bot is blocked or your site opts out, the badge shows “Blocked” or “Opted out” instead of a scored band.

### Can I use it in a GitHub README?

Yes. Copy the Markdown snippet from your report. GitHub caches images, so updates may take longer to appear. A badge in a GitHub README alone does not earn a dofollow backlink for your website: verification looks for the link on your own site.

### Why is my backlink still nofollow?

On Free, a scan must find the link back to Good for Bots on a page it reads. Put the linked badge in the server-rendered homepage footer and [allow our bot to read the page](https://goodforbots.com/bot#controls). A badge image without the link does not count; installing it on a page the scanner never visits may not be detected. Once it is in place, [request a rescan](https://goodforbots.com/faq#rescan) or wait for the next automatic scan.

### Does it need JavaScript or a plugin?

No. The HTML embed is an SVG image inside a link. Paste it into a custom HTML block or your site’s template. Keep the hosted image URL so the badge can update after future scans.

More answers in [the FAQ](https://goodforbots.com/faq#badge).

## Structured data

```json
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "WebPage",
      "@id": "https://goodforbots.com/badge#webpage",
      "url": "https://goodforbots.com/badge",
      "name": "Free AI visibility score badge",
      "description": "Show your website’s Good for Bots score with a free, live badge. Find your report, copy the embed code and earn a dofollow backlink.",
      "inLanguage": "en",
      "isPartOf": {
        "@id": "https://goodforbots.com/#website"
      },
      "breadcrumb": {
        "@id": "https://goodforbots.com/badge#breadcrumb"
      }
    },
    {
      "@type": "BreadcrumbList",
      "@id": "https://goodforbots.com/badge#breadcrumb",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://goodforbots.com/"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Badge",
          "item": "https://goodforbots.com/badge"
        }
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://goodforbots.com/badge#faq",
      "name": "Badge questions",
      "isPartOf": {
        "@id": "https://goodforbots.com/badge#webpage"
      },
      "mainEntity": [
        {
          "@type": "Question",
          "name": "Is the badge free?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. The live badge and HTML and Markdown embed snippets are available on Free and Pro. Installing it is optional, and both plans receive the same score."
          }
        },
        {
          "@type": "Question",
          "name": "When does the badge update?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "It reflects your latest published scan automatically; you do not need to replace the embed code. It does not continuously monitor your site. Image caches can delay when a new result appears."
          }
        },
        {
          "@type": "Question",
          "name": "What if my score drops?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "The badge shows the new score and band after the next published scan. A lower score is not hidden. If the bot is blocked or your site opts out, the badge shows “Blocked” or “Opted out” instead of a scored band."
          }
        },
        {
          "@type": "Question",
          "name": "Can I use it in a GitHub README?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. Copy the Markdown snippet from your report. GitHub caches images, so updates may take longer to appear. A badge in a GitHub README alone does not earn a dofollow backlink for your website: verification looks for the link on your own site."
          }
        },
        {
          "@type": "Question",
          "name": "Why is my backlink still nofollow?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "On Free, a scan must find the link back to Good for Bots on a page it reads. Put the linked badge in the server-rendered homepage footer and allow our bot to read the page. A badge image without the link does not count; installing it on a page the scanner never visits may not be detected. Once it is in place, request a rescan or wait for the next automatic scan."
          }
        },
        {
          "@type": "Question",
          "name": "Does it need JavaScript or a plugin?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "No. The HTML embed is an SVG image inside a link. Paste it into a custom HTML block or your site’s template. Keep the hosted image URL so the badge can update after future scans."
          }
        }
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://goodforbots.com/#organization",
      "name": "Good for Bots",
      "url": "https://goodforbots.com",
      "logo": "https://goodforbots.com/icon-512.png",
      "founder": {
        "@id": "https://goodforbots.com/#person-mateusz-pawlica"
      },
      "contactPoint": {
        "@type": "ContactPoint",
        "contactType": "customer support",
        "email": "support@goodforbots.com",
        "url": "https://goodforbots.com/contact"
      }
    },
    {
      "@type": "WebSite",
      "@id": "https://goodforbots.com/#website",
      "name": "Good for Bots",
      "url": "https://goodforbots.com",
      "description": "Check if AI crawlers can access and read your website, free. Get a score out of 100 with every finding and fix prompts, then browse reports in the directory.",
      "inLanguage": "en",
      "publisher": {
        "@id": "https://goodforbots.com/#organization"
      },
      "potentialAction": {
        "@type": "SearchAction",
        "target": {
          "@type": "EntryPoint",
          "urlTemplate": "https://goodforbots.com/directory?q={q}"
        },
        "query-input": "required maxlength=120 name=q"
      }
    },
    {
      "@type": "Person",
      "@id": "https://goodforbots.com/#person-mateusz-pawlica",
      "name": "Mateusz Pawlica",
      "givenName": "Mateusz",
      "familyName": "Pawlica",
      "jobTitle": "Founder of Good for Bots",
      "description": "Web developer who builds directories and AI-powered products, and the founder of Good for Bots.",
      "url": "https://goodforbots.com/about#founder",
      "sameAs": [
        "https://pl.linkedin.com/in/mateusz-pawlica-65238816b",
        "https://pawlicaweb.pl/o-mnie"
      ],
      "knowsAbout": [
        "llms.txt",
        "robots.txt",
        "AI crawlers",
        "Markdown content negotiation",
        "Structured data",
        "Technical SEO",
        "Web directories",
        "Next.js",
        "TypeScript",
        "Generative AI"
      ],
      "worksFor": {
        "@id": "https://goodforbots.com/#organization"
      }
    }
  ]
}
```
