Hardt Web Studio  ·  SOP Library

Website Audit
Process & Delivery

SOP refHWS-SOP-004
CategoryClient acquisition
Applies toAll prospect audits — medical, alternative health, nonprofit, church
Prepared byCharles Hardt  ·  charleshardt.com
00

Purpose & mental model

Read this before running any audit. The mindset determines everything that follows.

A Hardt Web Studio prospect audit is not a technical exercise — it is a sales tool. Its purpose is to demonstrate specific expertise in the prospect's niche, show them something they did not know about their own site, and create a reason for a discovery call. Every finding you include should pass this test: would this matter to a practice owner or nonprofit director who is not technical? If not, leave it out.

The audit covers five dimensions in a fixed order. That order is deliberate — it moves from the issues most likely to cost the prospect money (performance, local search visibility) to the issues most likely to create legal or reputational risk (accessibility, security), then closes with the experience their clients or patients actually have (UX and trust signals).

Time target: A complete audit from first URL to finished PDF should take 45–75 minutes for a straightforward site. If you are spending more than 90 minutes, you are going too deep. This is a prospect tool, not a full technical audit. Identify the three to five most significant issues, explain them in plain English, and move on.
Never audit more than 10 pages of a prospect site before they become a client. Homepage, about, services, contact, and one or two key service pages is sufficient. Full site audits are paid work.

01

Complete audit workflow

Run these steps in order. Each tool feeds the next.

1
Open your audit toolkit (5 min)
Before visiting the prospect's site, open all six tools in separate tabs so you are not hunting for them mid-audit. Keep a Notion page or plain text file open for notes.

Tabs to open:
  • PageSpeed Insights — pagespeed.web.dev
  • WAVE — wave.webaim.org
  • GTmetrix — gtmetrix.com
  • SSL Labs — ssllabs.com/ssltest
  • Google Rich Results Test — search.google.com/test/rich-results
  • Moz Local Check — moz.com/local/search
  • Your audit report HTML file — open in Chrome
  • WebAIM Contrast Checker — webaim.org/resources/contrastchecker
2
First impression review — phone and desktop (5 min)
Open the prospect's site on your phone first — not your desktop. This is how most of their patients or donors will experience it. Note your immediate reactions before running any tools.

What to note in 60 seconds on mobile:
  • Does the page load noticeably slowly?
  • Is the phone number visible and tappable above the fold?
  • Is the primary CTA (book, donate, contact) visible without scrolling?
  • Does the site look dated or untrustworthy?
  • Is the text readable without zooming?
These gut-level observations often become your most compelling audit findings because they are the ones the prospect will immediately recognize as true.
3
Run all diagnostic tools simultaneously (15 min)
Paste the prospect's homepage URL into all six tools at the same time and let them run in parallel while you continue with the manual review. Most tools take 30–90 seconds. This saves significant time over running them sequentially.

While tools are running: check the page source for obvious issues (Ctrl+U in Chrome), check how many pages Google has indexed (search site:theirdomain.com), and check their Google Business Profile by searching their practice name.
4
Read and record results (15 min)
Work through each tool's results systematically, recording only the findings that are significant, explainable in plain English, and relevant to the prospect's niche. Do not record every warning — record the three to five findings that matter most to their patients or donors.

Record in your Notion notes: the metric, the value, the benchmark, and one sentence of plain-English explanation. This becomes your audit report copy.
5
Fill in the audit report (15 min)
Open your audit report HTML file in Chrome. Click each editable field and type in the findings from your notes. Assign grades (A through F) to each dimension. Write the summary paragraph last — it should be two to three sentences that frame the most urgent issues in terms of patient or donor impact, not technical impact.

Fill in your Calendly URL and contact details in the CTA section before saving.
6
Save as PDF and send (5 min)
In Chrome: File → Print → Save as PDF. Enable "Background graphics." Save with filename: AuditReport_[PracticeName]_[YYYY-MM].pdf

Send as an email attachment with a three-sentence personal email — not a template. Reference one specific finding by name. Include your Calendly link. Do not attach the HTML file — only the PDF.

02

Dimension 1 — Performance

