Med Spa SEO Audit Checklist: 27 Things to Check Before You Spend a Dollar on Ads
Before paying for Google Ads or Meta ads, fix your organic foundation. The audit checklist I run for every med spa client.
Most med spas paying for Google Ads have a broken organic foundation underneath. They're spending $30–$60 per click on terms they could rank for organically in 4–6 months — and the same fixes that would unlock the organic traffic also improve the ad quality score, which lowers cost-per-click.
Before you spend another dollar on ads, run this audit. It's the same one I run for every med spa client. 27 items, split into 5 categories. Each item has: what to check, what good looks like, what to do if it's broken.
If 10+ items fail, fix those before increasing ad spend. The traffic you'd get from those fixes will be cheaper and longer-lasting than what you'd buy.
Technical (items 1–7)
These are infrastructure problems. Most are fast to fix.
1. HTTPS
Check: does your site load with https:// and not http://? Type your URL with http:// — does it auto-redirect to HTTPS?
Good: every URL on your site resolves over HTTPS, and HTTP redirects to HTTPS via a 301.
Fix: if you're on HTTP-only, your host (Squarespace, WordPress via plugin, GoDaddy) has a one-click option for a free Let's Encrypt cert. Do it today. Google has flagged HTTP sites as "Not Secure" in Chrome since 2018 and demotes them in rankings.
2. Mobile responsiveness
Check: open your site on your phone. Tap the booking button. Can you read everything without pinching to zoom?
Good: text is readable at default zoom, tap targets are 44px+ apart, no horizontal scrolling.
Fix: if your site is built on a template from 2015–2018, you may have a "mobile site" subdomain (m.yourspa.com) that's separate from the desktop site. Modern Google indexes mobile-first, so the mobile experience IS the experience. Migrate to a responsive theme.
3. Core Web Vitals (LCP, FID, CLS)
Check: PageSpeed Insights on your homepage. Look at the mobile tab. What's your Largest Contentful Paint (LCP)? What's your Cumulative Layout Shift (CLS)?
Good: LCP under 2.5s, CLS under 0.1, INP (replaces FID) under 200ms.
Fix: the biggest LCP culprit on med spa sites is the hero image — often a 4MB stock photo of a smiling woman. Compress to under 200KB, serve as WebP, set explicit width and height to prevent layout shift.
4. Sitemap exists and is submitted
Check: visit yoursite.com/sitemap.xml. Does it return a valid XML file with all your pages? Is it submitted in Google Search Console?
Good: sitemap exists, lists every page you want indexed, submitted to GSC with no errors.
Fix: WordPress plugins generate this automatically (Rank Math, Yoast). Squarespace publishes it at /sitemap.xml by default. Submit it via GSC at Sitemaps → Add new sitemap → paste the URL.
5. robots.txt allows crawling
Check: visit yoursite.com/robots.txt. Does it have a line that says Disallow: /?
Good: robots.txt exists and explicitly allows the major crawlers (Googlebot, Bingbot). Optionally points to your sitemap.
Fix: if you see Disallow: / you're blocking Google from crawling anything. This is the SEO equivalent of locking your front door from the inside. Change to Allow: / and add Sitemap: https://yoursite.com/sitemap.xml at the bottom.
6. No accidental noindex tags
Check: view source on your homepage and your top service pages. Search for noindex. Should appear zero times in a public page's <head>.
Good: no noindex tags on pages you want ranked.
Fix: some WordPress themes ship with "Discourage search engines" enabled by default. Settings → Reading → uncheck "Discourage search engines from indexing this site." Save.
7. HTTPS errors / mixed content
Check: open Chrome DevTools (Cmd+Opt+I), Console tab. Refresh your page. Are there warnings about "mixed content" or "insecure resources"?
Good: no console warnings about insecure resources.
Fix: mixed content happens when your page loads images, scripts, or stylesheets over HTTP from an HTTPS page. Find the offending URLs and change them to HTTPS, or remove them.
On-page (items 8–14)
These are the per-page basics. Cheapest SEO wins live here.
8. Unique title tags
Check: view source on your homepage, your services page, and 2–3 sub-pages. Compare the <title> tags.
Good: every page has a unique title that includes its primary keyword. Format: [Primary keyword] | [Spa Name] in [City].
Fix: if every page has the same title, set unique per-page titles. Most platforms expose this as a "SEO title" field per page.
9. Meta descriptions
Check: view source, look for <meta name="description">.
Good: every page has a 140–160 character description that includes the primary keyword and a soft call-to-action. ("Botox in Plano with board-certified injectors. $12/unit, results in 5–7 days. Book a consultation today.")
Fix: meta descriptions don't directly affect rankings but they massively affect click-through rate from SERPs. A 1% higher CTR can compound to noticeable traffic gains.
10. One H1 per page
Check: view source, count <h1> tags per page.
Good: exactly one H1 per page, containing the primary keyword.
Fix: more than one H1 confuses Google's content classifier. Set the page title as H1, demote other "h1-styled" text to H2 or use CSS to style H2s as large.
11. Logical H2/H3 hierarchy
Check: view source, look at the heading structure. Do H2s describe major sections? H3s describe sub-sections under H2s?
Good: clean nested hierarchy. Google reads this as the content outline.
Fix: rewrite headings to follow a logical outline. Don't skip levels (don't go H1 → H3) and don't use H4–H6 for visual styling.
12. Image alt text
Check: right-click an image on your site → Inspect. Does the <img> tag have an alt attribute with descriptive text?
Good: every meaningful image has descriptive alt text. Decorative images can have alt="".
Fix: add alt text to every image. For a before-and-after photo: alt="Before and after Botox forehead treatment in Plano, TX". Not alt="image1.jpg".
13. Internal linking
Check: open your Botox page. Count links to other pages on your own site (excluding nav and footer).
Good: every service page links to at least 2–3 other relevant service pages and 1 local content page.
Fix: add a "Related treatments" section at the bottom of each service page. Each link should serve a likely next step for the reader.
14. Clean URL structure
Check: look at your URLs. Do they make sense to a human? Are they short and descriptive?
Good: /services/botox-plano/, not /?page_id=347&category=services.
Fix: WordPress: Settings → Permalinks → Post name. Squarespace: per-page URL slug field.
Local (items 15–21)
This is the category most med spas underinvest in, and the one with the biggest upside for local visibility.
15. Google Business Profile claimed and complete
Check: Google Business Profile. Is your spa listed? Claimed by you? Categories set?
Good: profile claimed, categories include "Medical spa" + relevant procedure-specific categories, photos uploaded, hours accurate, address matches the website.
Fix: unclaimed profiles are common. Claim and verify (Google sends a postcard with a code, takes 5–14 days). Set primary category to "Medical spa" and add up to 9 secondary categories for specific services.
16. NAP consistency
Check: search your spa name + city in Google. Click through to your listings on Yelp, RealSelf, Yellow Pages. Is your name, address, phone number identical everywhere?
Good: identical NAP on your website, GBP, Yelp, RealSelf, Healthgrades, citations.
Fix: inconsistent NAP confuses Google about which signal is correct. Pick the canonical version (use what's on your GBP), then update every other listing to match exactly. Even "Suite 200" vs "Ste 200" matters.
17. Citations on top med-spa-relevant directories
Check: are you listed on Yelp, RealSelf, Healthgrades, Yellow Pages, BBB?
Good: listed on at least 6–8 industry-relevant directories.
Fix: create listings on RealSelf (specifically — it's the dominant cosmetic procedure review platform), Healthgrades, Vitals, Yelp, and a few local citation sites for your metro.
18. Review count and recency
Check: how many Google reviews do you have? When was the most recent one?
Good: 25+ Google reviews, average 4.5+ stars, at least one new review per month.
Fix: systemize review collection. After every treatment, the patient gets a follow-up text with a direct Google review link. Don't incentivize reviews (against Google's TOS), but don't be shy about asking.
19. Reviews are responded to
Check: are you replying to your Google reviews, both 5-star and lower?
Good: every review has a response, especially negative ones. Responses are personal, not templated.
Fix: reply to all existing reviews this week. Set a recurring reminder to reply within 24 hours of any new review.
20. LocalBusiness / MedicalBusiness schema
Check: run your homepage through Google's Rich Results Test. Does it detect MedicalBusiness schema?
Good: schema present, complete with address, phone, hours, and aggregateRating.
Fix: add JSON-LD to your site's <head>. Use MedicalBusiness type, not generic LocalBusiness. Google treats them differently for the local pack.
21. Service-area pages exist
Check: does your site have a dedicated page for each city you serve? (Not just one Locations page that lists all of them.)
Good: one page per city, each at least 600 words, each linked from a "Service Areas" section in the nav or footer.
Fix: see the programmatic SEO for med spas playbook for the page template and how to build these at scale.
Content (items 22–25)
The slowest fixes, the biggest long-term payoff.
22. Dedicated service pages (not just one Services page)
Check: count individual service pages on your site. Do you have separate pages for Botox, dermal filler, lip filler, microneedling, etc.?
Good: one dedicated page per major service, each 800–1,200 words.
Fix: consolidated Services pages can't rank for individual service queries. Break out each service into its own page with MedicalProcedure schema.
23. FAQ section on every service page
Check: does each service page have an FAQ section with 5–8 questions and answers?
Good: FAQ section present, marked up with FAQPage schema, questions match real search intent (not "What are your hours?").
Fix: for each service, write FAQs that answer the questions people actually search. ("How much does Botox cost?", "How long does Botox last?", "Is Botox safe?", "How soon will I see results?"). Use AnswerThePublic or "People also ask" in Google to find real questions.
24. Active blog or news section
Check: when was your last blog post? Is there a blog at all?
Good: at least 2–4 blog posts per month, each targeting a specific search query, each 800+ words.
Fix: if you don't blog at all, start. If you blog occasionally with thin posts, replace with a regular cadence of substantive posts. A monthly post that's genuinely useful beats four weekly thin posts.
25. Pricing transparency
Check: are prices (or price ranges) published on your service pages?
Good: every service page shows either a starting price, a typical price range, or "Starting at $X per unit" for unit-priced procedures.
Fix: publish prices. Most spas hide them out of fear of price competition. The actual effect of hiding prices is filtering out qualified leads — patients ready to book — and converting more price-only shoppers. Publishing prices inverts this.
Trust (items 26–27)
These won't move SEO directly but they make every other fix more effective.
26. Provider credentials visible
Check: can a visitor see, by name, who will perform their procedure? Are their credentials listed (MD, RN, board certifications, years of experience)?
Good: every provider has a dedicated bio page with name, photo, credentials, years in practice, specialties.
Fix: create bio pages. Link them from every relevant service page. Mark up with Person and medicalSpecialty schema. This is one of the highest-leverage trust fixes for med spas under Google's YMYL (Your Money or Your Life) criteria.
27. Real before-and-after photos
Check: do you have before-and-after photos on your service pages, or only stock images?
Good: at least 4–6 real before-and-after photos per major service, with patient consent, watermarked with your spa name.
Fix: collect before-and-after photos systematically. Add the consent step to your intake paperwork. Build a small gallery component you can reuse across service pages.
Putting it together
Score yourself. Each item is 1 point.
- 22–27 points: foundation is solid. Spending on ads here gives you 2–3× the return of a typical spa.
- 15–21 points: you have meaningful gaps. Fix the technical items (1–7) first, then re-audit before increasing ad spend.
- Under 15 points: don't run paid ads yet. The traffic will not convert because the trust and content foundation isn't there. Fix the failing items, then revisit ads in 60 days.
If you want a 1-page PDF of these gaps specifically for your site — including which competitors have built the pages you haven't — run our free SEO opportunity scan. It takes about 60 seconds to start.
Related posts
For Med Spas · Mar 4, 2026
Programmatic SEO for Med Spas: How to Rank for 'Botox in [City]' (And 99 Other Searches)
Most med spas have one Services page. Their competitors have 100. Here's how to build the missing pages and capture the searches your competitors miss.
For Realtors & Med Spas · Mar 18, 2026
How I Built PropertySignalHQ: From 0 to Indexed in 6 Weeks
A walk-through of building a real estate intelligence platform with hundreds of indexed pages. Tech stack, content strategy, what worked, what didn't.
For Realtors · Feb 19, 2026
Why Your Real Estate Website Isn't Ranking (And How to Fix It in 30 Days)
The 7 most common reasons real estate sites don't rank, ordered by how easy they are to fix. Real audit findings from real agent sites.