C

Hard for AI agents to use

Capped at C: your key facts are not in the page itself. Your checks earned 84.

See the goal behind it

Speed: Pass (real visitors, last 28 days)Core Web Vitals, Google

Start here.

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

    Your key facts are in the page itself

    The first page your server sends is a loading page, “Vercel Security Checkpoint We're verifying your browser Webs”, and the page it moves on to holds the content. An assistant that runs no script reads only that page.

    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

    Your site offers tools to AI assistants

    Your home page offers no tools to AI assistants.

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

    Your web team · about a daySee the check

  3. Fail·Performance

    Repeat visitors get a faster page

    Use efficient cache lifetimes (Est savings of 213 KiB)

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

    Your web team · about an hourSee the check

Fix it,

or see it rebuilt

These 12 fixes add up to about four 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/essexapartmenthomes-com. Tell me how to fix each issue and the level of effort each fix takes.

  • See your site rebuilt

    Clutch rebuilds essexapartmenthomes.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
94

Find

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

25% of your grade · 8 of 9 goals pass

  • Pages that do not exist say soImportantFail

    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://www.essexapartmenthomes.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

  • Search engines and AI assistants are allowed to read your siteCriticalPass

    Every AI search crawler and agent we grade is allowed. Training crawlers are allowed. A crawler is a robot that reads sites for a search engine or assistant, and one that is blocked cannot recommend you. Bing lists blocking Bingbot among the things to avoid, because content it cannot crawl may not be indexed or used in Copilot's answers.

    Overview of OpenAI crawlers, OpenAIReport an issue with this check

  • Search engines may list each pageCriticalPass

    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

  • Search results can show your pages' wordsCriticalPass

    All 2 audits in this goal pass. A page whose text is kept out of results leaves a search engine or assistant nothing to quote. Google's AI features follow nosnippet and max-snippet, and Bing keeps content marked noarchive out of Copilot and limits nocache pages to their address, title and snippet.

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

  • Your pages are listed in a sitemapImportantPass

    https://www.essexapartmenthomes.com/sitemap.xml is a sitemap. Google and Bing use an XML sitemap named in robots.txt 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.

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

  • Every page has its own titleImportantPass

    Document has 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.

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

  • Each page has one clear addressImportantPass

    All 2 audits in this goal pass. 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

  • Pages open without detoursImportantPass

    All 2 audits in this goal pass. Each extra redirect is another trip across the network that can delay the page by hundreds of milliseconds.

    Avoid multiple page redirects, ChromeReport an issue with this check

81

Understand

Can they tell who you are and what you offer?

25% of your grade · 6 of 7 goals pass

  • Your key facts are in the page itselfMust haveCriticalFail

    The first page your server sends is a loading page, “Vercel Security Checkpoint We're verifying your browser Webs”, and the page it moves on to holds the content. An assistant that runs no script reads only that page. 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 stays at C or lower.

    • Only on the page the loading page moves on to: https://www.essexapartmenthomes.com/
    • Only on the page the loading page moves on to: https://www.essexapartmenthomes.com/
    • Only on the page the loading page moves on to: https://www.essexapartmenthomes.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 dataImportantPass

    The home page's structured data names Organization, Person, PostalAddress, ContactPoint, RealEstateAgent, and OpeningHoursSpecification. 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.

    Intro to structured data, GoogleReport an issue with this check

  • Headings give each page an outlineImportantPass

    Heading elements appear in a sequentially-descending order Headings give a page a clear structure.

    Optimizing your website for generative AI features on Google Search, GoogleReport an issue with this check

  • Images describe themselvesImportantPass

    Image elements have [alt] attributes Alt text is a short written description of an image. Google calls it the most important attribute for adding metadata about an image, and it also uses computer vision on the picture.

    Image SEO Best Practices, GoogleReport an issue with this check

  • Lists and tables are built as lists and tablesImportantPass

    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

  • Every page has its own summary for search resultsImportantPass

    Document has 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.

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

  • Pages say which language they are inImportantPass

    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

  • Your AI tools are listed in an AI catalogImportantNot yet

    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; the standards are still emerging.

    • ARD manifest is invalid: https://essexapartmenthomes.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/ai-catalog.json with a specVersion and an entries list that follow the ARD schema. That is the path Lighthouse reads today; the ARD spec is moving to /.well-known/ard.json.

    Your web team · about a day · Important

    Agentic Resource Discovery specification, agenticresourcediscovery.orgReport an issue with this check

  • A short guide to your site for AI assistantsImportantPass

    llms.txt follows recommendations llmstxt.org proposes the file so assistants find what they need and follow its links. Lighthouse calls it an emerging convention and Google Search does not use it, so it is a bonus.

    Optimizing your website for generative AI features on Google Search, GoogleReport an issue with this check