The most immediately impactful dimension. A slow site costs patients and donors in real time.

Performance is your strongest opening finding because the impact is immediate and quantifiable. Google has published data showing that 53% of mobile visitors abandon a page that takes more than 3 seconds to load. For a medical practice, each abandoned visit is a potential patient choosing a competitor.

Google PageSpeed Insights — Primary tool
URL: pagespeed.web.dev
What it measures: Core Web Vitals (LCP, CLS, INP), overall performance score (0–100), and specific diagnostics with estimated savings for each fix.
Always test mobile first. Desktop scores are almost always higher and less meaningful for local healthcare prospects.

Key metrics to record:
  • Performance score — overall 0–100
  • LCP (Largest Contentful Paint) — how long until the main content loads. Target: under 2.5s.
  • CLS (Cumulative Layout Shift) — how much the page jumps around as it loads. Target: under 0.1.
  • INP (Interaction to Next Paint) — how quickly the page responds to taps. Target: under 200ms.
  • Total Blocking Time — JavaScript blocking the main thread. Target: under 200ms.
Benchmarks for your niche: Any score below 50 on mobile is a Critical finding. 50–70 is High. 70–89 is Medium. 90+ is good and should not be a negative finding.
2
GTmetrix — Secondary confirmation
URL: gtmetrix.com
What it adds: Waterfall chart showing exactly which files are slowing the page down. Useful for identifying the specific cause of a poor PageSpeed score — whether it is unoptimized images, render-blocking JavaScript, or slow server response time.

Use GTmetrix when PageSpeed shows a poor score and you want to identify the specific culprit to mention in your audit findings. You do not need GTmetrix on every audit — only when the PageSpeed score is below 60 and you want to name a specific cause.

How to explain performance findings to a non-technical prospect: Never say "your LCP is 8.4 seconds." Say "Your site takes over 8 seconds to load on a phone. Most people give up after 3 seconds — which means a significant number of potential patients are leaving before they even see your phone number."


03

Dimension 2 — Local SEO

For local healthcare and nonprofit prospects, local search visibility is often the highest-value finding.

Most patients and donors find local organizations through Google Search and Google Maps. A practice with poor local SEO is invisible to the highest-intent searchers — people who are actively looking for exactly what they offer. This dimension examines whether the site and Google Business Profile are set up to appear in those searches.

Moz Local Check — NAP consistency
URL: moz.com/local/search
What it measures: Whether the business name, address, and phone number (NAP) are consistent across the major directories Google uses to verify local businesses — Yelp, Facebook, Apple Maps, Bing, YellowPages, and others.

What to look for:
  • Inconsistent business name (e.g. "Norfolk Chiro" vs "Norfolk Chiropractic Center")
  • Old address still appearing on some directories
  • Missing listings on major directories
  • Phone number variations (with or without area code)
Inconsistent NAP is a direct local SEO ranking factor. Even minor variations confuse Google and suppress map pack rankings.
2
Google Business Profile — Manual review
Search the practice name in Google. Look at their GBP listing directly.

Check for:
  • Is the profile claimed? (Unclaimed profiles say "Own this business?")
  • Are the hours current and complete?
  • Are there photos? (Profiles with photos get 42% more direction requests)
  • How many reviews and what is the average rating?
  • Is the website URL correct and current?
  • Is the GBP category specific enough? ("Chiropractor" vs "Medical clinic")
An unclaimed or neglected GBP is one of the most impactful and easiest-to-explain findings for a local prospect.
3
Google Rich Results Test — Schema markup
URL: search.google.com/test/rich-results
What it measures: Whether the site has structured data (schema markup) that helps Google understand what the business is, where it is located, and what it does.

Paste the homepage URL and check for LocalBusiness, MedicalOrganization, or NGO schema. Most small practice sites have no schema at all — which is an easy-to-explain gap with a clear fix.
4
Manual on-page SEO check
View page source (Ctrl+U) and check:

  • Title tag — does it include the practice name and primary keyword? Is it under 60 characters?
  • Meta description — does it exist? Is it compelling and under 155 characters?
  • H1 tag — is there exactly one H1? Does it include a location keyword?
  • Image alt text — search the source for alt="" to find empty alt attributes
