The Ultimate Technical SEO Audit Checklist & Process Guide
So you’ve read about all the technical SEO gremlins that could be lurking in your website. But how do you actually find them? And more importantly, how do you get them fixed?
This companion guide gives you the exact process I use to find, document, prioritize, and fix technical SEO issues.
This is the how to do, what tools you needs, when to do, who should do it part of the full technical SEO audit guide.
Which, if by some miracle, you've managed to find this page before that one you WILL need to read to understand just what is going on over here.
The Full Technical SEO Audit Process (Step-by-Step)
Here’s exactly how to find every technical SEO issue, with specific tools and methods for each:
STEP 1: Set Up Your Audit Environment
Just a fancy way of saying, open up these programs…
Before you start digging, get your tools ready:
- Ensure you have access to:
- Google Search Console (verify ownership if needed)
- Google Analytics (ensure you have Analyze permission)
- Your CMS backend (WordPress, Shopify, etc.)
- Server logs (ideal but not always possible)
- Prepare your crawling tools:
- Install and license Screaming Frog SEO Spider
- Configure any additional tools you’ll use (DeepCrawl, Sitebulb, etc.)
- Create your audit spreadsheet (template included at the end)
- Set up browser extensions:
- SEO META in 1 CLICK
- Redirect Path
- View Rendered Source
- WAVE Accessibility Tool
STEP 2: Initial Data Collection
Gather all the baseline data you’ll need:
- Export 12-month organic traffic data from Google Analytics
- Export all issues from Google Search Console:
- Coverage issues
- Mobile usability issues
- Core Web Vitals issues
- Security issues
- Manual actions (if any)
- Extract search performance data for top landing pages
- Capture current ranking positions for key terms
- Document current indexation stats (site:domain.com in Google)
- Take screenshots of key page speed metrics as a baseline
STEP 3: Basic Technical Configuration Check
Check the foundational elements:
- Verify robots.txt configuration:
- Use GSC’s robots.txt tester
- Test important URLs against current rules
- Check for overly restrictive patterns
- Review XML sitemaps:
- Are they properly formatted?
- Do all listed URLs return 200 status codes?
- Are they registered in GSC?
- Is the sitemap referenced in robots.txt?
- Check protocol configuration:
- Verify HTTP to HTTPS redirects
- Check www vs. non-www canonicalization
- Verify trailing slash consistency
- Validate htaccess file (Apache) or equivalent nginx configuration
STEP 4: Full Site Crawl
Crawl the entire site to identify structural issues:
- Configure Screaming Frog for a complete crawl:
- Increase the crawl limit if needed (license required for 500+ URLs)
- Enable JavaScript rendering (if site is JS-heavy)
- Configure user agent as Googlebot
- Set up custom extraction for schema, hreflang, etc.
- Run an initial crawl respecting robots.txt
- Run a second crawl ignoring robots.txt to find hidden issues
- Export all data for analysis:
- All URLs by status code
- Redirect chains
- Canonical tags
- Meta robots directives
- H1 tags and title elements
- Pages with JavaScript issues
- Structured data
- Hreflang implementation
- CSS/JS files being blocked
STEP 5: In-Depth Page Analysis
Analyze individual page types in detail:
- Select representative pages of each type:
- Homepage
- Category/section pages
- Product/service pages
- Blog/content pages
- Utility pages (contact, about, etc.)
- For each page type, check:
- Mobile-friendliness using Google’s Mobile-Friendly Test
- Page speed using PageSpeed Insights & WebPageTest
- Structured data validation using validators
- JavaScript rendering using “View Rendered Source”
- Internal linking structure
- Image optimization
- HTML validation
- Document template-level issues vs. individual page issues
STEP 6: Server Log Analysis (If Available)
If you have access to server logs, analyze Googlebot behavior:
- Import logs into a log analyzer tool (Screaming Frog Log Analyzer, Botify, etc.)
- Identify:
- Crawl frequency patterns
- Most frequently crawled URLs
- Crawl errors
- Googlebot time spent on different sections
- Patterns in crawl behavior
- Evidence of crawl budget waste
- Compare crawled URLs with your important pages – are they being crawled frequently enough?
STEP 7: International/Multilingual Analysis (If Applicable)
For sites targeting multiple countries or languages:
- Crawl each country/language version separately
- Extract all hreflang annotations
- Create a matrix to verify proper cross-referencing
- Check for:
- Incorrect language codes
- Missing return links
- Self-reference errors
- Contradictory canonical tags
- Implementation method consistency
STEP 8: Indexation Analysis
Investigate Google’s indexation of your site:
- Compare indexation counts:
- site:domain.com in Google
- Index Coverage report in GSC
- XML sitemap count
- Actual crawlable pages from your crawl
- Identify patterns in non-indexed content using GSC’s “Excluded” reports
- Check for noindex directives that shouldn’t be there
- Investigate crawled but not indexed pages
- Analyze index bloat (too many pages indexed vs. valid content pages)
STEP 9: JavaScript Rendering Check
For JavaScript-heavy sites:
- Use “View Rendered Source” to compare initial HTML with rendered DOM
- Test key pages with JavaScript disabled
- Use GSC’s URL Inspection tool to see how Google renders the page
- Check for content only visible after JS execution
- Verify critical links are present in the non-JS version
- Test navigation usability without JS
STEP 10: Data Analysis and Pattern Recognition
Analyze all the collected data to identify patterns:
- Cross-reference crawl data with GSC issues
- Look for correlations between technical issues and performance
- Group issues by:
- Type (redirect, canonical, speed, etc.)
- Template (affecting similar page types)
- Section (specific parts of the site)
- Severity (critical, high, medium, low)
- Identify the highest-impact issues based on affected page value
How to Document Your Findings Effectively
Documentation is crucial for getting buy-in and implementation. Here’s how to document technical SEO issues effectively:
Technical SEO Documentation Checklist
- Create a master spreadsheet with the following tabs:
- Executive Summary (high-level overview and key findings)
- Issue Tracker (detailed list of all issues)
- Implementation Plan (prioritized fixes with assignments)
- Data Exports (raw data from crawls and tools)
- Performance Baseline (current metrics to measure against)
- For each issue, document:
- Issue name/type
- Description of the problem
- URLs affected (full list or pattern)
- Severity/impact (High/Medium/Low)
- Screenshots or evidence
- Recommended solution
- Implementation difficulty (Easy/Medium/Hard)
- Who should fix it (Developer, SEO, Content team, etc.)
- Estimated time to implement
- Expected outcome
- Include visual evidence wherever possible:
- Screenshots of issues
- Annotated images showing the problem
- Before/after comparisons
- Tool outputs that identify the issue
- Charts showing impact (if available)
- Create a presentation deck for stakeholders:
- Executive summary slide
- Methodology overview
- Top findings (focus on highest impact)
- Prioritized roadmap
- Expected outcomes
- Resource requirements
Documentation Tool Recommendations:
- Google Sheets – For collaborative issue tracking and prioritization
- Trello or Asana – For implementation tracking
- Loom – For recording video walkthroughs of issues
- Miro or Whimsical – For creating site architecture maps and visualizing problems
- Google Data Studio – For creating dynamic dashboards to track progress
How to Prioritize Technical SEO Issues
Not all issues are created equal. Here’s how to prioritize what to fix first:
Prioritization Framework
For each issue, score it on these factors (1-5 scale):
- Impact: How much this issue affects search visibility
- 5 = Completely blocks indexing or ranking
- 3 = Moderately impacts rankings
- 1 = Minor impact
- Scale: How many pages are affected
- 5 = Entire site or most important templates
- 3 = Multiple important pages
- 1 = Single or few low-importance pages
- Effort: How difficult it is to implement (reverse scale)
- 5 = Quick fix (minutes)
- 3 = Moderate effort (days)
- 1 = Major development work (weeks)
- Value: How important the affected pages are
- 5 = Top landing pages or conversion pages
- 3 = Secondary content pages
- 1 = Utility pages or low-traffic content
Priority Score = (Impact × Scale × Value) / Effort
The higher the score, the higher the priority.
Quick Wins vs. Foundational Fixes:
Always balance your implementation plan with both:
- Quick Wins: High-impact, low-effort fixes that show immediate results
- Foundational Fixes: Core issues that may take longer but provide lasting benefits
Start with quick wins to build momentum and trust, while planning for the bigger foundational changes.
Who Should Fix What: Roles & Responsibilities
Technical SEO requires collaboration across teams. Here’s who typically handles different types of issues:
Issue Type | Responsible Party | Skills Required | Notes |
---|---|---|---|
Robots.txt Configuration | SEO Specialist / Developer | Basic file editing | SEO should specify what needs changing; developer usually implements |
Server Configuration (redirects, HTTPS) | Developer / DevOps | Server administration | Requires access to web server config files or hosting control panel |
Canonical Tags | SEO Specialist / Developer | HTML/template editing | Often can be managed through CMS for non-developers |
Page Speed Optimization | Developer / Front-End Engineer | Front-end development | SEO identifies issues; developers implement technical fixes |
JavaScript SEO Issues | Developer | JavaScript development | Requires understanding of how search engines process JS |
Schema Markup | SEO Specialist / Developer | JSON-LD knowledge | SEO creates schema; developer implements |
Mobile Usability | Developer / Designer | Responsive design, CSS | Requires collaboration between design and development |
Duplicate Content | SEO Specialist / Content Team | Content strategy | May require both technical fixes and content revisions |
URL Structure | SEO Specialist / Developer | CMS configuration | Changes require careful redirect planning |
XML Sitemaps | SEO Specialist / Developer | XML, site structure | Can often be automated through plugins/tools |
Hreflang Implementation | Developer / SEO Specialist | International SEO | Complex implementation requires careful coordination |
Internal Linking | SEO Specialist / Content Team | Content strategy | May be manual or require template changes |
Communication is Key: Technical issues often fall between team responsibilities. Create a RACI matrix (Responsible, Accountable, Consulted, Informed) for your organization to clarify who handles what.
The Master Technical SEO Checklist
Here’s a comprehensive checklist organized by category, with impact, difficulty, and responsible party noted:
Crawling & Indexation
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Robots.txt blocking important content | GSC robots.txt tester against key URLs | HIGH | EASY | SEO/Dev | 30 minutes |
CSS/JS files blocked | Robots.txt analysis, page rendering test | MEDIUM | EASY | Developer | 30 minutes |
Incorrect meta robots directives | Screaming Frog crawl, pattern analysis | HIGH | MEDIUM | SEO/Dev | 1-2 hours |
XML sitemap errors | GSC Sitemaps report, validation tools | MEDIUM | EASY | SEO | 1 hour |
Missing sitemap entries | Compare sitemap URLs with crawl data | MEDIUM | EASY | SEO | 1-2 hours |
Crawl traps (infinite URLs) | Screaming Frog patterns, server log analysis | HIGH | HARD | Developer | 2-5 days |
URL Structure & Redirects
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Non-secure (HTTP) pages | Screaming Frog crawl, protocol check | HIGH | MEDIUM | Developer | 1-2 days |
Missing/incorrect 301 redirects | Redirect checker tool, broken link check | HIGH | MEDIUM | Developer | 1-3 days |
Redirect chains | Screaming Frog redirect chains report | MEDIUM | MEDIUM | Developer | 1-2 days |
Temporary (302) redirects for permanent changes | Screaming Frog redirect report | MEDIUM | EASY | Developer | 2-4 hours |
Inconsistent URL formats (www vs non-www) | Test both versions, check for redirects | MEDIUM | EASY | Developer | 1-2 hours |
Canonical Issues
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Missing canonical tags | Screaming Frog crawl, canonical report | MEDIUM | EASY | SEO/Dev | 1-3 hours |
Incorrect canonical URLs | Compare current URL with canonical URL | HIGH | MEDIUM | SEO/Dev | 1-3 hours |
Relative canonical URLs | Canonical tag format inspection | MEDIUM | EASY | Developer | 1 hour |
Canonical to non-indexed/blocked pages | Cross-reference canonicals with robots directives | HIGH | MEDIUM | SEO/Dev | 2-4 hours |
Multiple canonical tags | HTML inspection, Screaming Frog custom extraction | HIGH | EASY | Developer | 1-2 hours |
Mobile Optimization
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Mobile viewport not configured | Mobile-Friendly Test, HTML inspection | HIGH | EASY | Developer | 30 minutes |
Content mismatch (mobile vs desktop) | Manual comparison, “fetch as Google” mobile vs desktop | HIGH | MEDIUM | Developer | 1-3 days |
Touch elements too small/close | Mobile-Friendly Test, manual testing | MEDIUM | MEDIUM | Developer | 1-2 days |
Text too small to read | Mobile-Friendly Test, font size check | MEDIUM | EASY | Developer | 2-4 hours |
Horizontal scrolling required | Mobile-Friendly Test, responsive testing | HIGH | MEDIUM | Developer | 1-2 days |
Page Speed & Core Web Vitals
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Slow server response time (TTFB) | WebPageTest, PageSpeed Insights | HIGH | HARD | DevOps | 1-5 days |
Render-blocking resources | PageSpeed Insights, Coverage tab in DevTools | HIGH | MEDIUM | Developer | 1-3 days |
Unoptimized images | PageSpeed Insights, WebPageTest | MEDIUM | EASY | Developer | 1-2 days |
Excessive JavaScript | Coverage tab in DevTools, bundle analysis | HIGH | HARD | Developer | 3-7 days |
Layout shifts (CLS issues) | Core Web Vitals report, PageSpeed Insights | HIGH | MEDIUM | Developer | 1-3 days |
Missing image dimensions | HTML inspection, CLS details in PageSpeed Insights | MEDIUM | EASY | Developer | 1-2 days |
Excessive third-party scripts | Network tab in DevTools, tag managers | MEDIUM | MEDIUM | Marketing/Dev | 1-3 days |
Structured Data & Schema Issues
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Missing schema for page type | Schema validator tools, Rich Results Test | MEDIUM | MEDIUM | SEO/Dev | 1-2 days |
Invalid/incomplete schema properties | Schema Markup Validator, Rich Results Test | MEDIUM | EASY | SEO/Dev | 2-4 hours |
Mismatched schema content | Compare schema values with visible page content | HIGH | MEDIUM | SEO/Dev | 1-2 days |
Multiple conflicting schema types | Schema validator tools, HTML inspection | HIGH | MEDIUM | Developer | 1-2 days |
International SEO & Hreflang
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Missing hreflang tags | Screaming Frog crawl of international versions | HIGH | MEDIUM | SEO/Dev | 1-3 days |
Incorrect language/region codes | Hreflang validator, manual inspection | HIGH | EASY | SEO/Dev | 1 day |
Missing return links | Cross-site crawl, hreflang validation | HIGH | MEDIUM | Developer | 1-3 days |
Canonical/hreflang conflicts | Cross-reference canonical and hreflang destinations | HIGH | MEDIUM | SEO/Dev | 1-2 days |
JavaScript SEO Issues
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Content only visible after JS execution | View source vs. inspect element comparison | HIGH | HARD | Developer | 3-7 days |
JavaScript-dependent navigation | Test site with JS disabled, crawler access | HIGH | HARD | Developer | 3-5 days |
Lazy-loaded primary content | Scroll testing, View Source inspection | HIGH | MEDIUM | Developer | 1-3 days |
Client-side rendering without SSR | Initial HTML inspection, rendering tests | HIGH | HARD | Developer | 1-3 weeks |
Content & HTML Issues
Issue | How to Check | Impact | Difficulty | Owner | Est. Time |
---|---|---|---|---|---|
Duplicate content across URLs | Content comparison tools, pattern analysis | HIGH | MEDIUM | SEO/Content | 2-5 days |
Thin content pages | Content analysis, word count, GSC coverage | MEDIUM | MEDIUM | Content | Ongoing |
Broken internal links | Screaming Frog crawl, link report | MEDIUM | EASY | SEO/Content | 1-2 days |
Poor internal linking structure | Site structure visualization, click depth analysis | MEDIUM | MEDIUM | SEO/Content | 1-2 weeks |
Implementation Tracking Template
Use this template to track implementation progress:
Implementation Tracking Process
- Create a shared tracking document with these columns:
- Issue ID
- Issue Description
- Priority Score
- URLs Affected
- Assigned To
- Due Date
- Status (Not Started, In Progress, In Review, Complete)
- Date Fixed
- Verification Status
- Impact Notes
- Schedule regular check-ins:
- Weekly status updates
- Blockers discussion
- Prioritization adjustments as needed
- Verification process:
- Test each fix immediately after implementation
- Check with multiple tools/browsers
- Document before/after metrics
- Set reminders to check GSC/Analytics impact 2-4 weeks later
Measuring Success
Technical SEO success isn’t just about fixing issues – it’s about improving metrics. Here’s what to track:
Key Performance Indicators to Track
- Indexation Metrics:
- Number of pages indexed
- Coverage issue counts by type
- Ratio of indexable pages to indexed pages
- Crawling Metrics:
- Crawl stats (pages/day)
- Crawl errors
- Time spent downloading
- Page Experience Metrics:
- Core Web Vitals compliance percentage
- Mobile usability issues
- Page speed scores
- Business Metrics:
- Organic traffic
- Organic conversions
- Ranking positions for key terms
- Click-through rates from search
Before/After Documentation: Always take "before" screenshots and export baseline data before implementing fixes. This makes it much easier to demonstrate impact and value.
Advanced Technical SEO Audit Tools & Techniques
For those wanting to go deeper, here are advanced technical SEO techniques:
Log File Analysis Workflow
Server logs provide insights you can’t get anywhere else:
- Obtain raw server logs (Apache, NGINX, etc.)
- Use a log analyzer tool (Screaming Frog Log Analyzer, Botify, etc.)
- Filter for Googlebot and other search engine crawlers
- Analyze:
- Crawl frequency of different URL sections
- Time spent crawling
- Crawl patterns over time
- Error rates and types
- URLs crawled but not in sitemap
- Sitemap URLs never crawled
Programmatic SEO Testing
For larger sites, scripted testing becomes essential:
- Python scripts for large-scale testing:
- Bulk URL status code checking
- XML sitemap validation
- Hreflang matrix validation
- Schema extraction and validation
- Headless browser testing:
- Puppeteer/Playwright for JS rendering tests
- Automated mobile layout testing
- Performance timing capture across templates
- API-based monitoring:
- Regular checks for critical issues
- Automated alerts for new problems
- Integration with CI/CD pipelines
Technical SEO Maintenance Schedule
Technical SEO isn’t a one-time project. Follow this maintenance schedule:
Frequency | Tasks | Time Required |
---|---|---|
Weekly | GSC coverage issue check Core Web Vitals monitoring Critical error alerts review Sitemap index status check | 1-2 hours |
Monthly | Crawl sample of key template types Mobile usability test of top pages Schema validation of new content Server response time monitoring Redirect chain check for key pages | 4-6 hours |
Quarterly | Full site crawl Log file analysis Internal linking audit International site structure check Performance optimization review | 1-2 days |
Annually | Comprehensive technical SEO audit URL structure review Content pruning/consolidation Major technology stack evaluation Historical analytics analysis | 3-5 days |
After Major Changes | Site migration verification New template implementation review CMS upgrade technical check New feature implementation impact | 1-3 days |
Creating a Business Case for Technical SEO Fixes
Need to convince stakeholders to invest in technical SEO? Here’s how to build a compelling business case:
Technical SEO Business Case Framework
- Quantify the current impact:
- Pages not being indexed × average page value
- Traffic lost due to slow speed (bounce rate increase)
- Crawl budget wasted on non-valuable pages
- Competitors outranking due to technical advantages
- Estimate the opportunity:
- Traffic increase potential based on similar fixes
- Conversion improvement from better user experience
- Cost savings from more efficient crawling
- Revenue potential from newly indexed/ranking pages
- Present case studies and examples:
- Before/after metrics from similar implementations
- Competitor success stories
- Industry benchmark data
- Create implementation tiers:
- Minimum viable fixes (must-haves)
- High-impact improvements
- Ideal state optimizations
ROI Calculation Example: If fixing canonicalization issues makes 1,000 additional product pages rank effectively, and each product page generates an average of $10/month in revenue, that's potentially $10,000/month in additional revenue. If the fix costs $5,000 to implement, the ROI becomes positive after just 2 weeks.
Final Thoughts: The Technical SEO Mindset
Technical SEO requires a specific approach:
The Technical SEO Mindset
- Think like a search engine – Understand crawling, rendering, and indexing from the bot’s perspective
- Be methodical – Create processes and follow them consistently
- Stay curious – Technical SEO is always evolving; keep learning
- Balance perfectionism with pragmatism – Focus on high-impact issues first
- Communicate clearly – Translate technical concepts for non-technical stakeholders
- Test everything – Never assume; always verify
- Document obsessively – Record findings, decisions, and results
Remember: Technical SEO is both an art and a science. The process outlined here will help you find and fix the gremlins lurking in your website, but always adapt these techniques to your specific situation.
Happy hunting!
Tim