Site Audit & Technical SEO
Overview
Site Audit & Technical SEO involves comprehensive analysis and optimization of a website's technical infrastructure to improve search engine crawling, indexing, and ranking performance.
What is a Technical SEO Site Audit?
A Technical SEO Site Audit is a systematic examination of a website's technical health, identifying issues that may prevent search engines from properly crawling, indexing, and ranking your content. It covers everything from site architecture to performance metrics.
Why Site Audits Matter
- Identify Hidden Issues: Discover problems blocking search visibility
- Improve Rankings: Technical issues often hold back ranking potential
- Enhance User Experience: Technical health correlates with UX quality
- Prevent Penalties: Catch issues before they become serious problems
- Optimize Crawl Budget: Ensure efficient use of search engine resources
- Monitor Site Health: Regular audits prevent issues from accumulating
- Competitive Advantage: Most sites have unresolved technical issues
Core Components of a Technical SEO Audit
1. Crawlability and Indexability
What to Check:
- Robots.txt configuration
- XML sitemap presence and accuracy
- Meta robots tags
- Canonical tags
- Redirect chains and loops
- Orphan pages
- Crawl depth
- Internal linking structure
Common Issues:
# Robots.txt blocking important resources
User-agent: *
Disallow: /css/ # Bad - blocks styling
Disallow: /js/ # Bad - blocks functionality
How to Check:
- Google Search Console Coverage Report
- Screaming Frog SEO Spider
- DeepCrawl/Lumar
- Sitebulb
2. Site Architecture
What to Check:
- URL structure
- Hierarchy and categorization
- Breadcrumb navigation
- Internal link distribution
- Site depth (clicks from homepage)
- Information architecture
Best Practice:
Good Structure:
example.com/
├── category/
│ ├── subcategory/
│ │ └── product
│ └── product
└── blog/
└── post
Bad Structure:
example.com/p?id=12345&cat=7&filter=price&sort=asc
How to Check:
- Visual sitemap tools
- Crawl data analysis
- Internal link reports
3. Site Speed and Performance
What to Check:
- Page load time
- Time to First Byte (TTFB)
- Core Web Vitals (LCP, INP, CLS)
- Mobile performance
- Server response time
- Resource optimization
Target Metrics:
- LCP: < 2.5 seconds
- INP: < 200ms
- CLS: < 0.1
- TTFB: < 600ms
- Total page size: < 2MB
How to Check:
- Google PageSpeed Insights
- Lighthouse
- WebPageTest
- GTmetrix
- Chrome DevTools
4. Mobile Optimization
What to Check:
- Mobile-friendly design
- Responsive vs. separate mobile URLs
- Touch element sizing
- Viewport configuration
- Mobile usability errors
- Mobile page speed
How to Check:
- Google Mobile-Friendly Test
- Search Console Mobile Usability Report
- Real device testing
- Browser DevTools mobile emulation
5. HTTPS and Security
What to Check:
- SSL certificate validity
- Mixed content issues
- HTTPS implementation
- Security headers
- Redirect HTTP to HTTPS
- HSTS header
Security Headers to Check:
# Essential security headers
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-XSS-Protection "1; mode=block" always;
How to Check:
- SSL Labs Test
- SecurityHeaders.com
- Browser console for mixed content
- Search Console Security Issues report
6. Structured Data
What to Check:
- Schema markup implementation
- Structured data errors
- Rich result eligibility
- JSON-LD vs. Microdata
- Completeness of markup
How to Check:
- Google Rich Results Test
- Schema Markup Validator
- Search Console Enhancements Reports
7. Content Optimization
What to Check:
- Duplicate content
- Thin content pages
- Meta title and description tags
- Header tag hierarchy
- Image alt attributes
- Content quality signals
How to Check:
- Screaming Frog
- Siteliner
- Copyscape
- Manual review
8. International SEO
What to Check (if applicable):
- Hreflang implementation
- Language targeting
- Regional targeting
- International URL structure
- Content localization
Hreflang Example:
<link rel="alternate" hreflang="en" href="https://example.com/en/" />
<link rel="alternate" hreflang="es" href="https://example.com/es/" />
<link rel="alternate" hreflang="x-default" href="https://example.com/" />
How to Check:
- Hreflang testing tools
- Search Console International Targeting
- Manual inspection
9. Technical Errors
Common HTTP Errors to Find:
- 404 errors (broken links)
- 500 errors (server problems)
- 301/302 redirect chains
- Soft 404s
- Timeout errors
How to Check:
- Server logs
- Crawl tools
- Search Console Coverage Report
- Broken link checkers
10. JavaScript and Rendering
What to Check:
- Client-side vs. server-side rendering
- JavaScript SEO best practices
- Rendering budget
- Lazy loading implementation
- Dynamic content indexability
How to Check:
- Google's Mobile-Friendly Test (renders JavaScript)
- Fetch as Google
- View page source vs. rendered HTML
- JavaScript SEO testing tools
Comprehensive Audit Checklist
Pre-Audit Setup
- Access to Google Search Console
- Access to Google Analytics
- Access to server logs
- Crawl tool ready (Screaming Frog, etc.)
- Baseline metrics documented
Crawling and Indexing
- Check robots.txt file
- Verify XML sitemap exists and is updated
- Review meta robots tags
- Check canonical tags implementation
- Identify orphan pages
- Analyze crawl depth
- Review internal linking structure
- Check for redirect chains
- Identify 404 errors
- Review pagination handling
Site Architecture
- Evaluate URL structure
- Check site hierarchy
- Review breadcrumb navigation
- Analyze internal link distribution
- Assess site depth
- Review faceted navigation (if applicable)
- Check parameter handling
Performance
- Test page speed (desktop and mobile)
- Check Core Web Vitals
- Analyze TTFB
- Review resource loading
- Check compression
- Evaluate caching
- Test CDN implementation
- Analyze JavaScript/CSS optimization
Mobile
- Run mobile-friendly test
- Check viewport configuration
- Review mobile usability
- Test touch elements
- Compare mobile vs. desktop content
- Check mobile page speed
Security
- Verify HTTPS implementation
- Check SSL certificate
- Scan for mixed content
- Review security headers
- Check HTTP to HTTPS redirects
On-Page SEO
- Audit meta titles
- Review meta descriptions
- Check header tag hierarchy (H1-H6)
- Verify image alt attributes
- Review content quality
- Check for duplicate content
- Analyze keyword targeting
Structured Data
- Check schema markup implementation
- Test for structured data errors
- Verify rich result eligibility
- Review markup completeness
International (if applicable)
- Check hreflang implementation
- Verify language targeting
- Review regional targeting
- Check international URL structure
Log File Analysis
- Analyze crawl frequency
- Identify crawled vs. non-crawled pages
- Check for crawl errors in logs
- Review status code distribution
- Identify crawl budget waste
Audit Tools and Software
Crawling Tools
Screaming Frog SEO Spider
- Type: Desktop crawler
- Best For: Sites up to 500 URLs (free) or unlimited (paid)
- Features: Comprehensive technical audit, custom extraction, API integration
Sitebulb
- Type: Desktop crawler
- Best For: Visual reports, accessibility audits
- Features: Detailed visualizations, prioritized issues, PDF reports
DeepCrawl (Lumar)
- Type: Cloud-based crawler
- Best For: Enterprise sites, scheduled audits
- Features: Automated monitoring, trend analysis, team collaboration
Google Tools
Google Search Console
- Free: Yes
- Features: Coverage reports, Core Web Vitals, mobile usability, structured data
PageSpeed Insights
- Free: Yes
- Features: Performance scoring, Core Web Vitals, optimization suggestions
Lighthouse
- Free: Yes (built into Chrome)
- Features: Performance, accessibility, SEO, best practices audits
Additional Tools
Ahrefs Site Audit
- Type: Cloud-based
- Features: Health score, issue prioritization, progress tracking
Semrush Site Audit
- Type: Cloud-based
- Features: Comprehensive issues list, competitor comparison
OnCrawl
- Type: Cloud-based
- Features: Log file analysis, data studio integration
Conducting an Audit
Step 1: Initial Crawl
# Example: Screaming Frog CLI
screaming-frog --crawl https://example.com --output-folder ./audit-results --export-tabs "Internal:All"
What to Configure:
- Crawl limits (if large site)
- User agent settings
- Respect robots.txt
- Follow redirects
- Render JavaScript (if needed)
Step 2: Data Collection
Gather data from multiple sources:
- Crawl tool data
- Google Search Console data
- Analytics data
- Server logs
- Third-party tools
Step 3: Issue Identification
Prioritize by Impact:
Critical Issues (Fix Immediately):
- Site not accessible
- Major indexing blocks
- Security vulnerabilities
- Significant performance problems
- Widespread 404 errors
High Priority (Fix Within 1-2 Weeks):
- Duplicate content issues
- Missing canonical tags
- Redirect chains
- Slow page speed
- Mobile usability issues
Medium Priority (Fix Within Month):
- Missing meta descriptions
- Suboptimal URL structure
- Minor structural issues
- Image optimization
Low Priority (Ongoing Optimization):
- Fine-tuning internal linking
- Content improvements
- Advanced schema markup
- Performance micro-optimizations
Step 4: Create Action Plan
## Action Plan Template
### Critical Issues
1. **Issue**: [Description]
- **Impact**: [Business/SEO impact]
- **Solution**: [How to fix]
- **Owner**: [Responsible person]
- **Timeline**: [Deadline]
- **Status**: [Not started/In progress/Complete]
### High Priority Issues
[Same structure...]
### Recommendations
[Additional optimization opportunities]
### Monitoring
[What to track post-implementation]
Step 5: Implementation
Development Workflow:
- Create tickets for each issue
- Prioritize in sprint planning
- Implement fixes
- Test in staging
- Deploy to production
- Verify fixes live
Step 6: Monitoring and Validation
// Example: Automated monitoring script
const lighthouse = require('lighthouse');
const chromeLauncher = require('chrome-launcher');
async function runAudit(url) {
const chrome = await chromeLauncher.launch({chromeFlags: ['--headless']});
const options = {
logLevel: 'info',
output: 'json',
onlyCategories: ['performance', 'seo'],
port: chrome.port
};
const runnerResult = await lighthouse(url, options);
// Check scores
const scores = {
performance: runnerResult.lhr.categories.performance.score * 100,
seo: runnerResult.lhr.categories.seo.score * 100
};
await chrome.kill();
// Alert if scores drop
if (scores.performance < 90 || scores.seo < 90) {
sendAlert(scores);
}
return scores;
}
Common Technical SEO Issues
Issue 1: Duplicate Content
Detection:
- Same content on multiple URLs
- WWW vs. non-WWW versions both accessible
- HTTP and HTTPS both serving content
- URL parameters creating duplicates
Solution:
<!-- Canonical tag -->
<link rel="canonical" href="https://example.com/preferred-url" />
<!-- 301 redirect in .htaccess -->
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]
Issue 2: Redirect Chains
Detection: URL A → URL B → URL C → Final URL
Solution: Direct redirects: URL A → Final URL
# Nginx - redirect directly to final destination
rewrite ^/old-url$ /final-url permanent;
Issue 3: Slow Page Speed
Common Causes:
- Unoptimized images
- Render-blocking resources
- Too many HTTP requests
- Slow server response
- Lack of caching
Solutions:
- Implement image optimization
- Use lazy loading
- Minify CSS/JS
- Enable compression
- Use CDN
- Optimize server configuration
Issue 4: Missing Structured Data
Detection:
- Rich Results Test shows no structured data
- Competitors have rich results, you don't
Solution:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Article Title",
"author": {"@type": "Person", "name": "Author"},
"datePublished": "2024-01-15"
}
</script>
Issue 5: Mobile Usability Problems
Common Issues:
- Small font sizes
- Touch elements too close
- Content wider than screen
- Horizontal scrolling
Solution:
<meta name="viewport" content="width=device-width, initial-scale=1.0">
/* Responsive design */
body {
font-size: 16px; /* Readable size */
}
.button {
min-height: 48px; /* Touch-friendly */
min-width: 48px;
}
Reporting and Documentation
Audit Report Structure
# Technical SEO Audit Report
## Executive Summary
- Overall health score
- Critical issues count
- High-level recommendations
- Estimated impact
## Current State Analysis
- Crawlability status
- Indexability status
- Performance metrics
- Mobile status
- Security status
## Detailed Findings
### Critical Issues
[Detailed analysis]
### High Priority Issues
[Detailed analysis]
### Medium Priority Issues
[Detailed analysis]
## Recommendations
- Prioritized action items
- Implementation roadmap
- Resource requirements
- Expected outcomes
## Monitoring Plan
- KPIs to track
- Reporting frequency
- Tools to use
Metrics to Track
Before and After Audit:
- Organic traffic
- Indexed pages
- Crawl errors
- Average position
- Core Web Vitals scores
- Page speed metrics
- Mobile usability errors
Ongoing Maintenance
Monthly Checks
- Review Search Console for new errors
- Check Core Web Vitals trends
- Monitor crawl stats
- Review coverage report
- Check for manual actions
Quarterly Audits
- Full site crawl
- Performance benchmark
- Competitor comparison
- Link audit
- Content audit
Annual Comprehensive Audit
- Full technical audit
- Architecture review
- Technology stack evaluation
- SEO strategy alignment