Also run a quick site:theirdomain.com search in Google to see how many pages are indexed and whether the correct pages are appearing.

04

Dimension 3 — Accessibility

Medical practices and nonprofits have heightened legal exposure. Frame findings as risk management, not technical compliance.

ADA website accessibility lawsuits and demand letters have increased significantly against small businesses, particularly in healthcare. Medical practices serving older patients or patients with disabilities are frequent targets. This is a meaningful finding for medical and nonprofit prospects because it creates real legal and reputational risk — not just a UX inconvenience.

WAVE — Primary accessibility tool
URL: wave.webaim.org
What it measures: WCAG 2.1 accessibility errors, alerts, and structural issues. Free. No account required. Shows issues visually overlaid on the page.

Key categories:
  • Errors (red) — definite accessibility failures. Always report these.
  • Alerts (yellow) — possible issues requiring manual review. Report significant ones.
  • Contrast errors — text that fails the 4.5:1 contrast ratio requirement.
Most common findings on small practice sites: Missing image alt text, empty links, missing form labels, low color contrast, missing document language, and skipped heading levels.

Run WAVE on the homepage and the contact or booking page. These are the highest-traffic pages and the ones most likely to be used by patients with accessibility needs.
2
WebAIM Contrast Checker — Color contrast
URL: webaim.org/resources/contrastchecker
What it measures: Whether text color against its background meets the 4.5:1 minimum contrast ratio required by WCAG 2.1 AA.

Use the eyedropper tool to sample the foreground and background colors directly from the suspect site. Paste the hex values into the checker. Common failures: light grey body text on white backgrounds, white text on medium-blue backgrounds, and light-colored text on photography.

How to frame accessibility findings for non-technical prospects: Never say "your site has 14 WCAG 2.1 AA violations." Say "Your site has accessibility issues that could create legal exposure — ADA accessibility lawsuits against small medical practices have increased significantly in recent years. The most significant issue I found is [specific finding], which affects patients who use screen readers or have low vision."


05

Dimension 4 — Security

For medical prospects, security is a patient trust issue. For nonprofits it is a donor trust issue. Frame it that way.

SSL Labs — HTTPS and certificate check
URL: ssllabs.com/ssltest
What it measures: SSL certificate validity, configuration strength, and HTTPS implementation. Grades A through F.

Key things to check:
  • Is SSL active at all? Visit the URL with http:// — does it redirect to https://?
  • Does Chrome show a padlock or "Not Secure" in the address bar?
  • Are there mixed content warnings? (Some resources loading over HTTP on an otherwise HTTPS site)
  • Is the certificate current and not expired?
A "Not Secure" warning in Chrome on a medical site is an immediate critical finding. Patients see that warning and leave.
2
Manual WordPress security checks
Check for WordPress admin exposure: Visit theirdomain.com/wp-admin — does it load a WordPress login page? If so, the site is WordPress and the admin URL is exposed at the default location (a security risk).

Check WordPress version: View source and search for ?ver= in script and stylesheet URLs. If you can identify the WordPress version and it is outdated, note it.

Check for plugin update indicators: Some sites expose their plugin version numbers in page source. Outdated plugins are the most common WordPress attack vector.

Check for user enumeration: Visit theirdomain.com/?author=1 — if it redirects to a URL containing a username, the site exposes admin usernames.
3
Contact form review — HIPAA risk for medical
Review any contact or intake forms on the site. Note what fields they collect.

Critical for medical prospects: If the form collects health information (symptoms, conditions, medications, insurance) and is a standard WordPress form plugin (WPForms, Contact Form 7, Gravity Forms), the data is being stored in the WordPress database — which is a HIPAA compliance risk unless specific safeguards are in place.

This is one of the most powerful findings for medical prospects because it combines a technical issue with a serious legal risk they almost certainly are not aware of.

06

Dimension 5 — UX & trust signals

The most subjective dimension — and often the one that resonates most with prospects because they can see it themselves.

UX and trust signals are the qualitative dimension of the audit. These findings require human judgment rather than tool output. The question to ask for each element is: does this build or erode trust with a first-time visitor who has never heard of this practice?