84

Act

Can they take the next step for a customer?

25% of your grade · 6 of 9 goals pass

  • Your site offers tools to AI assistantsMust haveImportantFail

    Your home page offers no tools to AI assistants. 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://essexapartmenthomes.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

  • Text is readableImportantPartial

    Background and foreground colors do not have a sufficient contrast ratio. 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: Element has insufficient color contrast of 4.28 (foreground color: #c75109, background color: #f8f8f8, font size: 12.0pt (16px), font weight: normal). Expected contrast ratio of 4.5:1: <span>: https://essexapartmenthomes.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

  • Buttons and links are big enough to tapImportantPartial

    Touch targets do not have sufficient size or spacing. web.dev recommends tap targets of around 48 pixels, and WCAG sets a minimum of 24 by 24 pixels.

    • Fix any of the following: Target has insufficient size (15px by 15px, should be at least 24px by 24px) Target has insufficient space to its closest neighbors. Safe clickable space has a diameter of 6px instead of at least 24px.: <button type="button" class="embla__dot embla__dot--active" aria-label="Go to slide 1" style="color: white;">: https://essexapartmenthomes.com/

    What to do Make small buttons and tightly packed links bigger on phones.

    For your web team: Make each target at least 24 by 24 CSS pixels, or leave enough space around smaller ones, and aim for around 48 pixels. Set width=device-width in the viewport tag so taps answer at once.

    Your web team · about an hour · Important

    Accessible tap targets, GoogleReport an issue with this check

  • Forms are labelledCriticalPass

    All 2 audits in this goal pass. WCAG requires every form field to have a label or instructions, and the axe rule label checks for it.

    Rule label: Form elements must have labels, Deque axeReport an issue with this check

  • Assistants can read your page's controlsCriticalPass

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

    Accessibility for agents, ChromeReport an issue with this check

  • Custom controls announce what they areImportantPass

    Elements with role="dialog" or role="alertdialog" have accessible names. WCAG, the web accessibility standard most laws point to, requires every control to expose its name and role to assistive technology and software.

    Accessibility for agents, ChromeReport an issue with this check

  • Extra labels on controls are used correctlyImportantPass

    All 11 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

  • Visitors can move around the pageImportantPass

    All 2 audits in this goal pass. WCAG, the web accessibility standard most laws point to, requires every function of a page to work from a keyboard.

    Accessibility for agents, ChromeReport an issue with this check

76

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 · 4 of 10 goals pass

  • Repeat visitors get a faster pageImportantFail

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

    • Use efficient cache lifetimes (Est savings of 213 KiB), from Optanon: https://cdn.cookielaw.org/scripttemplates/202605.1.0/otBannerSdk.js
    • Use efficient cache lifetimes (Est savings of 213 KiB), from Hubspot: https://js.hs-analytics.net/analytics/1794011400000/7742401.js
    • Use efficient cache lifetimes (Est savings of 213 KiB), from openai.com: https://bzrcdn.openai.com/sdk/oaiq.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 main content shows up quicklyImportantPartial

    Speed Index (9.3 s). Measured from real visitors of this page, last 28 days; the rest is a lab test on a phone. 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.

    • Speed Index (9.3 s): https://essexapartmenthomes.com/
    • Render-blocking requests (Est savings of 1,250 ms): https://www.essexapartmenthomes.com/_next/static/immutable/chunks/39cfwn431j3p7.css
    • Network dependency tree: https://essexapartmenthomes.com/

    What to do Make the first screen load faster on phones, starting with its biggest image.

    For your web team: Serve the largest element early: preload it, avoid render-blocking scripts and styles, and cut server response time. PageSpeed lists what holds it back.

    Your web team · a week or more · Important

    Web Vitals, GoogleReport an issue with this check

  • Served fastImportantPartial

    Document request latency (Est savings of 50 ms). A CDN (a network of servers near your visitors) reduces the network latency that slows a server's first response.

    • Document request latency (Est savings of 50 ms): https://essexapartmenthomes.com/
    • Network Round Trip Times (30 ms): https://essexapartmenthomes.com/
    • Server Backend Latencies (20 ms): https://essexapartmenthomes.com/

    What to do Speed up its first response, for example with a CDN in front of it.

    For your web team: Serve the page through a CDN or edge network over HTTP/2 or HTTP/3, compress text with gzip or Brotli, cache the document at the edge, and avoid redirects.

    Your web team · about a day · Important

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

  • Images are the right sizeImportantPartial

    Improve image delivery (Est savings of 231 KiB). Serving images larger than the version rendered on screen results in wasted bytes and slows page load.

    • Improve image delivery (Est savings of 231 KiB): <img alt="Skylux on Wilshire" fetchpriority="auto" loading="lazy" decoding="async" data-nimg="fill" class="vCxswG_community-card__image" sizes="(min-width: 1400px) 378px, (min-width: 1024px) 328px, 320px" srcset="/_next/image?url=%2Fapi%2Fimages%2Fphotoshelter%2FI0000cHk..491Eos%2Fsec%3…" src="https://www.essexapartmenthomes.com/_next/image?url=%2Fapi%2Fimages%2Fphot…" style="position: absolute; height: 100%; width: 100%; inset: 0px;">: https://www.essexapartmenthomes.com/_next/image?url=%2Fapi%2Fimages%2Fphotoshelter%2FI0000cHk..491Eos%2Fsec%3Dwdfsdfoeflwefms1440ed20261110jGQPXiai.s5XzEk%2Ffill%3D1680x945%2FSkylux-on-Wilshire-Website-Gallery-03.jpg%3Fv%3Df09cba603398bafbb54a0d20963e2baae4ac9f1e&w=768&q=55&dpl=dpl_Gi9tqHE3YC5V3WHhv3U1kLLC73eD

    What to do Resize and compress your images before they go on the page.

    For your web team: Serve several sizes with srcset and sizes, use a modern format such as WebP or AVIF, and keep each image's width and height in the proportion it is shown.

    Your web team · about a day · Important

    Properly size images, ChromeReport an issue with this check

  • The page does not weigh muchImportantPartial

    Avoid enormous network payloads (Total size was 21,958 KiB), Reduce unused JavaScript (Est savings of 1,095 KiB), Reduce unused CSS (Est savings of 86 KiB), and Legacy JavaScript (Est savings of 30 KiB). Large network payloads are highly correlated with long load times and cost visitors money on mobile data.

    • Avoid enormous network payloads (Total size was 21,958 KiB), from Vimeo: https://vod-adaptive-ak.vimeocdn.com/exp=1794015215~acl=%2Fa6ec7c76-d953-44be-9091-3d15d34b5ca8%2Fpsid%3Da7e52195697ce76e9574aac87fb374ce52e2c1761794011615%2F%2A~hmac=b6c5936ee61ce42cff7b265ffc90d913bf4db02ef18c9955e2f85935540d3dc4/a6ec7c76-d953-44be-9091-3d15d34b5ca8/psid=a7e52195697ce76e9574aac87fb374ce52e2c1761794011615/v2/range/prot/cmFuZ2U9NzkzNTExMS0xMjQwNTI5Nw/avf/c5087ee7-c158-4c5d-a8e2-b4807295e05a.mp4?pathsig=8c953e4f~U-MAzOAk_0a8yowAmP5V1yrvdoB7QZ5Yo0s1hihzq_4&r=dXMtd2VzdDE%3D&range=7935111-12405297
    • Reduce unused JavaScript (Est savings of 1,095 KiB), from Accessibe Accessibility Overlay: https://acsbapp.com/apps/app/dist/js/app.js
    • Reduce unused CSS (Est savings of 86 KiB), from Vimeo: https://f.vimeocdn.com/p/4.46.143/css/player.css

    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

  • The page loads without errorsImportantPartial

    Browser errors were logged to the console, Issues were logged in the Issues panel in Chrome Devtools, Uses deprecated APIs (1 warning found), and Uses third-party cookies (2 cookies found). An error in the console means a problem on your page that you need to resolve.

    • Access to fetch at 'https://edge-platform.sitecorecloud.io/v1/events/v1.2/browser/create.json?sitecoreContextId=13sy7JFUvBcl6Kj9eF2Zeu&client_key=' from origin 'https://www.essexapartmenthomes.com' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.: https://essexapartmenthomes.com/
    • Issues were logged in the Issues panel in Chrome Devtools: https://essexapartmenthomes.com/
    • Uses deprecated APIs (1 warning found): https://essexapartmenthomes.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 page responds as soon as it appearsImportantPass

    Interaction to Next Paint is 138 ms for real visitors of this page, last 28 days, which Google rates good. 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 (TBT), GoogleReport an issue with this check

  • The page does not jump around while it loadsImportantPass

    Cumulative Layout Shift is 0.00 for real visitors of this page, last 28 days, which Google rates good. 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.

    Web Vitals, GoogleReport an issue with this check

  • Visitors are on a secure connectionImportantPass

    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

  • Visitors are not interrupted on arrivalImportantPass

    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 southern california”, like 320 people a month.

The same rules every run: four searches, up to three sites, six pages, made-up details, and it never sends anything.

  • FoundOpened directly

    Search didn't list your site: it was not among the results of the agent's 1 search. The agent then opened your site directly, so the gates after this one are still judged.

  • UnderstoodReached

    The agent's answer cites a fact from your site's own pages.

  • ActedNot reached

    Your site registers no tool for AI assistants, so an assistant can only send the shopper to a form, a phone number or a contact page.

    Behind it:Your site offers tools to AI assistants

  1. Finding the search your site already ranks for on Google.

  2. Reading your site to plan the first search.2s

  3. Reviewing the search results.4s

  4. Deciding the next step.14s

  5. Judging how far it got.

What it told the shopper3 of 13 sources are your site

I looked at the Essex Apartment Homes website, https://essexapartmenthomes.com/, which is the only business I'm recommending. No search turned up this site, so I'm giving it to you as the address you provided.

Why it fits: The site says it covers California and Washington rental apartment homes. It is run by Essex Property Trust, a company with California offices. The site lists CA Real Estate Broker's #00570617 and Essex Management Corporation, CA DRE #02077186. Because the site covers Southern California as part of its West Coast portfolio, it's a reasonable place to start your search, but I did not confirm which of its communities are in Southern California.

What the site says:

  • It offers flexible leases: "we provide flexible lease terms to fit to your needs. You can move-in when you please and stay as long as you like."
  • Some homes have in-home connectivity to Ultrafast Internet, allowing you to stream at speeds of up to 2 Gig, and there is a page on Smart Home Technology.
  • It has a Penthouse Apartments page and an FAQs page.

How to take the next step: Click "Apartments" in the site menu (https://www.essexapartmenthomes.com/apartments), or use its search link (https://www.essexapartmenthomes.com/apartments/search-results?query=&type=metroareas) to see listings. You can also reach the leasing team through the contact link. The site says "Please contact the leasing team for details about a specific apartment."

What the homepage did not say:

  • Rents, deposits, fees, or specific Southern California locations. I didn't open the listings pages, so I can't tell you what they cost or where they are.
  • Pet, parking, or utility policies.
  • Available units or move-in dates.

The homepage also notes that floor plans, photographs, videos, virtual tours, and renderings are for illustrative purposes only, and that actual layouts, dimensions, finishes, features, and views may vary by apartment. Confirm the details of any unit with the leasing team before you commit.

These sites are competing with you

SiteLetterFindUnderstandActPerformance
essexapartmenthomes.comBuilt in ClutchAFindPassesUnderstandPassesActPassesPerformancePassesClutch rebuilds it from its address, without these issues. Free to preview.Get this site
essexapartmenthomes.comCFind94Understand81Act84Performance76
sheaapartments.comOpened by the AI agent
greystar.comOpened by the AI agentCFind78Understand69Act76Performance84
Passes 3 goals you don't
  • Pages that do not exist say so
  • Your key facts are in the page itself
  • Served fast
westsiderentals.comOpened by the AI agent

See essexapartmenthomes.com rebuilt, without these issues

5th of 7 local business sites graded so far. See the board.

How we grade