SEO Case Study

SEO Audit Case Study

A weighted SEO audit of elmirfa.com's homepage across seven categories: Core Web Vitals, on-page, schema, and AI readiness. Scored 77.7/100 with a prioritized fix plan.

Self-directed audit · Scope: Homepage (elmirfa.com) elmirfa.com
Health Score 77.7 / 100 Grade B 0 Critical Blockers

Overview

The homepage is fundamentally healthy: clean single-H1 structure, valid canonical and robots, a well-formed Person/WebSite/WebPage JSON-LD graph, and a static crawler fallback so non-JS bots and AI crawlers still see real content. The score is dragged down almost entirely by unmeasured Core Web Vitals on the JavaScript-rendered page and a few on-page polish gaps.

Method: raw HTML + live headers, an on-page checker, and a weighted health scorer across seven categories.

CategoryScoreCategoryScore
Schema87.5Technical78.6
Content83.3On-Page75.0
AI Readiness83.3Performance50.0 (weakest)
Images83.3

Top priorities

  1. Measure Core Web Vitals on the JS homepage. The only reason Performance scored 50 is that it swaps the static fallback for a JS-rendered hero (LCP + CLS risk) that has never been field-tested. The single biggest unknown.
  2. Crawler-facing content is thin (~236 words). The static fallback undersells the depth the JS version shows.
  3. No links from the homepage into blog/portfolio articles. Three internal vs eight external links and wasted internal-link equity.

Technical SEO findings

IssueImpactFix
Core Web Vitals never measured on JS homepageHighRun PageSpeed Insights / CrUX; watch LCP (hero swap) and CLS; reserve hero image dimensions to prevent shift.
No HSTS headerLowAdd Strict-Transport-Security via .htaccess (HTTPS is already forced, so it is safe).
No charset in HTTP Content-TypeLowAdd AddDefaultCharset UTF-8; explicit is more robust than relying on the meta tag.
robots / sitemap / canonicalPassValid Rank Math sitemap index and self-referencing canonical. No action.

On-page & content findings

  • Homepage doesn't link into articles (medium): 3 internal vs 8 external links. Add 2–3 contextual links to the strongest posts/case studies to improve crawl depth and distribute authority.
  • Meta description short (134 chars): extend to 150–160 and work in a concrete proof point ("scaled a property portal to 91M annual organic clicks") to lift CTR.
  • Crawler-facing content thin (~236 words): expand the static fallback past 300 words with real, results-driven detail — this is the version Google and AI crawlers actually read.

Prioritized action plan

Critical (blocking): none. Nothing blocks indexation or ranking.
High-impact: measure CWV and fix any static→JS layout shift, expand the static fallback past 300 words, and add 2–3 internal links into the best articles.
Quick wins: extend the meta description, add HSTS and explicit charset headers, and clean UI-chrome headings out of the semantic outline.

Skills demonstrated

Structured audit methodology · Core Web Vitals · on-page optimization · schema validation · prioritization by impact · rigorous verification of tool output against live evidence.

Related case study

See the companion technical SEO remediation case study for the fixes that shipped.