A technical SEO checklist you can actually run this week
By The Visibility Bureau
Technical SEO comes down to three questions. Can search engines reach your pages, can they render them, and can they index the right version? Work through those in order and you will fix most of what is holding a site back. Everything else is refinement.
Here is the checklist we run, roughly in the order we run it. You do not need expensive tools for the first two thirds of it.
Where should you start?
Start with indexing, not speed. A slow page that is indexed still earns traffic. A fast page that is blocked earns nothing. Score sites are satisfying to chase and they distract people from real problems.
Open Google Search Console and look at the Pages report. It tells you how many URLs Google knows about, how many are indexed, and the reason it gave for excluding the rest. That report is the single most useful diagnostic on the free web. Read it before you touch anything.
Step 1: check what is indexed
- In Search Console, open Pages and note the indexed count.
- Compare it to the number of real pages you expect to have.
- Read the exclusion reasons. “Crawled, currently not indexed” means Google saw the page and chose not to keep it. “Discovered, currently not indexed” means it found the URL and has not bothered to crawl it yet. Both usually point at thin or duplicated content, not at a technical fault.
- Search
site:yourdomain.comin Google for a rough second opinion.
If your indexed count is far below your page count, stop and find out why before doing anything else on this list.
Step 2: check crawl access
Four things block crawlers, and all four are quick to check.
- robots.txt. Visit
yourdomain.com/robots.txt. Look forDisallow: /on its own, which blocks everything. Also check that your CSS and JavaScript directories are not blocked, because Google needs them to render the page. - Meta robots and X-Robots-Tag. View source on a few important pages and look
for
noindex. This is the most common accidental sitewide killer. It gets set on a staging site and ships to production with the launch. - HTTP status codes. Your key pages should return 200. Redirects should be 301 when permanent. A page returning 200 with “not found” content is a soft 404 and will confuse indexing.
- Server response. If pages time out for a crawler, they will not be indexed reliably, no matter how good the content is.
Step 3: check rendering
Search engines run JavaScript, but not instantly and not always fully. If your main heading, body copy and internal links only appear after a client side fetch, you are gambling.
Test it properly. Disable JavaScript in your browser and reload an important page. Whatever remains is roughly what a crawler sees on the first pass. Then use the URL Inspection tool in Search Console and view the rendered HTML.
The rule we hold to on every build: critical text exists in the raw HTML. Not because JavaScript is bad, but because static text has zero failure modes. If your site is heavily client rendered and you cannot change that quickly, prioritise server rendering the pages that need to earn traffic.
Step 4: sort out duplicates and canonicals
Most sites serve the same content at several URLs without realising it. Trailing
slash and no trailing slash. HTTP and HTTPS. With and without www. Query strings
from ad campaigns and filters. Uppercase and lowercase paths.
Pick one canonical form and make every other version 301 redirect to it. Then set a self referencing canonical tag on each page. A canonical is a hint, not a command, so redirects do the heavy lifting and the tag backs them up.
Watch for the two canonical mistakes we see most often. Every page pointing its canonical at the homepage, which tells Google the rest of the site is a duplicate of one URL. And paginated pages canonicalising to page one, which hides everything past the first twenty results.
Step 5: fix the sitemap and internal links
Your XML sitemap should list only URLs that return 200, are indexable, and are canonical. Nothing else. A sitemap full of redirects and 404s wastes crawl budget and teaches Google to trust it less.
Then look at internal links, which matter more than most people think. Pages with no internal links pointing at them are orphans. Crawlers find them slowly, if at all, and they inherit no authority. Every page that matters should be reachable in a few clicks from the homepage, with link text that describes the destination.
Vague anchors like “read more” waste a signal you get for free. “Technical SEO service” tells search engines what the target page is about.
Step 6: then look at speed and Core Web Vitals
Now speed matters. Google measures Largest Contentful Paint, Interaction to Next Paint and Cumulative Layout Shift using field data from real Chrome users, not lab scores. Check the Core Web Vitals report in Search Console for what real visitors experience.
The usual culprits, in the order they usually bite:
- Images that are far larger than the space they occupy, in the wrong format, and loaded eagerly when they sit below the fold.
- Third party scripts. Chat widgets, tag managers, heat maps, ad pixels. Each one adds work on the main thread.
- Web fonts that block text from rendering.
- Images and embeds without width and height, which shift the layout as they load.
Fix images first. It is usually the biggest gain for the least effort.
Step 7: mobile and structured data
Google indexes the mobile version of your site. If your mobile pages hide content that desktop shows, the hidden content effectively does not exist. Check that headings, body copy and structured data match across both.
For structured data, start small and accurate. Organization on the homepage, Article on posts, LocalBusiness if you have a physical location, FAQPage where you genuinely answer questions. Validate it with Google’s Rich Results Test. Marking up things that are not on the page is worse than no markup at all.
A short version to run monthly
- Indexed page count in Search Console, compared to last month
- Any new exclusion reasons appearing
- No accidental
noindexon live pages - Sitemap returns only 200, canonical, indexable URLs
- Core Web Vitals status unchanged or improving
- No new redirect chains after any content or platform change
Ten minutes a month catches most regressions before they cost you traffic.
When to get help
If you have run this list and your pages still are not indexed, or the site is large enough that the issues interact, a structured pass usually pays for itself. That is the work behind our technical SEO service, and it is the first phase of any SEO audit we run. Once the foundations hold, the next lever is usually on-page SEO, because well built pages with weak targeting still underperform.