Free Audit

The work, and
what it produced.

No inflated claims. Every number below is either a real Lighthouse score or a real ranking change from an actual project. Where I can't share a client name, I say so and show the data instead.

Proof of concept

You're looking at it right now.

This site — hand-coded, self-hosting Jost at 14kb of woff2, procedural SVG animation replacing what would normally be a 40MB video, schema on every page — scored four hundreds on the first Lighthouse run after launch. That's the same approach I bring to every build.

The animated mountain scene in the hero is pure SVG and a 150-particle canvas, not a video file. Total Blocking Time: 0ms. Cumulative Layout Shift: 0. Largest Contentful Paint: 0.9s on a mobile connection.

100Performance
100Accessibility
100Best Practices
100SEO

Lighthouse scores from the initial production run at keithgraber.com. Scores may vary as content is added.

ridgelinecabinetry.com
Ridgeline Cabinetry

Custom hardwood cabinets,
built in Daviess County.

Solid maple, cherry and quartersawn oak. Design, build and installation — no subcontractors.

Get a quote
Kitchen CabinetsFrom $310/lin ft
Bath VanitiesCustom sizes
Built-insBookcases & more
100Perf
100A11y
100SEO
0msTBT

Web design — Southern Indiana cabinet shop

A fast site that explains the craft and converts browsers to callers.

The previous site was a page-builder template that scored 34 on Performance and loaded in over four seconds on a phone. Everything was inside images — hours, pricing, the service area. Invisible to search, invisible to AI.

34→100Performance
0.9sPage load
0msBlocking time
  • Hand-coded in clean HTML and CSS — no page builder, no theme
  • Pricing and hours in crawlable text, not locked inside images
  • Organization and Service schema on every page
  • Four Lighthouse hundreds on first production run
  • Click-to-call and quote request form above the fold on mobile
maps.google.com

Local rank grid — before & after 90 days

Before

20+
18
20+
20+
20+
16
14
12
14
18
14
10
4
12
16
16
12
14
16
20+
20+
16
20+
20+
20+

Avg rank: 15.2 — 0% top 3

After 90 days

5
4
3
4
5
4
2
1
2
4
3
1
1
1
2
4
2
1
2
5
5
4
3
4
5

Avg rank: 2.8 — 68% top 3

Google Business Profile — Home services company

From invisible on the grid to owning the map pack in 90 days.

Wrong primary category, no services listed, zero reviews in the past six months, and a keyword-stuffed competitor occupying the top slot with a fake address. Starting from the bottom of a cold grid.

15.2→2.8Avg rank
0%→68%Grid in top 3
1Fake listing removed
  • Primary category corrected and tested against what ranks locally
  • Full service list, service-area boundaries and attribute rebuild
  • Review generation system installed — 23 new reviews in 90 days
  • Redressal filed and upheld on one spam listing above us
  • Monthly geo-grid scans to track movement across the whole service area
chat.openai.com

Who does roof repair in Washington, Indiana?

For roof repair in Washington, Indiana, Hollow Creek Roofing is consistently cited. They offer same-week emergency appointments, serve Daviess and surrounding counties, and hold a 4.9 rating across 140+ reviews. Pricing starts around $350 for standard repairs.

EntityHollow Creek Roofing — defined
SchemaLocalBusiness + Service markup
PricingIn plain text, crawlable
AreaService area defined in schema

AEO & SEO — Roofing contractor

Named by ChatGPT and Perplexity for every target query within three months.

Site was fast but structured for 2019 search — no entity definition, schema on the homepage only, pricing and service area buried in PDFs. Present on Google, invisible everywhere an AI looked.

0→4Engines citing
11Target prompts named
+64%Organic clicks, 90 days
  • Entity and knowledge-graph definition pushed across site and citations
  • LocalBusiness, Service and FAQ schema on every service page
  • Pricing, hours and service area moved from PDFs to crawlable HTML
  • llms.txt published pointing models at the priority pages
  • Monthly prompt tracking across ChatGPT, Gemini, Perplexity and AI Overviews

How every project runs

Same four phases,
every time.

01

Audit first

I run the business through Google, the map pack and four answer engines before a single deliverable is scoped. You see the baseline, I see what needs fixing and in what order.

02

Flat quote

One price, written down, before work starts. No scope creep invoices. No "that's extra" mid-project. If the scope changes, the quote changes first.

03

Build, then hand over

When it's done, you own it. Domain, hosting account, source files — all in your name, with the logins. No proprietary platform that stops working if you leave.

04

Monthly numbers

Rank, traffic, map position, and engine citations every month. You see what moved and what didn't. I explain the ones that didn't.

Ready to see what your numbers look like?

Get a free audit