Rescan Report
Share Report
Copy Report Link
Rescan Report
Share Report
Copy Report Link
Export Report
48/100

OVERALL SCORE

Level 2, Agent-Limited

Priority improvements needed for AI agents
AIDiscoverability50%Agent Easeof Use41%Security& Trust55%GEO, AIO, AEO59%SEO92%Performance60%Accessibility0%
  • AI Discoverability 50 out of 100
  • Agent Ease of Use 41 out of 100
  • Security & Trust 55 out of 100
  • GEO, AIO and AEO 59 out of 100
  • SEO 92 out of 100
  • Performance 60 out of 100
  • Accessibility 0 out of 100

CAPTURED SCREENSHOT

Captured website desktop screenshot

What AI sees of your website

Interactive Data Visualization & Data Apps | Plotly favicon

Interactive Data Visualization & Data Apps | Plotly

Millions of data teams trust Plotly for interactive data visualization. From open source graphing libraries to production data apps and AI-native analytics, explore what your team can build.

Next step

Turn this report into a fix workflow

1 failed check is ready to move into MCP or CLI remediation. Generate a repair prompt, connect the scanner to your coding agent, or open the integration docs before your next rescan.

Detailed report scores grouped by capability area
MetricScoreStatusPassedFailedWarningEvidence
AI Discoverability
50
Needs work2721View details
Discoverability
47
Priority fix600
Content Readiness
59
Needs work2011View details
Bot Access Control
45
Priority fix110View details
Agent Ease of Use
41
Priority fix100
Auth
48
Priority fix100
GEO, AIO and AEO
59
Needs work600
GEO Readiness
Not Applicable
Not Applicable200
AIO Readiness
Not Applicable
Not Applicable200
AEO Readiness
Not Applicable
Not Applicable200
SEO
92
Strong900
SEO
92
Strong900
Security & Trust
55
Needs work1100
Security & Trust
55
Needs work1100
Performance
60
Needs work1300
Performance
60
Needs work1300
Accessibility
0
Priority fix010View details
Accessibility
0
Priority fix010View details

Prioritized recommendations

Issues ranked by score impact

3 items need attention

AI DiscoverabilityBot Access ControlEstablished

AI bot rules in robots.txt

AI bot rules in robots.txt failed at "Classify AI crawler rules".

69 Fail

Needs attention

AI bot rules in robots.txt

Failed check
01

Issue

No explicit User-agent rules were found for major AI crawler tokens.

02

Why it matters

AI crawler product tokens have different meanings. Explicit robots.txt groups make training, search, and retrieval access policy auditable for compliant crawler operators.

Check name

AI bot rules in robots.txt

Score

31/100

Status

fail

Category

Bot Access Control

Maturity

Established

Goal

Declare deliberate robots.txt rules for major AI training, AI search, user-triggered, and dataset crawlers.

Result

AI bot rules in robots.txt failed at "Classify AI crawler rules".

Validation steps

  1. Classify AI crawler rules

    No explicit User-agent rules were found for major AI crawler tokens.

Evidence log1 step · 6 lines
Classify AI crawler rules [fail]! No explicit User-agent rules were found for major AI crawler tokens.INFOClassify AI crawler rulesINFOParsing User-agent groups and Allow/Disallow records for known AI crawler tokens evaluatedPath="/"INFOEvaluating exact User-agent matches before wildcard fallback exactAiPolicyCount=0 totalCrawlerTokens=18FAILNo explicit AI crawler User-agent groups were found examplesExpected=["GPTBot","OAI-SearchBot","ClaudeBot","Google-Extended","CCBot"]FAILCompare explicit AI crawler coverage actual=0 expected="> 0 explicit non-search AI crawler policies" missingTokens=["GPTBot","OAI-SearchBot","ChatGPT-User","ClaudeBot","Claude-SearchBot","Claude-User","Google-Extended","Applebot-Extended","Amazonbot","Amzn-SearchBot","Amzn-User","PerplexityBot"]INFOResolved effective root-path policy for crawler tokens blocked=0 allowed=21 unspecified=0

AI DiscoverabilityContent ReadinessEstablished

Author attribution

Author attribution is partially implemented.

45 Warning

Needs attention

Author attribution

Warning
01

Issue

No named author or publisher identity could be extracted.

02

Why it matters

Author attribution helps agents cite content responsibly, assess source credibility, and distinguish editorial pages from anonymous marketing copy.

Check name

Author attribution

Score

55/100

Status

warning

Category

Content Readiness

Maturity