1
Mobile experience review
Open the site on your actual phone — not Chrome DevTools. Check:

  • Phone number visible and tap-to-call above the fold?
  • Primary CTA (Book / Donate / Contact) visible without scrolling?
  • Text readable without zooming? (16px minimum for body text)
  • Buttons large enough to tap without precision? (44px minimum touch target)
  • Forms usable on mobile? (Correct keyboard type triggered for each field)
  • Images loading correctly at mobile resolution?
  • Navigation accessible on small screen?
2
Trust signal audit
Review the site for the presence or absence of trust signals appropriate to the niche:

Medical & alternative health:
  • Credentials and license numbers displayed?
  • Professional photos or generic stock?
  • Google reviews widget or testimonials?
  • Insurance accepted clearly listed?
  • Privacy policy and medical disclaimer present?
  • Copyright year current?
Nonprofit & church:
  • 501(c)(3) status and EIN visible on donation pages?
  • Staff and board listed with photos?
  • Annual report or financial transparency?
  • Impact numbers or program statistics?
3
Content freshness check
Check for signs that the site has not been updated recently:

  • Copyright year in footer — still showing a year 3+ years ago?
  • Blog or news section — last post more than a year old?
  • Events calendar showing past events?
  • Staff page listing people who may no longer work there?
  • Broken images or links?
  • Promotions or offers that have clearly expired?
A visibly stale site signals to patients and donors that the organization may not be well-managed or may have changed significantly since the site was built.
4
Broken link check
Tool: Screaming Frog SEO Spider (free tier crawls up to 500 URLs)
URL: screamingfrog.co.uk/seo-spider

Run a crawl of the prospect's domain. Filter for 404 errors. Note broken internal links — particularly on navigation, contact pages, and any booking or donation links.

A broken booking link on a medical site is a Critical finding — every visitor who clicks it and gets a 404 is a lost patient inquiry. This is the kind of specific, concrete problem that motivates a discovery call.

07

Scoring & grading guide

Consistent grading builds credibility across audits. Use this reference for every report.

Grades are assigned to each of the five dimensions and to the audit overall. The grade reflects the severity of the issues found and their likely impact on patient or donor acquisition — not a purely technical assessment.

GradeMeaningAction required
ANo significant issues. Meets or exceeds best practices.Acknowledge as a strength. No remediation needed.
BMinor issues present. Not actively costing opportunities.Note as improvements, not urgent problems.
CModerate issues. Likely affecting user experience and conversion.Recommend addressing within 3–6 months.
DSignificant issues. Actively losing patients or donors.Recommend addressing within 30 days.
FCritical failures. Creating legal risk or blocking conversion entirely.Urgent. Address before anything else.
DimensionFDCBA
PerformancePageSpeed <3030–4950–6970–8990+
Local SEONo GBP, no schema, inconsistent NAPUnclaimed GBP or major NAP issuesGBP exists, schema missing, some NAP issuesGBP active, schema present, minor issuesFully optimized GBP, schema, consistent NAP
Accessibility5+ WAVE errors or no SSL3–4 WAVE errors1–2 WAVE errorsAlerts only, no errorsZero errors, zero significant alerts
SecurityNo SSL or active malwareSSL present, major config issuesSSL present, mixed content or outdated pluginsSSL A-grade, minor hardening gapsSSL A+, all hardening best practices met
UX & TrustNo CTA, broken booking, no phone numberCTA buried, stale content, no trust signalsBasic UX functional, trust signals thinGood mobile UX, trust signals presentExcellent mobile UX, comprehensive trust signals
Overall grade: The overall grade is not an average. It is weighted toward the worst-performing dimension, because a single critical failure in one area can negate strength in others. An F in Security combined with A grades elsewhere should produce an overall D or F, not a C.

08

Report writing & delivery

How you present the findings matters as much as what you found.

1
Writing findings in plain English
Every finding in the report must pass the "practice owner test": could a non-technical medical practice owner or nonprofit director read this and immediately understand why it matters to them?

