guides/technical-seo-audit.html

RUNNING A TECHNICAL SEO AUDIT

The audit methodology I run on every Seahawk client engagement, with the tools, the checks, and the prioritisation.

RUNNING A TECHNICAL SEO AUDIT

← Blog

The toolkit

Three tools cover roughly ninety percent of the work:

Search Console for ground truth on what Google sees: indexability, Core Web Vitals at field-data level, manual actions, security issues, sitemap health, and the Page experience report.

Screaming Frog for the technical crawl: title and meta length distribution, H1 audit, internal link graph, redirect chains, hreflang validation, schema validation, image alt audit, robots.txt and noindex coverage. The desktop app or the cloud version.

Ahrefs Site Audit for the on-going monitor: scheduled crawls flag regressions automatically. Use this for retainer engagements; Screaming Frog for one-off audits.

The audit flow

Day 1: Search Console review. Pages > Indexed report. Coverage issues. Manual actions. CWV report. Pull the data, identify the top three issues by traffic-affected URLs.

Day 1 to 2: Screaming Frog crawl on the full site. Schema validation, hreflang validation, redirect chains, internal link audit, image audit, JSON-LD parse errors. Tag every issue with severity and traffic impact.

Day 3: prioritised remediation list. Top ten issues by traffic-recovery potential, in plain English, with concrete fixes. Not a 200-row spreadsheet of every issue Screaming Frog found; the highest-impact ten that the team will actually fix.

Day 4: present to the client with the remediation list, a target metric profile (what should improve and by how much), and a 90-day check-in to validate.

The most common findings

Across the last 30 audits we have run at Seahawk, the most common findings in rough order of frequency:

Meta description length out of 120 to 155 characters on roughly 30% of pages. Fixed by render-time clamping in the SEO library, not by hand-editing every page.

Internal link graph too sparse: fewer than 3 internal links to most leaf pages. Fixed by template-level link generation rather than hand-curated linking.

Hreflang missing self-references or with reciprocal-pair breaks. Fixed by content_group_id discipline in the database layer.

Images without explicit width and height attributes, causing CLS regressions. Fixed by image-component discipline.

JSON-LD with invalid types, sameAs URLs that point to dead social profiles, breadcrumbs not interpolated for locale paths. Fixed at the schema-emitter layer.

Output format that earns budget

The audit deliverable that consistently earns follow-on retainer budget: a 10-page PDF with one issue per page, each with the severity score, traffic-affected count, screenshot of the problem, plain English explanation of the fix, and an estimated 90-day metric improvement. Plus an appendix with the full Screaming Frog export for the team to work through.

Avoid the 200-row spreadsheet output. Clients drown in detail and the audit goes unread. The 10-issue prioritised list gets fixed; the spreadsheet does not.

WHEN YOU ARE READY TO TALK

If you are mid-build on something this guide touches and want a second pair of eyes, the fastest path is a 30-minute call.

BOOK YOUR 30-MIN CALL