Established

Goal

Identify content authors or publishers for trust and attribution.

Result

Author attribution is partially implemented.

Validation steps

  1. Schema.org attribution

    Schema.org attribution is incomplete or relies only on publisher/fallback evidence.

  2. Author identity quality

    No named author or publisher identity could be extracted.

Evidence log2 steps · 8 lines
Schema.org attribution [warning]! Schema.org attribution is incomplete or relies only on publisher/fallback evidence.INFOSchema.org attributionINFOChecking structured data for author, creator, and publisher contributorsWARNCheck named Schema.org author count actual=0 expected="> 0" authorCount=0 publisherCount=0 namedContributors=0 authors=[] publishers=[] formats=[]WARNSchema.org attribution is incomplete or fallback-only authorCount=0 publisherCount=0 authors=[] publishers=[]Author identity quality [fail]! No named author or publisher identity could be extracted.INFOAuthor identity qualityINFOChecking contributors for stable identity signalsFAILCheck identified contributor count actual=0 expected="> 0" namedContributors=0 identifiedContributors=[] unidentifiedContributors=[]FAILNo named contributor identity could be extracted

AccessibilityAccessibilityBrowser audit

Buttons must have discernible text

100 Fail

Check name

Buttons must have discernible text

Score

0/100

Status

fail

Device

desktop

Category

Accessibility

Fix guidance

Buttons must have discernible text

Evidence
{
  "ruleId": "button-name",
  "impact": "critical",
  "description": "Ensure buttons have discernible text",
  "tags": [
    "cat.name-role-value",
    "wcag2a",
    "wcag412",
    "section508",
    "section508.22.a",
    "TTv5",
    "TT6.a",
    "EN-301-549",
    {
      "truncated": true,
      "omittedCount": 4,
      "originalCount": 12
    }
  ],
  "affectedNodeCount": 5,
  "nodes": [
    {
      "target": [
        ".css-79elbk:nth-child(1) > .css-0[role=\"group\"][type=\"button\"]"
      ],
      "html": {
        "discarded": true,
        "reason": "[discarded fetched document data]",
        "originalType": "string",
        "originalLength": 92
      },
      "failureSummary": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\""
    },
    {
      "target": [
        ".css-79elbk:nth-child(3) > .css-0[role=\"group\"][type=\"button\"]"
      ],
      "html": {
        "discarded": true,
        "reason": "[discarded fetched document data]",
        "originalType": "string",
        "originalLength": 92
      },
      "failureSummary": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\""
    },
    {
      "target": [
        ".css-79elbk:nth-child(4) > .css-0[role=\"group\"][type=\"button\"]"
      ],
      "html": {
        "discarded": true,
        "reason": "[discarded fetched document data]",
        "originalType": "string",
        "originalLength": 92
      },
      "failureSummary": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\""
    },
    {
      "target": [
        ".css-79elbk:nth-child(6) > .css-0[role=\"group\"][type=\"button\"]"
      ],
      "html": {
        "discarded": true,
        "reason": "[discarded fetched document data]",
        "originalType": "string",
        "originalLength": 92
      },
      "failureSummary": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\""
    },
    {
      "target": [
        ".css-79elbk:nth-child(7) > .css-0[role=\"group\"][type=\"button\"]"
      ],
      "html": {
        "discarded": true,
        "reason": "[discarded fetched document data]",
        "originalType": "string",
        "originalLength": 92
      },
      "failureSummary": "Fix any of the following:\n  Element does not have inner text that is visible to screen readers\n  aria-label attribute does not exist or is empty\n  aria-labelledby attribute does not exist, references elements that do not exist or references elements that are empty\n  Element has no title attribute\n  Element does not have an implicit (wrapped) <label>\n  Element does not have an explicit <label>\n  Element's default semantics were not overridden with role=\"none\" or role=\"presentation\""
    }
  ]
}

Sign in to see 46 other issues and the full report

Create a free account to unlock every issue, evidence details, exports, and higher free limits.

Development Note:

Please configure GOOGLE_CLIENT_ID in .env to activate live login.

Fix with MCP or CLI

Use this report as the handoff into remediation. Generate a coding-agent prompt with the failing checks attached, or jump to the MCP and CLI setup docs before your next rescan.

Score history

Public scan score over time

Public reports for this website origin. Select any point or report link to open that canonical report.

2 reports
Public score history report links
Scan dateScoreReadinessReport
48/100Level 2, Agent-LimitedView report
48/100Level 2, Agent-LimitedCurrent report