01Speed & Core Web Vitals
How fast your pages load on a real phone on a real connection — and which specific asset is holding them back.
Largest Contentful Paint, Interaction to Next Paint, and Cumulative Layout Shift, measured against Google's actual thresholds and traced back to the specific asset causing each failure. This half matters twice over now: a slow, badly structured page is also harder for an AI crawler to parse and cite, so speed problems quietly cost you on both sides of the report.
02Mobile experience
Over 70% of local searches happen on a phone. Tap targets, readability, and whether your call button is where a thumb can reach it.
We load your site on a real handset viewport and try to do what a customer would: find the phone number, read the prices, submit the form. Tap targets under 44px, body text under 16px, and forms that zoom on focus are the usual culprits. Automated scores miss these because a crawler never has to tap anything.
03SEO foundations
Title tags, meta descriptions, heading structure, and whether Google can crawl and index the pages that matter to you.
Unique titles under 60 characters, descriptions under 155, one H1 per page, and a heading order that does not skip levels — then we verify your important pages are genuinely indexed and not blocked by robots.txt, a stray noindex, or a mispointed canonical. Duplicate service-page titles are the most common finding here and among the fastest to fix.
04What AI says about you
Real customer questions put to ChatGPT, AI Overviews, Perplexity, and Gemini — and whether your name comes up at all.
We put the questions your customers actually ask — best plumber near me, who should I call for a leaking roof in Costa Mesa — to ChatGPT, Google AI Overviews, Perplexity, and Gemini, and record what comes back. Usually one of three things: you are recommended, a competitor is recommended, or the assistant describes you using details that are two years out of date. Each needs a different fix.
05Detail accuracy
Hours, address, phone, services. AI assembles these from across the web, so one stale listing can quietly misinform everyone.
AI assembles its answer about you from your site, your Google Business Profile, Yelp, directories, and whatever else it has crawled. When those disagree, the model picks one — often not the current one. We check hours, address, phone, and service list across every surface we can find and flag exactly which stale listing is feeding the wrong answer.
06Structured data
Whether your business, services, hours, and reviews are marked up so both search engines and AI can read them.
LocalBusiness, Service, FAQPage, and BreadcrumbList schema validated against Schema.org. This is the layer that lets Google show hours and ratings directly in results, and gives AI systems machine-readable facts rather than guesses. We flag what is missing, malformed, or contradicts what your pages visibly say — contradictory schema is worse than none.
07Crawler access
Whether search and AI crawlers can actually reach your content, or whether robots.txt and rendering are shutting them out.
Whether GPTBot, PerplexityBot, ClaudeBot, and Google-Extended can actually reach your content, and whether your key pages render without JavaScript. Plenty of businesses block AI crawlers by accident through a copied robots.txt, then wonder why assistants never mention them. This is a five-minute check that occasionally explains everything.
08Competitive position
Who is outranking you on Google, who AI recommends instead, and what makes them the easier business to cite.
The two or three businesses ranking above you on Google, and the ones AI recommends instead — often not the same list. We identify the concrete gaps: review counts, content depth, location coverage, citation consistency. Being cited by an AI assistant tends to follow the same signals as ranking, so the two halves usually point at one shared root cause.