Technical → Plain English rewrites:
  • "LCP 8.4s" → "Your site takes over 8 seconds to fully load on a phone. Most visitors leave after 3 seconds."
  • "No LocalBusiness schema" → "Google cannot read your location and hours from your website code, which suppresses your map pack ranking."
  • "34 WAVE errors" → "Your site has 34 accessibility issues that could create ADA legal exposure — medical practices are a frequent target."
  • "wp-login.php exposed" → "Your WordPress login page is at the default address, making it easier for automated attacks to target your site."
  • "Missing alt text on 12 images" → "12 images on your site are invisible to screen readers, affecting patients with visual impairments."
2
The Claude prompt for audit report copy
After collecting your raw findings, use this Claude prompt to draft the report copy:

"You are a web developer writing a website audit report for a [medical clinic / nonprofit / church] in Norfolk VA. The audience is a non-technical [practice owner / executive director / pastor]. Write plain-English findings for each issue below. Frame each finding in terms of patient/donor impact — not technical severity. Keep each finding to 2–3 sentences maximum. Here are the raw findings: [paste your notes]"

Edit the output for accuracy and your voice before pasting into the report.
3
The delivery email
Send the PDF with a three-sentence email. No template — write it fresh for each prospect, referencing one specific finding by name.

Structure:
Sentence 1: What you found and why it matters to them specifically.
Sentence 2: The full findings are in the attached report.
Sentence 3: Calendly link for a 20-minute call to discuss.

Example: "Hi Sarah — I took a look at [their URL] and found that your site takes 9 seconds to load on a mobile phone, which means most patients searching on their phone are leaving before they see your booking button. Full findings in the attached report — happy to walk through it on a 20-minute call if useful: [Calendly link]."
4
Saving the PDF correctly
Open the filled audit report in Chrome. Click "Save as PDF" in the toolbar.

Chrome print settings:
  • Destination: Save as PDF
  • Layout: Portrait
  • Paper size: Letter
  • Margins: Default
  • Scale: Default (100%)
  • Options: Check "Background graphics" — required for colored sections
Filename format: AuditReport_[PracticeNameNoSpaces]_[YYYY-MM].pdf
Example: AuditReport_NorfolkChiropractic_2026-06.pdf

Save a copy in the client's Google Drive folder in case they ask for it later.

09

Learning resources

How to build proficiency in each audit dimension. Prioritized by what you need first.

SkillResourceFormatTime
Core Web Vitals & performance web.dev/learn/performance (Google) Free course 3–4 hrs
Reading PageSpeed reports web.dev/performance — PageSpeed Insights documentation Free docs 1 hr
Local SEO fundamentals Whitespark blog — whitespark.ca/blog Free articles 2–3 hrs
Local SEO — video Ranking Academy on YouTube Free YouTube Ongoing
Google Business Profile optimization BrightLocal Academy — brightlocal.com/learn Free course 2 hrs
Schema markup Google Search Central — developers.google.com/search Free docs 1–2 hrs
Web accessibility — WCAG 2.1 WebAIM Introduction to Accessibility — webaim.org/intro Free course 2 hrs
Accessibility — using WAVE WebAIM WAVE documentation — wave.webaim.org/help Free docs 30 min
WordPress security fundamentals Wordfence Learning Center — wordfence.com/learn Free articles 2–3 hrs
SSL and HTTPS SSL Labs documentation — github.com/ssllabs/research Free docs 1 hr
HIPAA and websites HHS.gov HIPAA for covered entities — hhs.gov/hipaa Free gov resource 1–2 hrs
UX heuristics & usability Nielsen Norman Group free articles — nngroup.com Free articles Ongoing
UX — foundational book Don’t Make Me Think — Steve Krug Book (~$30) 3–4 hrs
Screaming Frog for broken links Screaming Frog tutorials — screamingfrog.co.uk/learn Free docs & video 1 hr
Audit writing & plain English Anthropic prompting guide — docs.claude.ai Free docs 1 hr
Practice before prospecting: Before running your first prospect audit, run a complete audit on three real businesses that are not prospects — one medical practice, one nonprofit, one church. Use businesses you find on Google Maps that you will never contact. Running the full workflow three times under no pressure builds muscle memory for the tools and sharpens your plain-English explanation skills before anything is at stake.