F

Not ready for AI agents

Speed: Fail (Google's lab run of this page)Core Web Vitals, Google

Start here.

These hold your letter down the most
  1. Fail·Read

    Your key facts are in the page itself

    Your home page holds 0 words before any script runs. An assistant that runs no script reads only what your server sends.

    What to do Make the home page send its text from the server, so it shows up with scripts turned off.

    Your web team · a few daysSee the check

  2. Fail·Act

    Assistants can read your page's controls

    Accessibility tree is not well-formed

    What to do Run Google's PageSpeed Insights on the home page and fix the accessibility problems it lists, which are mostly buttons and fields with no label.

    Your web team · about a daySee the check

  3. Fail·Read

    Your business is described in structured data

    The page has no structured data with a type.

    What to do Mark the business up with the most specific schema.org type that fits it.

    Your web team · about a daySee the check

Fix it,

or see it rebuilt

These 23 fixes add up to about five weeks of your web team's time.

  • Send to your agency

    An email with what is wrong and a link to this report, so whoever runs the site has every fix and its line for the web team.

    Send to your agency
  • Explore with your AI

    Your own AI reads the report and tells you how to fix each issue and the effort each takes. It gets this, and nothing else:

    Read this report on our website: clutch.io/grade/avenuesofsouthhoover-com. Tell me how to fix each issue and the level of effort each fix takes.

  • See your site rebuilt

    Clutch rebuilds avenuesofsouthhoover.com from its address, and the new site doesn't have these issues. Free to preview, $39 a month once it goes live.

    See your site rebuilt
63

Find

Can AI agents and search engines reach and list your pages?

25% of your grade · 5 of 10 goals pass

  • Your robots.txt is one robots can followImportantTested by Google LighthouseFail

    robots.txt is not valid (2 errors found) Google says a robots.txt file tells crawlers which addresses they may request. A line a crawler cannot read is skipped, so a rule you meant to set may never apply.

    • robots.txt is not valid (2 errors found): https://avenuesofsouthhoover.com/
    • robots.txt is not valid (2 errors found): https://avenuesofsouthhoover.com/

    What to do Fix the errors PageSpeed lists in robots.txt.

    For your web team: Fix the lines of robots.txt that Lighthouse reports as invalid.

    Your web team · about an hour · Important

    Robots.txt Introduction and Guide, GoogleReport an issue with this check

  • Your pages are listed in a sitemapImportantTested by CloudflareFail

    sitemap.xml not found. Google and Bing use an XML sitemap to find your pages, and neither promises to index every page in it. A page must be indexed to appear in Google's AI answers.

    • sitemap.xml not found: https://avenuesofsouthhoover.com/

    What to do Publish a sitemap and name it in robots.txt.

    For your web team: Serve a sitemap.xml (a urlset, or a sitemapindex for several files) and add a Sitemap line with the sitemap's full address to robots.txt.

    Your web team · about an hour · Important

    Build and submit a sitemap, GoogleReport an issue with this check

  • Every page has its own titleImportantTested by Google LighthouseFail

    Document doesn't have a <title> element Google builds the title link in search results from the page's title, and may change one that is missing, vague, boilerplate or repeated. A title keeps your wording in front of searchers.

    • Fix any of the following: Document does not have a non-empty <title> element: <html lang="en">: https://avenuesofsouthhoover.com/

    What to do Give every page its own title that says what the page is and what it offers.

    For your web team: Add a <title> element with text to the head of every page. Describe that page in plain words as a phrase a person would read, and make it differ from every other page's title.

    Your web team · about an hour · Important

    Influencing Title Links in Google Search, GoogleReport an issue with this check

  • Pages that do not exist say soImportantTested by ClutchFail

    A page that does not exist answers 200 with a normal page, so every guessed address looks real. Google treats content behind a 404 or 410 as gone, and flags empty pages that answer 200 (success) as soft 404s.

    • Status 200: https://avenuesofsouthhoover.com/grader-no-such-page-8f3a1c

    What to do Make a mistyped address show a page that says it was not found, with a 404 status behind it.

    For your web team: Return 404 (or 410 for a page that is gone) for unknown routes. A single-page app needs its server to answer unknown paths with the not-found page and a 404 status; a redirect to the home page makes every address look real.

    Your web team · about an hour · Important

    How Google Search handles HTTP status codes, GoogleReport an issue with this check

  • Pages open without detoursImportantTested by Google LighthousePartial

    Avoid multiple page redirects: the page is sent through a detour. Each extra redirect is another trip across the network that can delay the page by hundreds of milliseconds.

    • Redirects to https://avenuesofsouthhoover.com/lander: https://avenuesofsouthhoover.com/

    What to do Point old addresses straight at the page they now belong to.

    For your web team: Link to the final address, and make each redirect go to its destination in one hop, such as one rule that sends http and non-www to the final https address.

    Your web team · about an hour · Important

    Avoid multiple page redirects, ChromeReport an issue with this check

  • Agents can reach your siteCriticalTested by CloudflarePass

    Cloudflare's scan reached your site. An agent that is refused at the door reads nothing. Claude's web fetch tool gets only what a site answers to its request, so a firewall that challenges or blocks automated requests leaves it without your page.

    Web fetch tool, AnthropicReport an issue with this check

  • AI crawlers are allowed to read your siteCriticalTested by CloudflarePass

    Your robots.txt allows all 20 of the AI crawlers Cloudflare checks. A crawler is a robot that reads sites for a search engine or assistant, and one that is blocked cannot recommend you. OpenAI, Anthropic and Perplexity each say their crawlers follow robots.txt.

    Overview of OpenAI crawlers, OpenAIReport an issue with this check

  • Search engines may list each pageCriticalTested by Google LighthousePass

    Page isn’t blocked from indexing Google leaves out a page marked noindex, and a page its crawler cannot read cannot be listed or used as a supporting link in its AI features.

    AI features and your website, GoogleReport an issue with this check

  • Each page has one clear addressImportantTested by Google LighthousePass

    Document has a valid hreflang Google uses one canonical address per page, and uses hreflang to send searchers to the version of the page in their language.

    How to Specify a Canonical with rel="canonical" and Other Methods, GoogleReport an issue with this check

Read

25% of your grade · 2 of 9 goals pass

  • Your key facts are in the page itselfMust haveCriticalTested by ClutchFail

    Your home page holds 0 words before any script runs. An assistant that runs no script reads only what your server sends. Claude's web fetch tool does not support pages that fill in their text with JavaScript, and Google reads such a page only after its first HTML, once it reaches the rendering queue. A page whose first response is empty waits or looks empty.

    While it fails, your letter is an F.

    • 0 words in the page as your server sends it: https://avenuesofsouthhoover.com/

    What to do Make the home page send its text from the server, so it shows up with scripts turned off.

    For your web team: Render the page's content on the server or at build time, and use scripts to add to it. Fetch the page without a browser to check the text is in it.

    Your web team · a few days · Critical

    Understand JavaScript SEO basics, Google Search CentralReport an issue with this check

  • Your business is described in structured dataImportantTested by ClutchFail

    The page has no structured data with a type. Structured data spares an assistant from guessing what a page means. Google says it gives explicit clues about a page; Bing says it may support clearer grounding and promises nothing.

    • The page has no structured data with a type: https://avenuesofsouthhoover.com/

    What to do Mark the business up with the most specific schema.org type that fits it.

    For your web team: Add a JSON-LD script to the home page whose "@type" is the most specific schema.org type that fits the business. schema.org lists every type and its subtypes.

    Your web team · about a day · Important

    Intro to structured data, GoogleReport an issue with this check

  • A short guide to your site for AI assistantsImportantTested by Google LighthouseFail

    llms.txt does not follow recommendations llmstxt.org proposes the file so assistants find what they need and follow its links. Lighthouse audits it as an emerging convention, and the grade counts a standard that is likely to be adopted.

    • llms.txt does not follow recommendations: https://avenuesofsouthhoover.com/
    • llms.txt does not follow recommendations: https://avenuesofsouthhoover.com/

    What to do Publish /llms.txt with your business name as its title and links to your most important pages.

    For your web team: Serve a Markdown file at /llms.txt with a 200, and keep it out of the way of any rule that routes unknown paths to the home page or answers them with a firewall page. Start it with an H1 naming the site, then sections of Markdown links to key pages, as llmstxt.org describes.

    Your web team · about an hour · Important

    llms.txt audit, ChromeReport an issue with this check

  • Your AI tools are listed in an AI catalogImportantTested by Google LighthouseFail

    ARD manifest is invalid The Agentic Resource Discovery (ARD) draft is a format that helps assistants discover what a site offers, such as tools and agents. Lighthouse audits the catalog, and the grade counts a standard that is likely to be adopted.

    • ARD manifest is invalid: https://avenuesofsouthhoover.com/

    What to do Publish an ARD catalog once your site has an MCP server or agent to list.

    For your web team: Serve a JSON file at /.well-known/ard.json with an entries list that follows the ARD schema: each entry carries a urn:air: identifier, a displayName, a type and a url. An MCP server's entry has the type application/mcp-server-card+json and points at its server card, at /mcp/server-card. Name the catalog from every page with <link rel="ard" href="/.well-known/ard.json">. Lighthouse reads that path and warns about a catalog it finds only at the older /.well-known/ai-catalog.json.

    Your web team · about a day · Important

    Lighthouse agentic browsing scoring, ChromeReport an issue with this check

  • Your pages answer in Markdown when an agent asksImportantTested by CloudflareFail

    Site does not support Markdown for Agents. Cloudflare calls Markdown the common language of agents: its explicit structure gives better results and wastes fewer tokens, and an agent asks for it with an Accept header.

    • Site does not support Markdown for Agents: https://avenuesofsouthhoover.com/

    What to do Serve each page as Markdown to agents that ask for it.

    For your web team: Answer a request whose Accept header names text/markdown with the page's content as Markdown and Content-Type: text/markdown. Cloudflare can convert pages at its edge, or the server can render the Markdown itself.

    Your web team · about a day · Important

    Markdown for Agents, CloudflareReport an issue with this check

  • Your site says how AI may use its contentImportantTested by CloudflareFail

    No Content Signals found in robots.txt. Content Signals follow AI Preferences, a proposal at the IETF for a way for a publisher to say how automated systems may use its content.

    • No Content Signals found in robots.txt: https://avenuesofsouthhoover.com/

    What to do Decide whether your content may be used for search, AI answers and AI training, and ask the people who run your site to say so in robots.txt.

    For your web team: Add a Content-Signal line to robots.txt under the user agents it covers, such as Content-Signal: search=yes, ai-input=yes, ai-train=no.

    Your web team · about an hour · Important

    Content Signals, Content SignalsReport an issue with this check

  • Every page has its own summary for search resultsImportantTested by Google LighthouseFail

    Document does not have a meta description Google can show a page's meta description as its snippet and asks for a different one on every page. It is less likely to show a list of keywords, so a specific summary has the best chance of being used.

    • Document does not have a meta description: https://avenuesofsouthhoover.com/

    What to do Write a one or two sentence summary of every page, different on each.

    For your web team: Add <meta name="description" content="..."> to the head of every page. Write a sentence or two that are unique to that page.

    Your web team · about an hour · Important

    How to Write Meta Descriptions, GoogleReport an issue with this check

  • Lists and tables are built as lists and tablesImportantTested by Google LighthousePass

    All 2 audits in this goal pass. WCAG, the web accessibility standard most laws point to, requires the structure a page shows on screen to be in its markup as well, and the axe rules check lists and tables for it.

    Rule list: <ul> and <ol> must only directly contain <li>, <script> or <template> elements, Deque axeReport an issue with this check

  • Pages say which language they are inImportantTested by Google LighthousePass

    All 2 audits in this goal pass. WCAG requires the language of each page to be set in its code, so software reads it with the right rules and voice.

    Rule html-has-lang: <html> element must have a lang attribute, Deque axeReport an issue with this check

44

Act

Can they take the next step for a customer?

25% of your grade · 4 of 9 goals pass

  • Assistants can read your page's controlsMust haveCriticalTested by Google LighthouseFail

    Accessibility tree is not well-formed Agents review the accessibility tree to find what they can click or fill in, and missing labels can block them.

    While it fails, your letter stays at D or lower.

    • Documents must have <title> element to aid in navigation: <html lang="en">: https://avenuesofsouthhoover.com/

    What to do Run Google's PageSpeed Insights on the home page and fix the accessibility problems it lists, which are mostly buttons and fields with no label.

    For your web team: Give every button, link and field an accessible name, associate each field with a label, and remove invalid ARIA roles and attributes. PageSpeed lists the elements that fail.

    Your web team · about a day · Critical

    Accessibility for agents, ChromeReport an issue with this check

  • Visitors can move around the pageImportantTested by Google LighthouseFail

    Document does not have a main landmark. WCAG, the web accessibility standard most laws point to, requires every function of a page to work from a keyboard.

    • Fix all of the following: Document does not have a main landmark: <html lang="en">: https://avenuesofsouthhoover.com/

    What to do Make the page work from the keyboard alone.

    For your web team: Wrap the page's content in one main element, add a skip link to it, keep tabindex at 0 or less, and remove meta refresh redirects.

    Your web team · about a day · Important

    Accessibility for agents, ChromeReport an issue with this check

  • Your site offers tools to AI assistantsMust haveImportantTested by Google LighthouseTested by CloudflareFail

    Your home page offers no tools to AI assistants. Not measured: Could not check WebMCP: Execution context was destroyed, most likely because of a navigation. WebMCP lets an assistant book or reserve through a site's own code instead of guessing its way around the screen.

    While it fails, your letter stays at B or lower.

    • PageSpeed's "WebMCP tools registered" audit lists no tool: https://avenuesofsouthhoover.com/

    What to do Expose the main action on your site, such as booking or contacting you, as a WebMCP tool.

    For your web team: Call document.modelContext.registerTool({ name, description, inputSchema, execute }) as the home page loads, or add toolname and tooldescription attributes to the form. A name is 1 to 128 letters, digits, _, - or .

    Your web team · about a day · Important

    WebMCP for developers, ChromeReport an issue with this check

  • Agents can discover your MCP serverMust haveImportantTested by ClutchFail

    Lighthouse finds your ARD catalog invalid, so an agent cannot rely on it to discover an MCP server. ARD is how an agent finds what a site offers from its domain alone, and the MCP project accepted server cards so that a client can discover a server before it connects.

    While it fails, your letter stays at B or lower.

    • Lighthouse's ard-schema audit fails: https://avenuesofsouthhoover.com/.well-known/ard.json

    What to do Run an MCP server for your main actions and list it in the site's ARD catalog.

    For your web team: Serve the MCP server card at /mcp/server-card, as the server card extension places it, and list it in /.well-known/ard.json as an entry with a urn:air: identifier, a displayName, the type application/mcp-server-card+json and the card's URL.

    Your web team · a few days · Important

    SEP-2127: MCP Server Cards, Model Context ProtocolReport an issue with this check

  • Text is readableImportantTested by Google LighthousePartial

    [user-scalable="no"] is used in the <meta name="viewport"> element or the [maximum-scale] attribute is less than 5. WCAG requires text to contrast with its background by at least 4.5 to 1, and the axe rule color-contrast checks for it.

    • Fix any of the following: user-scalable=no on <meta> tag disables zooming on mobile devices: <meta name="viewport" content="width=device-width,initial-scale=1,user-scalable=no">: https://avenuesofsouthhoover.com/

    What to do Darken pale text and underline the links inside paragraphs.

    For your web team: Reach a contrast ratio of 4.5 to 1 for normal text, mark links in text with more than color, and leave user-scalable and maximum-scale out of the viewport tag.

    Your web team · about a day · Important

    Rule color-contrast: Elements must meet minimum color contrast ratio thresholds, Deque axeReport an issue with this check

  • Extra labels on controls are used correctlyImportantTested by Google LighthousePass

    All 5 audits in this goal pass. Wrong ARIA tells an assistant a control is something it is not. WAI-ARIA defines the roles and attributes that are valid, and the axe rules check them.

    Rule aria-roles: ARIA roles used must conform to valid values, Deque axeReport an issue with this check

  • Buttons and links are big enough to tapImportantTested by Google LighthousePass

    All 2 audits in this goal pass. web.dev recommends tap targets of around 48 pixels, and WCAG sets a minimum of 24 by 24 pixels.

    Accessible tap targets, GoogleReport an issue with this check

  • Videos and embedded frames have textImportantTested by Google LighthousePass

    <frame> or <iframe> elements have a title WCAG, the web accessibility standard most laws point to, requires captions for the audio in prerecorded video.

    Accessibility for agents, ChromeReport an issue with this check

  • Your site tells agents what else it offersImportantTested by CloudflareNot yet

    No Link headers found on target page, API Catalog returned HTML instead of JSON, Agent Skills index returned HTML instead of JSON, and A2A Agent Card returned HTML instead of JSON. Each is a published way for a site to tell an agent what it can call or learn there. Few sites that sell to the public need them yet, so they earn points and cost none.

    • No Link headers found on target page: https://avenuesofsouthhoover.com/
    • API Catalog returned HTML instead of JSON: https://avenuesofsouthhoover.com/
    • Agent Skills index returned HTML instead of JSON: https://avenuesofsouthhoover.com/

    What to do Ask whoever runs your site which of these your business has a use for, such as an API catalog if you publish an API.

    For your web team: Publish the files that fit: an API catalog at /.well-known/api-catalog, an Agent Skills index, an A2A agent card at /.well-known/agent-card.json, and Link headers on the home page that point to them.

    Your web team · about a day · Important

    RFC 8288, Web Linking, IETFReport an issue with this check

75

Performance

Is it fast for the person who clicks through?

Speed comes from real visitors of your page over the last 28 days when Google has their numbers, and from a test on a phone when it does not.

25% of your grade · 5 of 10 goals pass

  • The page does not jump around while it loadsImportantTested by Google LighthouseFail

    Cumulative Layout Shift (0.297) CLS measures how much the page jumps while it loads, which makes people tap the wrong thing. web.dev names it one of three Core Web Vitals, and 0.1 or less is good.

    • Cumulative Layout Shift (0.297): https://avenuesofsouthhoover.com/
    • Layout shift culprits: https://avenuesofsouthhoover.com/
    • Avoid large layout shifts (2 layout shifts found): <div class="footer_parkwebFooter__43zWx">: https://avenuesofsouthhoover.com/

    What to do Stop content from moving as images and fonts load.

    For your web team: Set width and height on images and embeds, reserve space for late content, and use font-display with a matching fallback font.

    Your web team · about a day · Important

    Web Vitals, GoogleReport an issue with this check

  • The page responds as soon as it appearsImportantTested by Google LighthousePartial

    Total Blocking Time (250 ms) INP is the wait between a tap and the page responding, and under 200 milliseconds is good. Total Blocking Time, the lab test's stand-in, has the same bar.

    • Total Blocking Time (250 ms): https://avenuesofsouthhoover.com/
    • Forced reflow: https://avenuesofsouthhoover.com/
    • Avoid long main-thread tasks (4 long tasks found), from GoDaddy: https://img1.wsimg.com/parking-lander/static/js/main.1cc9fa89.js

    What to do Remove scripts it does not need, which keep the page busy.

    For your web team: Split long tasks and defer scripts that are not needed to start. PageSpeed lists the costliest scripts.

    Your web team · a week or more · Important

    Total Blocking Time (TBT), GoogleReport an issue with this check

  • The page does not weigh muchImportantTested by Google LighthousePartial

    Reduce unused JavaScript (Est savings of 111 KiB) and Legacy JavaScript (Est savings of 13 KiB). Large network payloads are highly correlated with long load times and cost visitors money on mobile data.

    • Reduce unused JavaScript (Est savings of 111 KiB), from GoDaddy: https://img1.wsimg.com/parking-lander/static/js/main.1cc9fa89.js
    • Legacy JavaScript (Est savings of 13 KiB), from GoDaddy: https://img1.wsimg.com/parking-lander/static/js/main.1cc9fa89.js

    What to do Remove code and files the page does not use.

    For your web team: Minify scripts and styles, remove unused and duplicate code, and stop shipping legacy polyfills. PageSpeed lists the files by size.

    Your web team · a few days · Important

    Avoid enormous network payloads, ChromeReport an issue with this check

  • Repeat visitors get a faster pageImportantTested by Google LighthousePartial

    Use efficient cache lifetimes (Est savings of 99 KiB) Fetching resources over the network is both slow and expensive.

    • Use efficient cache lifetimes (Est savings of 99 KiB), from Trust Pilot: https://widget.trustpilot.com/fonts/ubuntu/4iCs6KVjbNBYlgoKfw72.woff2
    • Use efficient cache lifetimes (Est savings of 99 KiB), from Trust Pilot: https://widget.trustpilot.com/fonts/ubuntu/4iCv6KVjbNBYlgoCjC3jsGyN.woff2
    • Use efficient cache lifetimes (Est savings of 99 KiB), from GoDaddy: https://img1.wsimg.com/signals/js/clients/scc-c2/scc-c2.min.js

    What to do Let browsers keep images, scripts and styles between visits.

    For your web team: Send Cache-Control with a long max-age for fingerprinted static files, and revalidate the rest with ETag.

    Your web team · about an hour · Important

    Prevent unnecessary network requests with the HTTP Cache, GoogleReport an issue with this check

  • The page loads without errorsImportantTested by Google LighthousePartial

    Browser errors were logged to the console. An error in the console means a problem on your page that you need to resolve.

    • No element supplied to "Trustpilot.loadFromElement": https://avenuesofsouthhoover.com/

    What to do Open the page in a browser's developer tools and clear the errors it lists.

    For your web team: Fix each console error and browser issue, replace deprecated APIs, publish source maps for your scripts, and start the document with a doctype and a charset.

    Your web team · a few days · Important

    Browser errors were logged to the console, ChromeReport an issue with this check

  • The main content shows up quicklyImportantTested by Google LighthousePass

    All 3 audits in this goal pass. Lab test on a phone: too few real visitors to measure it. LCP is how long the main picture or text takes to appear, and visitors leave slow pages. web.dev says 2.5 seconds or less is good, one of Google's three Core Web Vitals.

    Web Vitals, GoogleReport an issue with this check

  • Visitors are on a secure connectionImportantTested by Google LighthousePass

    Uses HTTPS A secure connection helps prevent intruders tampering with traffic between your site and its visitors.

    Why HTTPS matters, GoogleReport an issue with this check

  • Served fastImportantTested by Google LighthousePass

    All 3 audits in this goal pass. A CDN (a network of servers near your visitors) reduces the network latency that slows a server's first response.

    Reduce server response times (TTFB), ChromeReport an issue with this check

  • Images are the right sizeImportantTested by Google LighthousePass

    All 4 audits in this goal pass. Serving images larger than the version rendered on screen results in wasted bytes and slows page load.

    Properly size images, ChromeReport an issue with this check

  • Visitors are not interrupted on arrivalImportantTested by Google LighthousePass

    All 3 audits in this goal pass. Users are mistrustful of or confused by pages that ask for their location as soon as they load.

    Requests the geolocation permission on page load, ChromeReport an issue with this check

See if AI chooses you

An AI agent searched “apartments for rent hoover al”, like 880 people a month.

This scan graded the site on its own. Grade it again and an AI agent shops for it too, with a search your site already ranks for, and shows where it got through and where it stopped.

See avenuesofsouthhoover.com rebuilt, without these issues

8th of 8 organization sites graded so far. See the board.

How we grade