<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <link rel="icon" type="image/svg+xml" href="/favicon.svg" />
    <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
    <!-- White, the header's colour, on both apps (services/app/layout.tsx). -->
    <meta name="theme-color" content="#FFFFFF" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />

    <!--
      BOOT WATCHDOG. Declared before the bundle so it can hear the bundle fail.

      `#app-splash` in the body is a fixed, full-screen overlay, and the ONLY
      thing that ever takes it down is React's first commit clearing `#root`.
      So a boot that never reaches a commit leaves a branded navy screen up
      forever, with no error, no console message and no way out but a manual
      reload. Three ways to get there, all seen in the wild:

        - the module script's fetch is dropped while the tab is frozen or
          discarded in the background, or the network changes under it;
        - a stale shell asks for an asset hash a deploy has already removed;
        - an exception during the first render, which commits nothing.

      That is the "I come back to the tab and it is stuck" report. Nothing
      here diagnoses WHICH one — the recovery is the same reload the visitor
      would have done, taken automatically and once.

      Once per session, then the message: a genuinely broken deploy must not
      become a reload loop, and a stuck screen must not stay silent. A hidden
      tab is left alone, because a hidden tab may be stuck precisely BECAUSE
      it is hidden and reloading spends the one retry on nobody.

      Kept OUTSIDE the SSR:HEAD markers on purpose — renderResult replaces
      everything between them, and /results/* and /market/* are the two most
      shared routes in the product.
    -->
    <script>
      window.__fbBootWatchdog = function (win, doc) {
        var KEY = "fb:boot-retry";
        // Long enough that an ordinary slow connection is still downloading,
        // not stuck. The bundle is ~1.5MB.
        var SLOW_MS = 12000;
        var GIVE_UP_MS = 25000;
        var start = win.Date.now();
        var failed = false;
        var explained = false;

        function splash() { return doc.getElementById("app-splash"); }

        // A storage failure (private mode, blocked cookies) reads as "already
        // retried", so we explain rather than risk an uncounted reload loop.
        function retried() {
          try { return win.sessionStorage.getItem(KEY) === "1"; } catch (e) { return true; }
        }
        function markRetried() {
          try { win.sessionStorage.setItem(KEY, "1"); return true; } catch (e) { return false; }
        }
        function clearRetried() {
          try { win.sessionStorage.removeItem(KEY); } catch (e) {}
        }

        function recover() {
          var el = splash();
          if (!el) { clearRetried(); return "booted"; }
          if (doc.visibilityState === "hidden") return "wait";
          if (!failed && win.Date.now() - start < SLOW_MS) return "wait";
          if (retried() || !markRetried()) { explain(el); return "explain"; }
          win.location.reload();
          return "reload";
        }

        function explain(el) {
          if (explained || !el) return;
          explained = true;
          el.removeAttribute("aria-hidden");
          el.style.flexDirection = "column";
          el.style.gap = "1.25rem";
          el.style.padding = "1.5rem";
          el.style.textAlign = "center";
          var msg = doc.createElement("p");
          msg.style.cssText =
            "margin:0;max-width:26rem;font-weight:400;font-size:1rem;line-height:1.5;color:#cddbe8";
          msg.textContent = "This page did not finish loading. Reloading usually fixes it.";
          var btn = doc.createElement("button");
          btn.type = "button";
          btn.textContent = "Reload";
          btn.style.cssText =
            "font:inherit;font-size:1rem;padding:0.6rem 1.5rem;border:0;border-radius:0.5rem;" +
            "background:#8BC8B6;color:#0A2540;font-weight:700;cursor:pointer";
          btn.onclick = function () { clearRetried(); win.location.reload(); };
          el.appendChild(msg);
          el.appendChild(btn);
        }

        // Resource load errors do not bubble, so this listens in the capture
        // phase. `target === win` is a real exception rather than a failed
        // fetch, and React may still be mid-render, so it is left alone.
        //
        // OUR MODULE SCRIPT AND NOTHING ELSE. The splash comes down on React's
        // first commit, and the only resource that commit needs is the bundle:
        // a stylesheet failing costs fonts or layout, not a boot, and this
        // page links Google Fonts, which is exactly the kind of third-party
        // request that fails on its own. Reloading over one would spend the
        // session's retry and then show a failure message on a page that was
        // about to render. Same-origin for the same reason — the chat widget
        // and reCAPTCHA load after React is already running, but a script that
        // is not ours is never what the splash is waiting on.
        win.addEventListener("error", function (e) {
          var t = e && e.target;
          if (!t || t === win || t.tagName !== "SCRIPT") return;
          if (String(t.src || "").indexOf(win.location.origin + "/") !== 0) return;
          failed = true;
          recover();
        }, true);

        // The reported case: they come back to a tab that never booted.
        doc.addEventListener("visibilitychange", function () {
          if (doc.visibilityState === "visible") recover();
        });

        // Foreground the whole time and still nothing: no auto-reload, because
        // a slow download looks identical from here. Stop hiding it, and let
        // them decide. If the bundle does land, React clears this with it.
        win.setTimeout(function () { explain(splash()); }, GIVE_UP_MS);

        // main.tsx calls this once React has rendered, so a recovered tab does
        // not spend the rest of its session one stall away from the message.
        win.__fbBooted = function () { if (!splash()) clearRetried(); };

        return { recover: recover };
      };
      window.__fbBootWatchdog(window, document);
    </script>

    <!-- Fonts. Self-hosted (brand/fonts.css, imported by index.css), so the
         faces arrive with the stylesheet; these preloads only start the two
         files a page paints with before the CSS asks. ABOVE the SSR head
         markers, never between them: the prerender and renderResult REPLACE
         that block, and a font link inside it never reached a served page
         (found 2026-09-29; src/lib/fonts-survive-prerender.test.ts). -->
    <link rel="preload" href="/fonts/source-sans-3-latin-wght-normal.woff2" as="font" type="font/woff2" crossorigin />
    <link rel="preload" href="/fonts/source-serif-4-latin-opsz-normal.woff2" as="font" type="font/woff2" crossorigin />

    <!-- renderResult Cloud Function replaces everything between SSR:HEAD_START and SSR:HEAD_END for /results/* routes. Do not remove the markers. -->
    <!-- SSR:HEAD_START -->
    <title data-prerendered-head="true">FindBusiness · See how AI reads your business, then fix it</title>
    <meta data-prerendered-head="true" name="description" content="Free A–F AI Readiness grade, who AI names in your market, and how to fix it: the AI Visibility Plan, or a website, AI agent or custom software we build." />
    <link data-prerendered-head="true" rel="canonical" href="https://findbusiness.ai/" />
    <meta data-prerendered-head="true" property="og:type" content="website" />
    <meta data-prerendered-head="true" property="og:title" content="FindBusiness · See how AI reads your business, then fix it" />
    <meta data-prerendered-head="true" property="og:description" content="Free AI Readiness grade, who AI names in your market, and how to fix it: a plan, or a website, AI agent or software we build." />
    <meta data-prerendered-head="true" property="og:url" content="https://findbusiness.ai/" />
    <meta data-prerendered-head="true" property="og:site_name" content="FindBusiness" />
    <meta data-prerendered-head="true" property="og:image" content="https://findbusiness.ai/preview.png" />
    <meta data-prerendered-head="true" property="og:image:width" content="1200" />
    <meta data-prerendered-head="true" property="og:image:height" content="630" />
    <meta data-prerendered-head="true" property="og:image:alt" content="FindBusiness. Websites, AI agents and custom software. See what AI can find out about your local business. Let us fix it. Free A–F AI Readiness grade, AI Visibility Plan · $25, Websites from $500." />
    <meta data-prerendered-head="true" name="twitter:card" content="summary_large_image" />
    <meta data-prerendered-head="true" name="twitter:title" content="FindBusiness · See how AI reads your business, then fix it" />
    <meta data-prerendered-head="true" name="twitter:description" content="Free AI Readiness grade, who AI names in your market, and how to fix it: a plan, or a website, AI agent or software we build." />
    <meta data-prerendered-head="true" name="twitter:image" content="https://findbusiness.ai/preview.png" />
    <meta data-prerendered-head="true" name="twitter:image:alt" content="FindBusiness. Websites, AI agents and custom software. See what AI can find out about your local business. Let us fix it. Free A–F AI Readiness grade, AI Visibility Plan · $25, Websites from $500." />

    <script type="application/ld+json" data-home-jsonld="true">
    {
      "@context": "https://schema.org",
      "@type": "Organization",
      "@id": "https://findbusiness.ai/#brand",
      "name": "FindBusiness",
      "url": "https://findbusiness.ai",
      "logo": "https://findbusiness.ai/apple-touch-icon.png",
      "description": "FindBusiness shows a local business how AI assistants see it, and builds the fix. The free AI Readiness Assessment grades any website A-F on how well AI can crawl, understand, and trust it. The Market AI Assessment asks AI who to call across a trade's services in one town and reports who it consistently names. The AI Visibility Plan says what to change, in order. At findbusiness.ai/services/ FindBusiness builds AI-ready websites, AI agents for websites, and custom software.",
      "email": "admin@dependableaisolutions.com",
      "parentOrganization": {
        "@type": [
          "ProfessionalService",
          "Organization"
        ],
        "@id": "https://dependableaisolutions.com/#business",
        "name": "Dependable AI Solutions",
        "legalName": "Dependable AI Solutions LLC",
        "url": "https://dependableaisolutions.com",
        "email": "admin@dependableaisolutions.com",
        "telephone": "+1-808-497-8935",
        "address": {
          "@type": "PostalAddress",
          "addressLocality": "Corona",
          "addressRegion": "CA",
          "addressCountry": "US"
        },
        "sameAs": [
          "https://www.linkedin.com/company/dependable-ai-solutions/",
          "https://github.com/dependableAIsolutions",
          "https://www.google.com/maps/place/?q=place_id:ChIJf_9X4YZyrgURKeKBtZo56Po"
        ],
        "brand": {
          "@id": "https://findbusiness.ai/#brand"
        }
      },
      "contactPoint": {
        "@type": "ContactPoint",
        "email": "admin@dependableaisolutions.com",
        "contactType": "customer support"
      },
      "makesOffer": [
        {
          "@type": "Offer",
          "name": "Market AI Assessment",
          "url": "https://findbusiness.ai/products/market",
          "price": "5",
          "priceCurrency": "USD",
          "availability": "https://schema.org/InStock",
          "itemOffered": {
            "@type": "Service",
            "name": "Market AI Assessment",
            "description": "Asks AI who to call across a trade's services in one town, four times each, and reports who it consistently names. No business is anchored to the question, so one report describes the whole market: a ranked roster, per-business service breakdowns, and the services where AI names nobody dependably.",
            "provider": {
              "@id": "https://dependableaisolutions.com/#business"
            },
            "brand": {
              "@id": "https://findbusiness.ai/#brand"
            },
            "serviceType": "AI Visibility Research",
            "areaServed": "Worldwide"
          }
        },
        {
          "@type": "Offer",
          "name": "AI Visibility Plan",
          "url": "https://findbusiness.ai/plan",
          "price": "25",
          "priceCurrency": "USD",
          "availability": "https://schema.org/InStock",
          "itemOffered": {
            "@type": "Service",
            "name": "AI Visibility Plan",
            "description": "One website and one market, in five parts: the A-F readiness grade with its fixes in order, a fresh Market AI Assessment for the trade and town, a read of the websites AI keeps naming instead, the exact edit each page and profile needs, and those edits sequenced over 90 days. A dashboard, printable as a PDF. Includes the market run.",
            "provider": {
              "@id": "https://dependableaisolutions.com/#business"
            },
            "brand": {
              "@id": "https://findbusiness.ai/#brand"
            },
            "serviceType": "AI Visibility Research",
            "areaServed": "Worldwide"
          }
        },
        {
          "@type": "Offer",
          "name": "AI Readiness Assessment",
          "url": "https://findbusiness.ai/#audit",
          "price": "0",
          "priceCurrency": "USD",
          "availability": "https://schema.org/InStock",
          "itemOffered": {
            "@type": "Service",
            "name": "AI Readiness Assessment",
            "description": "Free automated assessment of any business website. 17 checks across Discoverability, Clarity, and Trust return an A-F AI Readiness grade plus a prioritized action plan.",
            "provider": {
              "@id": "https://dependableaisolutions.com/#business"
            },
            "brand": {
              "@id": "https://findbusiness.ai/#brand"
            },
            "serviceType": "AI Optimization",
            "areaServed": "Worldwide"
          }
        }
      ],
      "hasOfferCatalog": {
        "@type": "OfferCatalog",
        "name": "Market AI Assessment packs",
        "url": "https://findbusiness.ai/pricing",
        "itemListElement": [
          { "@type": "Offer", "name": "Market AI Assessment", "price": "5", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "value": 1, "unitText": "market" } },
          { "@type": "Offer", "name": "5-Market Pack", "price": "22", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "value": 5, "unitText": "market" } },
          { "@type": "Offer", "name": "10-Market Pack", "price": "40", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "value": 10, "unitText": "market" } },
          { "@type": "Offer", "name": "20-Market Pack", "price": "75", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "value": 20, "unitText": "market" } },
          { "@type": "Offer", "name": "60-Market Pack", "price": "210", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "value": 60, "unitText": "market" } }
        ]
      }
    }
    </script>
    <script type="application/ld+json" data-home-jsonld="true">
    {
      "@context": "https://schema.org",
      "@type": "WebSite",
      "@id": "https://findbusiness.ai/#website",
      "name": "FindBusiness",
      "url": "https://findbusiness.ai",
      "description": "See how AI assistants read your business, then fix it: a free A-F AI Readiness grade, the Market AI Assessment and the AI Visibility Plan, and AI-ready websites, AI agents and custom software built at /services/.",
      "publisher": {
        "@id": "https://dependableaisolutions.com/#business"
      }
    }
    </script>
    <script type="application/ld+json" data-home-jsonld="true">
    {
      "@context": "https://schema.org",
      "@type": "FAQPage",
      "mainEntity": [
        {
          "@type": "Question",
          "name": "What is an AI readiness assessment?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "An AI readiness assessment checks whether your business website is accessible, understandable, and credible to AI discovery systems. The free scan runs 17 automated checks across Discoverability (20%), Clarity (45%), and Trust (35%) and returns an A-F grade with a prioritized action plan."
          }
        },
        {
          "@type": "Question",
          "name": "Why does AI visibility matter for my business?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "More consumers now start discovery with AI answers instead of traditional search links. If AI systems cannot crawl, understand, and verify your business, they recommend better-documented competitors instead."
          }
        },
        {
          "@type": "Question",
          "name": "What does the assessment check?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "The free assessment runs 17 checks across three pillars. Discoverability: SSL, crawl health, page speed, llms.txt, agent interface, URL structure, link health. Clarity: identity clarity, service clarity, location clarity, structured data quality, content structure. Trust: Google Business Profile, contact information, entity consistency, accessibility, and legal & compliance."
          }
        },
        {
          "@type": "Question",
          "name": "What is llms.txt and why do I need it?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "llms.txt is a plain-text file at your website root that tells AI models what your business does, your services, service area, hours, and key differentiators. Almost no businesses have one yet, making it a major competitive advantage for AI visibility."
          }
        },
        {
          "@type": "Question",
          "name": "Is the assessment free?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "Yes. The automated AI readiness scan is free for any website, with no account required. The paid products are the Market AI Assessment, which measures a whole trade in one town rather than a single site at $5 for one market and less per market in a pack, and the $25 AI Visibility Plan, which includes a market run and adds what to change on your own site, in order."
          }
        },
        {
          "@type": "Question",
          "name": "What is the AI Visibility Plan?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "The Market AI Assessment tells you who AI names in your trade and town. The AI Visibility Plan tells you what to do about it: your A-F readiness grade with its fixes in order, a fresh market run, a read of the businesses AI keeps naming instead, the exact edit each of your pages and profiles needs, and those edits sequenced over ninety days. It is a dashboard in five parts, printable as a PDF. $25, with the market run included rather than bought on top."
          }
        },
        {
          "@type": "Question",
          "name": "What is GEO (Generative Engine Optimization)?",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "GEO is Generative Engine Optimization, the practice of making your website and business information accessible and understandable to AI-powered search engines and assistants. It's the AI-era equivalent of SEO, but focused on structured data, crawl permissions, and content that AI agents can parse without executing JavaScript."
          }
        }
      ]
    }
    </script>
    <script type="application/ld+json" data-home-jsonld="true">
    {
      "@context": "https://schema.org",
      "@type": "WebApplication",
      "name": "FindBusiness",
      "url": "https://findbusiness.ai/",
      "applicationCategory": "BusinessApplication",
      "operatingSystem": "Any",
      "offers": {
        "@type": "AggregateOffer",
        "priceCurrency": "USD",
        "lowPrice": "0",
        "highPrice": "210",
        "offerCount": 7
      },
      "description": "Measures how AI assistants see local businesses: a free A-F readiness grade for any website, and a paid Market AI Assessment that reports who AI names across a trade in one town.",
      "creator": { "@id": "https://dependableaisolutions.com/#business" }
    }
    </script>
<!-- SSR:HEAD_END -->
    <script type="module" crossorigin src="/assets/index-DxfxyK72.js" blocking="render" data-fb-morph-gate></script>
    <script>(function(){
var HOME='/',SERVICES='/services/',HOLD_MS=2500,ATTR='data-fb-hero-morph',GO='data-hero-morph-go',CHOSEN='data-hero-morph-chosen',DEEP='fb-morph-deep',DOOR='fb-morph-door',TAB=/^#(audit|market|plan)$/;
var HERO='#audit,section:has(> div > #hero-panel)';
function plain(e){return e.button===0&&!e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey}
function live(el){var k=Object.keys(el);for(var i=0;i<k.length;i++)if(k[i].indexOf('__reactProps$')===0)return true;return false}
function store(v){try{if(v)sessionStorage.setItem(DEEP,v);else sessionStorage.removeItem(DEEP)}catch(x){}}
function stored(){try{return sessionStorage.getItem(DEEP)}catch(x){return null}}
function choose(mark,el,e){
var h=null;try{h=document.querySelector(HERO)}catch(x){}
var deep=!h||h.getBoundingClientRect().bottom<innerHeight*0.35,bare=mark.getAttribute(GO)==='plain';
document.documentElement.setAttribute(ATTR,'');
if(!bare&&el)el.setAttribute(CHOSEN,'');
store(deep?(bare?'fade':'deep'):null);
var u=null;try{u=new URL(mark.href||'',location.href)}catch(x){}
var d={t:Date.now(),h:u&&u.pathname===HOME&&TAB.test(u.hash)?u.hash:''};
if(e&&e.detail>0){d.x=e.clientX;d.y=e.clientY}
try{sessionStorage.setItem(DOOR,JSON.stringify(d))}catch(x){}
}
var door=null;try{door=JSON.parse(sessionStorage.getItem(DOOR)||'null');sessionStorage.removeItem(DOOR)}catch(x){}
if(door&&!(Date.now()-door.t<15000))door=null;
var gate=document.querySelector('script[data-fb-morph-gate]');
if(gate){var hold=false;try{var ga=window.navigation&&navigation.activation,gf=ga&&ga.from?new URL(ga.from.url).pathname:null;hold='onpagereveal' in window&&location.pathname===HOME&&!!gf&&gf.indexOf(SERVICES)===0&&(ga.navigationType==='traverse'||!!door)}catch(x){}
if(hold)setTimeout(function(){gate.removeAttribute('blocking')},HOLD_MS);else gate.removeAttribute('blocking')}
if(door&&door.h&&location.pathname===HOME&&location.hash===door.h)document.documentElement.setAttribute('data-fb-to-tab','');
function echo(e){return !!door&&door.x!=null&&e.isTrusted&&Date.now()-door.t<1000&&Math.abs(e.clientX-door.x)<32&&Math.abs(e.clientY-door.y)<32}
var cur=null,last=null;
document.addEventListener('click',function(e){
if(echo(e)){e.preventDefault();e.stopPropagation();return}
if(e.isTrusted)last=e;
var vt=document.activeViewTransition||cur;
if(vt&&e.isTrusted&&e.target===document.documentElement){
e.preventDefault();e.stopPropagation();
var x=e.clientX,y=e.clientY;vt.skipTransition();
vt.finished.then(function(){requestAnimationFrame(function(){var el=document.elementFromPoint(x,y);if(!el||el===document.documentElement)return;el=el.closest('a,button,[role="tab"],input,select,textarea,label')||el;el.click();if(el.focus)el.focus()})});
return}
var go=e.target&&e.target.closest?e.target.closest('a['+GO+']'):null;
if(go&&plain(e)){choose(go,go,e);return}
var tab=e.target&&e.target.closest?e.target.closest('[role="tab"]'):null;
if(!tab||live(tab))return;
e.preventDefault();e.stopPropagation();
var n=0,id=setInterval(function(){if(live(tab)){clearInterval(id);tab.click();tab.focus()}else if(++n>200)clearInterval(id)},25);
},true);
document.addEventListener('submit',function(e){var f=e.target,b=e.submitter;if(f&&f.hasAttribute&&f.hasAttribute(GO))choose(f,b||f,b&&last&&b.contains(last.target)?last:null)},true);
if(!('onpageswap' in window))return;
function skip(t){t.ready.catch(function(){});t.skipTransition()}
function path(u){try{return new URL(u).pathname}catch(e){return null}}
function paired(a,b){return (a===HOME&&b===SERVICES)||(!!a&&a.indexOf(SERVICES)===0&&b===HOME)}
function add(t,how){var still=matchMedia('(prefers-reduced-motion: reduce)').matches;if(still||how==='fade'){t.types.add('fb-fade');return}t.types.add('fb-morph');if(how==='deep')t.types.add('fb-deep')}
addEventListener('pageswap',function(e){
var t=e.viewTransition;if(!t)return;
var a=e.activation,to=a&&a.entry?path(a.entry.url):null;
var chosen=document.documentElement.hasAttribute(ATTR);
var back=!!a&&a.navigationType==='traverse'&&window.scrollY<120;
if(!chosen)store(null);
if(paired(location.pathname,to)&&(chosen||back))add(t,chosen?stored():null);else{store(null);skip(t)}
});
addEventListener('pagereveal',function(e){
var how=stored();store(null);
var t=e.viewTransition;if(!t)return;
var a=window.navigation&&navigation.activation,from=a&&a.from?path(a.from.url):null;
if(!paired(from,location.pathname)){skip(t);return}
t.ready.catch(function(){});cur=t;t.finished.then(function(){cur=null},function(){cur=null});
document.documentElement.setAttribute('data-fb-morphed','');
add(t,a.navigationType==='traverse'?null:how);
if(a.navigationType==='traverse')return;
if(TAB.test(location.hash)||/[?&]start=1(&|$)/.test(location.search))t.types.add('fb-to-tab');
});
addEventListener('pageshow',function(e){if(!e.persisted)return;document.documentElement.removeAttribute(ATTR);var c=document.querySelectorAll('['+CHOSEN+']');for(var i=0;i<c.length;i++)c[i].removeAttribute(CHOSEN)});
})();</script>
    <link rel="stylesheet" crossorigin href="/assets/index-YcSfEpVJ.css">
  </head>
  <body>
    <!--
      Static content inside #root for AI crawlers that cannot execute JavaScript.
      React mounts here and replaces this content on load.
      Crawlers (Cheerio, GPTBot, ClaudeBot) see the HTML below.
    -->
    <div id="root">
      <div id="app-splash" aria-hidden="true" style="position:fixed;inset:0;background:linear-gradient(135deg,#0A2540,#1a3a5f);display:flex;align-items:center;justify-content:center;font-family:'Source Sans 3',system-ui,-apple-system,sans-serif;color:#8BC8B6;font-weight:700;font-size:1.25rem;letter-spacing:0.02em;z-index:9999;">
        FindBusiness
      </div>
      <div id="ssr-fallback" style="display:none" aria-hidden="true">
      <!-- SSR:BODY_START -->
      <main>
      <h1>FindBusiness · See what AI can find out about your local business</h1>
      <p>Customers now ask an AI assistant who to call, and the AI decides which businesses make the shortlist. FindBusiness measures that: who AI actually names across a trade in your town, and how readable your own site is to the models doing the naming. Then it helps you fix what it finds: a plan you can follow yourself, or a website, AI agent or custom software we build. A product of Dependable AI Solutions.</p>

      <h2>What We Offer</h2>

      <h3>Market AI Assessment</h3>
      <p>Asks AI who to call across a trade's services in one town, four times each, and reports who it consistently names. No business is anchored to the question, so one report describes the whole market: a ranked roster, per-business service breakdowns, and the services where AI names nobody dependably. The exact prompts and the raw answers are printed in the report, so every claim can be checked.</p>
      <p>$5 for one market. Packs bring that down to $3.50 a market. See <a href="/pricing">pricing</a> or the <a href="/products/market">product page</a>.</p>

      <h3>AI Visibility Plan</h3>
      <p>Everything we have measured about how AI picks local businesses, pointed at one website and one market. Five parts: the A-F readiness grade with its fixes in order, a fresh market assessment for the trade and town, a read of the websites AI keeps naming instead, the exact edit each page and profile needs, and those edits sequenced over ninety days. A dashboard, printable as a PDF.</p>
      <p>$25, and the market run is inside it rather than bought on top. See the <a href="/plan">plan</a>.</p>

      <h3>AI Readiness Assessment</h3>
      <p>Enter your website URL and get an instant A-F grade, free and with no account. The scan runs 17 automated checks across Discoverability (20%), Clarity (45%), and Trust (35%), and returns a prioritized action plan.</p>

      <h3>Websites, AI agents and custom software</h3>
      <p>When you would rather have it fixed for you, we build it: AI-ready websites, new or moved off a site builder, an AI agent your customers can ask on your own site, and custom software. Every price is published. See <a href="/services/">what we build</a> and <a href="/services/pricing/">its pricing</a>.</p>

      <h2>Why AI Visibility Matters</h2>
      <p>AI answers increasingly shape discovery before a customer reaches a website. If AI cannot crawl, understand, and verify your business, it recommends better-documented competitors.</p>

      <h2>What We Check</h2>
      <h3>Discoverability (20%)</h3>
      <p>SSL/HTTPS, crawl health (robots.txt + sitemap), page speed, llms.txt, URL structure, link health, and agent interface (MCP, OpenAPI).</p>

      <h3>Clarity (45%)</h3>
      <p>Identity clarity, service clarity, location clarity, structured data quality (JSON-LD), and content structure.</p>

      <h3>Trust (35%)</h3>
      <p>Google Business Profile, contact information accessibility, entity consistency, accessibility, and legal &amp; compliance (privacy policy, terms, cookies) across your site.</p>

      <h2>Frequently Asked Questions</h2>

      <h3>What is an AI readiness assessment?</h3>
      <p>It checks whether your business website is accessible, understandable, and credible to AI discovery systems. The free scan runs 17 automated checks across Discoverability, Clarity, and Trust, and returns an A-F grade with a prioritized action plan.</p>

      <h3>What is a Market AI Assessment?</h3>
      <p>A readiness scan grades one website. A market assessment measures a whole trade in one town: it asks AI the questions a customer would ask, repeats each one, and reports who gets named consistently and who never comes up.</p>

      <h3>What is llms.txt?</h3>
      <p>A plain-text file at your website root that tells AI models what your business does. Almost no businesses have one yet, so adding one is a major competitive advantage.</p>

      <h3>What is GEO?</h3>
      <p>Generative Engine Optimization, making your website understandable to AI-powered search. The AI-era equivalent of SEO.</p>

      <h3>What is the AI Visibility Plan?</h3>
      <p>The market assessment tells you who AI names. The plan tells you what to do about it: your grade and its fixes, the market run, a read of the businesses AI keeps naming instead, the exact edit each of your pages needs, and a ninety-day order to do them in. $25, market run included.</p>

      <h3>Is it free?</h3>
      <p>The AI readiness scan is free for any website, with no account required. The paid products are the Market AI Assessment, from $3.50 a market, and the $25 AI Visibility Plan.</p>

      <h2>Research</h2>
      <p>What we have measured about how AI assistants decide which local business to name: the <a href="/research">research library</a>, and the <a href="/weekly-spotlight/all">Weekly Spotlight</a>, one market read closely every week.</p>

      <h2>Contact</h2>
      <p>Email: <a href="mailto:admin@dependableaisolutions.com">admin@dependableaisolutions.com</a></p>
      <p>FindBusiness is a product of Dependable AI Solutions LLC.</p>
      <p>&copy; 2026 Dependable AI Solutions LLC. All rights reserved.</p>
      </main>
      <!-- SSR:BODY_END -->
      </div>
    </div>
  </body>
</html>
