Technical SEO Audit: A Founder’s Practical Checklist
Run a technical seo audit that checks crawling, indexing, JavaScript rendering, Core Web Vitals, and schema, with a clear order for fixing problems.
What should a technical SEO audit actually tell you?
A technical SEO audit should answer a practical question: Can search engines discover, access, understand, and index the pages that matter to your business? It should then tell you which obstacles to remove first.
For a founder, the deliverable is not a spreadsheet of warnings. It is a short queue of fixes tied to important pages: your pricing page, product pages, service pages, and useful content that brings qualified visitors.
Follow the sequence search engines depend on. Check discovery and crawling before indexing. Check rendered content before chasing performance scores. Validate structured data after the underlying page works.
| Layer | Question to answer | Example problem |
|---|---|---|
| Crawlability | Can a crawler reach the page? | A product category is blocked in robots.txt |
| Indexability | Is the page eligible to appear in search? | A production template contains noindex |
| Rendering | Does the crawler receive the important content? | Product details appear only after a click |
| Experience | Does the page load and respond reliably? | A large hero image delays the main content |
| Structured data | Does the markup accurately describe the page? | Product schema contains an outdated price |
Technical health creates eligibility, not guaranteed rankings. A fast, indexable page still needs to satisfy a real search intent.
What do you need before starting the audit?
Use Google Search Console, PageSpeed Insights, a browser with developer tools, and a crawler that reports status codes, internal links, canonicals, and indexing directives. Screaming Frog is one established option; check its current limits before relying on the free version.
Make an inventory of your public page types. For a small software business, that might include the homepage, feature pages, pricing, articles, and documentation. For a store, add categories, products, filtered listings, and discontinued products.
Choose a representative URL from each template, plus your most commercially important pages. This is your starting sample, not proof that the rest of the site works. Crawl the whole site when practical, and expand your sample whenever you find a template-level issue.
Record each finding with its affected URLs, evidence, likely cause, business impact, owner, and verification method. Keep observations separate from guesses: “pricing content missing from rendered HTML” is evidence; “the framework is bad for SEO” is not.
If you want an initial overview, run a free website audit with SiteScoper. Use it to identify questions to investigate, then confirm crawling and indexing issues in Search Console and your own tests.
Can search engines discover and crawl your important pages?
Start with discovery. Every important public page should be reachable through ordinary internal links, not only through a site search box, form submission, or interactive filter.
Compare your crawler’s URL list with your XML sitemap and your published-page inventory. A page present in the inventory but absent from the crawl may be orphaned. Verify whether it has crawlable links from relevant pages before assuming the crawler missed it.
Check robots.txt and server access
Open the robots.txt file at your domain’s root. Look for rules that block public sections or resources required to render them. A rule intended for a staging site can accidentally reach production.
A robots.txt block prevents crawling; it is not a reliable way to remove a URL from search. Google may know a blocked URL through external links. If you need a public page excluded using noindex, Google must be allowed to crawl it to see that instruction. Private information belongs behind authentication.
Also inspect server behavior. Important pages should return a successful response, normally HTTP 200. Investigate unexpected redirects, missing-page responses, server errors, and access-denied responses. A security service that challenges ordinary visitors may also interfere with legitimate crawlers; verify behavior rather than broadly disabling protection.
Check links, redirects, and the sitemap
Update internal links to point directly to the final preferred URL. Avoid sending visitors through an old address when you control the link.
Your sitemap should contain URLs you want indexed: preferred, accessible pages rather than redirected, missing, or deliberately excluded URLs. Submitting it in Search Console helps discovery, but does not guarantee indexing.
For small sites, focus on broken access and disconnected pages before worrying about crawl budget. If filters or calendar pages generate a huge URL space, address that separately by controlling which combinations are linked and intended for search.
Are the right pages eligible for indexing?
Crawling and indexing are different. A crawler can fetch a page that explicitly asks not to appear in search.
Inspect both the HTML robots meta tag and the HTTP X-Robots-Tag header. Either can carry a noindex directive. Check production templates after deployments, particularly if staging uses sitewide noindex settings.
Then inspect the canonical URL. It should identify the preferred version of duplicate or substantially similar content. A self-referencing canonical is commonly appropriate for an original page you want indexed.
| Finding | What it may mean | What to check next |
|---|---|---|
| Important page has noindex | Accidental exclusion | Template settings and response headers |
| Canonical points elsewhere | Another URL is being preferred | Whether the pages are genuinely equivalent |
| Crawled but not indexed | Google fetched the page but did not index it | Duplication, usefulness, internal links, and rendered content |
| Discovered but not indexed | Google knows the URL but has not crawled it yet | Discovery signals, server reliability, and site scale |
| Missing page returns HTTP 200 | Possible soft 404 | The actual content and correct response status |
In Search Console’s URL Inspection tool, compare your declared canonical with Google’s selected canonical when available. Google treats canonical declarations as signals, not commands. Conflicting redirects, sitemap entries, and internal links can undermine your preference.
Inspect the indexed record and run a live test when investigating a recent change. The live test helps confirm current access and directives; it does not guarantee that Google will index the page or select your canonical.
Do not treat every excluded URL as a defect. Account pages, duplicate filters, and internal search results often should stay out of search. The problem is exclusion of pages that deserve to be discoverable.
Can Google render the content your visitors see?
A JavaScript-heavy page can return HTTP 200 while its initial HTML contains little more than an application shell. That is not automatically an SEO failure, but it makes rendering a critical dependency.
Compare three views: the initial page source, the browser’s rendered page, and the rendered output available through Search Console’s live inspection. Look for the primary heading, product or service description, pricing where relevant, internal links, and canonical information.
The important question is not whether every view is identical. It is whether search engines can reliably obtain the content and links needed to understand the page.
Watch for content that loads only after consent, scrolling, login, or interaction. Do not assume Google will click a tab or submit a form. Navigation should use real links with destination URLs rather than click handlers alone.
If content is missing, check failed network requests, blocked scripts, API permissions, and browser console errors. Test a fresh session rather than one with cached assets and existing consent.
Server-side rendering or static generation can reduce dependence on client-side execution for important public content. Neither requires rewriting the whole site: start with the affected commercial templates. Keep the content served to crawlers consistent with what users can access.
Which Core Web Vitals problems should you fix first?
Use PageSpeed Insights to separate real-user field data from a simulated lab test. Field data describes observed experiences; lab testing helps reproduce and diagnose problems.
Google’s web.dev documentation defines these “good” Core Web Vitals thresholds, assessed at the 75th percentile of page visits:
| Metric | What it measures | Google’s good threshold |
|---|---|---|
| Largest Contentful Paint, LCP | When the largest visible content element renders | 2.5 seconds or less |
| Interaction to Next Paint, INP | Responsiveness to user interaction | 200 milliseconds or less |
| Cumulative Layout Shift, CLS | Unexpected layout movement | 0.1 or less |
PageSpeed Insights uses Google’s Chrome User Experience Report, or CrUX, for available field data, covering a rolling 28-day period. Check whether the report shows data for the individual URL or the broader origin. A smaller site may lack enough eligible traffic for field reporting; missing data is not a pass or fail.
For slow LCP, identify the actual largest element first. If it is the hero image, inspect its dimensions, format, download priority, and whether it is incorrectly lazy-loaded. If content waits on the server, investigate response time and caching.
For poor INP, reproduce real interactions such as opening navigation, selecting product options, or submitting a form. Look for long JavaScript tasks and heavy third-party scripts. A standard Lighthouse navigation run cannot fully represent field INP.
For poor CLS, reserve space for images, embeds, banners, and dynamic interface elements. Watch the page load on a slower connection so late movement becomes visible.
Prioritize fixes affecting key journeys and shared templates. Do not spend a week chasing a perfect lab score while checkout or primary navigation remains frustrating. Use the founder’s guide to Core Web Vitals for a deeper measurement workflow.
Is your structured data accurate and useful?
Structured data describes entities and page content in a machine-readable format. It can support eligible search features, but valid markup does not guarantee a rich result or higher rankings.
Choose types that match the visible page. A product page may warrant Product markup; an article may warrant Article markup; a breadcrumb trail may warrant BreadcrumbList markup. Consult Google Search Central’s requirements for the specific search feature you want.
Test representative URLs with Google’s Rich Results Test. Distinguish required-property errors from recommended-property warnings. Then check the facts manually: price, availability, organization identity, and URLs should match the current page.
Avoid adding ratings that visitors cannot substantiate or marking up content that the page does not provide. More schema is not automatically better.
Inspect template output for duplicated or conflicting markup from plugins, themes, and custom components. After deployment, monitor relevant Search Console enhancement reports when available. The schema markup guide explains how to choose suitable types without decorating every page with unnecessary properties.
How do you turn findings into a fix queue?
Rank issues by business impact, breadth, confidence, and effort. “Schema warning on an old article” should not outrank “all product pages accidentally excluded from indexing.”
Use a queue like this; these are illustrative priorities, not universal rules:
| Priority | Example issue | Verification after the fix |
|---|---|---|
| Immediate | Production-wide noindex | Check headers, HTML, and live inspection |
| High | Primary navigation links are uncrawlable | Crawl again and inspect rendered links |
| High | Product template hides core content from rendering | Test representative products in Search Console |
| Next | Shared hero image delays LCP | Repeat lab tests and monitor field data |
| Later | Optional schema property missing | Validate against feature requirements |
Give each task a clear acceptance criterion. “Improve SEO” is not testable. “Pricing returns HTTP 200, allows indexing, declares the intended canonical, and exposes its main content in rendered HTML” is.
Recheck the full affected template after deployment, not just the example URL. Technical fixes can be verified immediately through response and rendering tests, while recrawling, indexing, and field performance reports take longer to reflect changes.
Repeat relevant checks after changes to routing, templates, hosting, consent tools, or major plugins. For a redesign or domain move, use a dedicated website migration checklist before launch. A reliable audit process ends with verified fixes and monitoring, not a higher count of exported warnings.
Frequently asked questions
- How long does a technical SEO audit take?
- A small site with a few shared templates may be reviewed in an afternoon, while a large catalog or JavaScript application can require several days of investigation. Treat those as planning estimates, not benchmarks. The biggest variables are URL volume, access to tools, and how many findings need reproduction.
- Can I do a technical SEO audit without paid tools?
- Yes. Search Console, PageSpeed Insights, browser developer tools, and Google’s Rich Results Test cover many essential checks. Free crawler limits can make a comprehensive inventory harder on larger sites, so record what you tested and where your coverage is incomplete.
- What is the difference between a technical SEO audit and a content audit?
- A technical audit examines whether pages can be accessed, processed, and indexed reliably. A content audit evaluates whether those pages are useful, accurate, distinct, and aligned with search intent. They overlap when a page is technically accessible but offers too little unique value to justify indexing.
- Does passing Core Web Vitals guarantee better rankings?
- No. Core Web Vitals contribute to page experience, but they do not replace relevance or useful content. Improve them to remove measurable user friction rather than expecting a particular ranking increase.
- Should I request indexing after fixing a technical SEO problem?
- For an important individual page, you can request indexing through Search Console after confirming that the fix is live. For widespread changes, keep your sitemap accurate and ensure internal links lead to the corrected URLs. Repeated requests do not guarantee faster inclusion in search.
Audit your site in 60 seconds
SiteScoper turns this into a single, prioritised report. Free to try.
